:root{--bg:#f5f3f8;--surface:#fff;--surface2:#faf8fc;--ink:#19151f;--muted:#766e80;--line:#e7e1ec;--purple:#6516b5;--purple2:#7c32d6;--deep:#241039;--deep2:#351454;--green:#18a673;--yellow:#d79a16;--red:#db4166;--shadow:0 10px 35px rgba(38,15,60,.06)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.layout{display:flex;min-height:100vh}a{text-decoration:none;color:inherit}.side{width:246px;min-width:246px;background:linear-gradient(180deg,#4a0b8d 0%,#2a0648 100%);color:#fff;padding:20px 14px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;box-shadow:8px 0 28px rgba(34,7,53,.08)}.brand-lockup{display:flex;align-items:center;gap:10px;padding:6px 10px 26px}.logo-mark{width:36px;height:36px;border-radius:10px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.2);display:grid;place-items:center;font-weight:900}.logo-word{font-weight:900;letter-spacing:3px;font-size:17px}.logo-sub{font-size:8px;letter-spacing:1px;opacity:.58;margin-top:2px}.nav-label{font-size:9px;letter-spacing:1.4px;opacity:.5;font-weight:800;padding:16px 11px 7px}.nav a{display:flex;align-items:center;gap:11px;padding:11px 12px;margin:3px 0;border-radius:10px;color:#eee7f5;font-size:13px;transition:.18s}.nav a:hover,.nav a.active{background:rgba(255,255,255,.13);color:#fff}.nav-icon{width:20px;text-align:center;font-size:16px;opacity:.9}.nav-arrow{margin-left:auto;opacity:.45}.side-footer{margin-top:auto;border-top:1px solid rgba(255,255,255,.1);padding:15px 10px 4px;font-size:11px;color:#d8c9e5}.version-label{display:inline-block;margin-top:5px;font-size:9px;letter-spacing:1px;color:#bca9ca;font-weight:800}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#3bd49c;margin-right:7px}.main{flex:1;min-width:0}.topbar{height:68px;background:rgba(255,255,255,.92);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 30px;position:sticky;top:0;z-index:5}.search{height:38px;width:300px;border:1px solid var(--line);border-radius:10px;background:#fbfafc;color:#9a91a2;padding:9px 13px;font-size:13px}.user{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700}.avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#9a5ce8,#531095);display:grid;place-items:center;color:#fff}.content{padding:28px 30px 45px;max-width:1500px;margin:auto}.top{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:20px}.title h1{font-size:28px;line-height:1.1;margin:0 0 6px}.title p,.muted{color:var(--muted);font-size:13px;margin:0}.actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:10px 15px;border:0;border-radius:9px;background:linear-gradient(135deg,var(--purple2),var(--purple));color:#fff;font-size:13px;font-weight:800;cursor:pointer;box-shadow:0 5px 14px rgba(101,22,181,.12)}.btn.secondary{background:#f0ebf5;color:#3f3549;box-shadow:none}.btn.green{background:var(--green)}.btn.danger{background:#f8e6eb;color:#a42649;box-shadow:none}.card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:20px;box-shadow:var(--shadow)}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.metric{position:relative;overflow:hidden}.metric:after{content:"";position:absolute;right:-25px;top:-25px;width:90px;height:90px;border-radius:50%;background:#eee2fa}.metric b{font-size:27px;position:relative;z-index:1}.metric span{display:block;color:var(--muted);font-size:12px;margin-top:4px}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:13px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}.table th{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#8b8192}.table tr:last-child td{border-bottom:0}.pill{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:999px;background:#eeeaf2;color:#5b5262;font-size:11px;font-weight:800}.pill:before{content:"";width:6px;height:6px;border-radius:50%;background:#8d8395}.pill.green{background:#e1f6ed;color:#137851}.pill.green:before{background:var(--green)}.pill.yellow{background:#fff1cf;color:#8d640d}.pill.yellow:before{background:var(--yellow)}.pill.red{background:#f9e3e9;color:#a12648}.pill.red:before{background:var(--red)}.pill.purple{background:#eee5fb;color:#6331a0}.pill.purple:before{background:var(--purple2)}.field{margin:13px 0}.field label{display:block;font-size:12px;font-weight:800;margin-bottom:7px}.field input,.field textarea,.field select{width:100%;padding:11px 12px;border-radius:9px;border:1px solid #ddd6e4;background:#fff;color:#211b27;outline:none;font:inherit;font-size:13px}.field textarea{resize:vertical}.field input:focus,.field textarea:focus,.field select:focus{border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a}.builder{display:grid;grid-template-columns:285px 1fr 390px;gap:16px}.builder-field{padding:14px;border:1px solid var(--line);background:#faf9fb;border-radius:10px;margin:9px 0}.small{font-size:11px;color:var(--muted)}.preview-wrap{background:#f0edf4;border-radius:14px;padding:18px}.preview{background:linear-gradient(145deg,#28103c,#5b158e);color:#fff;border-radius:16px;padding:28px;min-height:520px;box-shadow:0 15px 40px rgba(69,13,105,.18)}.preview .field label{color:#eee}.preview input,.preview textarea,.preview select{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.15);color:#fff}.preview input::placeholder,.preview textarea::placeholder{color:#d6cbe0}.preview select option{color:#111}.public-form{width:min(860px,100%);background:linear-gradient(145deg,#28103c,#5a148a);border:1px solid rgba(255,255,255,.14);border-radius:20px;padding:34px 38px;color:#fff;box-shadow:0 25px 70px rgba(0,0,0,.32)}.form-shell{min-height:100vh;background:radial-gradient(circle at 50% 0,#5b168f 0,#2a123e 38%,#130a1e 100%);display:flex;align-items:center;justify-content:center;padding:34px 18px}.public-form .brand{text-align:center;font-size:10px;letter-spacing:3px;opacity:.75}.public-form h1{text-align:center;font-size:28px;margin:8px 0 6px}.public-form .intro{text-align:center;color:#d9cde4;font-size:13px;line-height:1.6;margin:0 auto 22px;max-width:650px}.public-form .field{margin:11px 0}.public-form .field label{font-size:11px;color:#eee}.public-form .field input,.public-form .field textarea,.public-form .field select{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.14);color:#fff;padding:10px 11px;font-size:13px}.public-form .field input::placeholder,.public-form .field textarea::placeholder{color:#cbbdd7}.public-form .field select option{color:#111}.public-form .two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.public-form .submit{width:100%;margin-top:15px;background:transparent;border:1px solid rgba(255,255,255,.45);border-radius:9px;padding:11px;color:#fff;font-weight:800;cursor:pointer}.public-form .submit:hover{background:rgba(255,255,255,.08)}.public-head{display:grid;grid-template-columns:1fr 170px;align-items:center;gap:28px;max-width:720px;margin:0 auto 24px}.public-head .copy{text-align:left}.public-head .copy h1{text-align:left}.public-head .copy .intro{text-align:left;margin-left:0}.public-logo{max-width:160px;max-height:100px;object-fit:contain;margin:auto;display:block}.master-tabs{display:flex;gap:7px;flex-wrap:wrap;padding:5px;background:#eeeaf2;border-radius:12px;width:max-content;max-width:100%;margin-bottom:18px}.master-tabs a{padding:9px 13px;border-radius:8px;color:#5d5365;font-size:12px;font-weight:750}.master-tabs a.active{background:#fff;color:#5a16a8;box-shadow:0 2px 8px rgba(40,15,60,.07)}.master-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.section-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:13px;margin-bottom:13px}.accordion{border:1px solid var(--line);border-radius:13px;background:#fff;overflow:hidden;margin:10px 0;box-shadow:0 3px 14px rgba(35,15,55,.035)}.accordion summary{list-style:none;cursor:pointer;padding:15px 17px;display:flex;align-items:center;gap:12px;font-weight:800}.accordion summary::-webkit-details-marker{display:none}.accordion summary .chev{margin-left:auto;transition:.18s}.accordion[open] summary{background:#fbf9fd;border-bottom:1px solid var(--line)}.accordion[open] summary .chev{transform:rotate(90deg)}.accordion-body{padding:15px 17px}.option-row{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid #f0ebf3}.option-row:last-child{border-bottom:0}.option-row input[type=text]{width:100%;padding:9px 10px;border:1px solid var(--line);border-radius:8px}.switch{position:relative;width:38px;height:22px;display:inline-block}.switch input{display:none}.switch span{position:absolute;inset:0;background:#d9d3df;border-radius:999px;cursor:pointer}.switch span:after{content:"";position:absolute;width:16px;height:16px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.18s;box-shadow:0 1px 3px #0002}.switch input:checked+span{background:var(--green)}.switch input:checked+span:after{transform:translateX(16px)}.drop-card{border:1px solid var(--line);border-radius:13px;background:#fff;overflow:hidden}.drop-card summary{cursor:pointer;list-style:none;padding:16px;display:flex;align-items:center;gap:10px;font-weight:800}.drop-card summary::-webkit-details-marker{display:none}.drop-card summary:after{content:"⌄";margin-left:auto;color:#8d8295}.drop-card[open] summary{border-bottom:1px solid var(--line);background:#fbf9fd}.notice{padding:13px;border-radius:10px;background:#f6f3f8;border:1px solid var(--line)}.empty{text-align:center;padding:55px;color:var(--muted)}.campaign{display:flex;align-items:center;justify-content:space-between;gap:20px}.campaign h2{margin:0 0 6px}.copy{display:flex;gap:8px}.copy input{flex:1;padding:10px;border:1px solid var(--line);border-radius:9px;background:#faf9fb}.hero-card{background:linear-gradient(135deg,#351454,#6818b6);color:#fff;border-radius:16px;padding:24px;box-shadow:0 14px 35px rgba(78,20,132,.18)}.hero-card .muted{color:#dfd1eb}@media(max-width:1150px){.builder{grid-template-columns:1fr}.grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:850px){.side{display:none}.content{padding:18px}.topbar{padding:0 18px}.search{display:none}.grid,.grid2,.master-grid,.public-form .two,.public-head{grid-template-columns:1fr}.public-form{padding:25px 20px}.public-head .copy h1,.public-head .copy .intro{text-align:center}.campaign{align-items:flex-start;flex-direction:column}}
/* Formulario público refinado */
.campaign-form{display:grid;grid-template-columns:1fr 1fr;column-gap:14px;row-gap:2px}.campaign-form .form-section,.campaign-form .wide-field,.campaign-form .public-footer,.campaign-form .submit{grid-column:1/-1}.campaign-form .short-field{grid-column:span 1}.form-section{margin:10px 0 2px;padding-top:14px;border-top:1px solid rgba(255,255,255,.12)}.section-kicker{display:flex;align-items:center;gap:9px;font-size:10px;letter-spacing:1.4px;font-weight:900;color:#e7d9f1}.section-kicker span{width:24px;height:24px;border-radius:7px;display:grid;place-items:center;background:rgba(255,255,255,.1);font-size:9px;color:#d9baf2}.public-note{font-size:11px;color:#cdbddd;line-height:1.55;margin:8px auto 0;max-width:620px}.logo-box{min-height:105px;display:flex;align-items:center;justify-content:center;padding:12px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:rgba(255,255,255,.055)}.logo-placeholder{width:70px;height:70px;border-radius:14px;background:rgba(255,255,255,.1);display:grid;place-items:center;font-weight:900;font-size:25px;color:#e7d9f1}.error-box{background:#f8e3e9;color:#8f1f40}.helper{font-size:10px;color:#cbbbd7;margin-top:5px;line-height:1.4}.city-warning{display:none;margin-top:6px;padding:7px 9px;border-radius:7px;background:rgba(255,194,71,.12);border:1px solid rgba(255,194,71,.2);color:#f2ce86;font-size:10px}.multi-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.multi-option{display:flex!important;align-items:center;gap:7px;padding:8px 9px;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:rgba(255,255,255,.045);font-size:11px!important;font-weight:500!important}.summary-count{margin-left:auto;color:#93879c;font-size:11px;font-weight:600}.section-icon{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:#f0e6f8;color:#6516b5;font-size:10px;font-weight:900}.master-field-row{display:grid;grid-template-columns:130px 1fr 150px;gap:15px;padding:15px 0;border-bottom:1px solid #f0ebf3;align-items:start}.master-field-row:last-child{border-bottom:0}.field-id{display:flex;flex-direction:column;gap:4px;padding-top:9px}.field-id b{font-size:12px}.field-id span{font-size:10px;color:#9a91a1;text-transform:uppercase}.field-options{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding-top:9px}.check-row{font-size:11px;font-weight:700;color:#655b6c}.icon-btn{width:32px;height:32px;border:0;border-radius:8px;background:#f0ebf5;color:#5d18a4;font-weight:900;cursor:pointer}.options-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.add-option{display:flex;gap:8px;margin-top:13px}.add-option input{flex:1;border:1px solid var(--line);border-radius:8px;padding:10px}.mini-setting{background:#fff;border:1px solid var(--line);border-radius:13px;padding:14px;margin:10px 0;box-shadow:var(--shadow)}.mini-setting label{display:block;font-size:11px;font-weight:800;margin-bottom:7px}.mini-setting input,.mini-setting textarea{width:100%;border:1px solid var(--line);border-radius:8px;padding:10px;font:inherit;font-size:12px;margin-bottom:9px}.status-list{display:grid;grid-template-columns:1fr 1fr;gap:9px}.status-item{display:flex;align-items:center;gap:9px;padding:10px;border:1px solid var(--line);border-radius:9px}.brand-preview{background:linear-gradient(145deg,#28103c,#5a148a);color:#fff}.brand-preview .public-head{max-width:100%}.brand-preview .copy h1{font-size:22px}.brand-preview .intro{color:#d9cde4}
@media(max-width:900px){.master-field-row{grid-template-columns:1fr}.options-grid{grid-template-columns:1fr}.status-list{grid-template-columns:1fr}.campaign-form{grid-template-columns:1fr}.campaign-form .short-field{grid-column:1/-1}.public-head{grid-template-columns:1fr 130px}}
@media(max-width:650px){.public-head{grid-template-columns:1fr}.logo-box{min-height:80px}.multi-grid{grid-template-columns:1fr}}
/* VIERNES public form v1.5 */
.form-shell{padding:42px 20px;background:radial-gradient(circle at 50% -10%,#6f22a4 0,#35104f 42%,#12091b 100%);}
.public-form{width:min(980px,100%);padding:42px 48px;background:linear-gradient(145deg,#241035 0%,#4b0d73 55%,#6114a0 100%);border-radius:24px;border:1px solid rgba(255,255,255,.16);box-shadow:0 30px 90px rgba(0,0,0,.4)}
.public-head{display:grid;grid-template-columns:minmax(0,1fr) 220px;align-items:center;gap:45px;max-width:900px;margin:0 auto 30px;padding-bottom:26px;border-bottom:1px solid rgba(255,255,255,.12)}
.public-head .copy{text-align:left}.public-head .copy .brand{text-align:left;margin-bottom:12px}.public-head .copy h1{font-size:36px;line-height:1.08;margin:0 0 13px;letter-spacing:-.6px}.public-head .copy .intro{font-size:14px;line-height:1.65;margin:0 0 10px;max-width:600px}.public-head .copy .public-note{font-size:12px;line-height:1.55;margin:0;color:#d9cce4;max-width:600px}
.logo-box{min-height:170px;border-radius:18px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;padding:18px}.public-logo{max-width:175px;max-height:120px}.logo-placeholder{width:92px;height:92px;border-radius:20px;background:rgba(255,255,255,.11);display:grid;place-items:center;font-size:26px;font-weight:900;color:#e7d9f1}
.campaign-form{max-width:900px;margin:auto;display:grid;grid-template-columns:1fr 1fr;column-gap:18px;row-gap:4px}.campaign-form .form-section,.campaign-form .wide-field,.campaign-form .public-footer,.campaign-form .submit{grid-column:1/-1}.campaign-form .short-field{grid-column:span 1}.form-section{margin:18px 0 5px;padding:17px 0 8px;border-top:1px solid rgba(255,255,255,.13)}.section-kicker{display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:1.3px;color:#f1e7f7}.section-kicker span{width:29px;height:29px;border-radius:9px;background:rgba(255,255,255,.1);display:grid;place-items:center;font-size:9px;color:#d8b7ef}.public-form .field{margin:8px 0 12px}.public-form .field label{font-size:12px;line-height:1.35;margin-bottom:7px}.public-form .field input,.public-form .field textarea,.public-form .field select{min-height:44px;padding:11px 13px;border-radius:10px;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.15);font-size:13px;color:#fff}.public-form .field textarea{min-height:100px}.public-form .field select{appearance:auto;cursor:pointer}.public-form .field select option{background:#fff;color:#19151f}.public-form .field input:focus,.public-form .field textarea:focus,.public-form .field select:focus{border-color:#b47ae0;box-shadow:0 0 0 3px rgba(180,122,224,.13)}.helper{font-size:10px;color:#cdbddd;margin-top:6px;line-height:1.45}.multi-grid{grid-template-columns:1fr 1fr;gap:8px}.multi-option{min-height:42px;padding:9px 11px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.045);border-radius:9px}.multi-option:hover{background:rgba(255,255,255,.08)}.public-footer{font-size:11px;color:#cdbddd;text-align:center;margin:22px 0 8px}.public-form .submit{height:46px;border-radius:10px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.4);font-size:13px;transition:.2s}.public-form .submit:hover{background:rgba(255,255,255,.13);transform:translateY(-1px)}.public-form .submit:disabled{cursor:not-allowed}.city-warning{margin-top:7px;padding:8px 10px;border-radius:8px;background:rgba(255,193,7,.1);border:1px solid rgba(255,193,7,.2);color:#f3d58c;font-size:10px}
@media(max-width:760px){.public-form{padding:28px 20px}.public-head{grid-template-columns:1fr;gap:20px;text-align:center}.public-head .copy,.public-head .copy .brand,.public-head .copy h1,.public-head .copy .intro,.public-head .copy .public-note{text-align:center}.logo-box{min-height:120px;max-width:240px;margin:auto}.campaign-form{grid-template-columns:1fr}.campaign-form .short-field{grid-column:1/-1}.multi-grid{grid-template-columns:1fr}.public-head .copy h1{font-size:30px}}
/* VIERNES OS 1.6 — formulario público moderno */
.form-shell{min-height:100vh;padding:0;background:#f4f1f8;display:block;overflow-x:hidden}
.modern-form{width:min(1120px,calc(100% - 40px));margin:42px auto 60px;padding:0;background:#fff;color:#211a28;border:1px solid #e9e1ef;border-radius:24px;overflow:hidden;box-shadow:0 25px 70px rgba(48,18,70,.13)}
.modern-form .hero-head{max-width:none;margin:0;padding:42px 58px 38px;background:linear-gradient(135deg,#321049 0%,#57127e 55%,#7620ad 100%);border:0;grid-template-columns:minmax(0,1fr) 220px;gap:55px;position:relative;overflow:hidden}
.modern-form .hero-head:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-180px;top:-250px;background:rgba(255,255,255,.07)}
.modern-form .hero-head .copy{position:relative;z-index:1}.modern-form .hero-head .copy .brand{color:#e7d7f1;font-size:10px;letter-spacing:3px;font-weight:800}.modern-form .hero-head .copy h1{color:#fff;font-size:38px;line-height:1.08;max-width:610px;letter-spacing:-1px}.modern-form .hero-head .copy .intro{color:#eee4f5;font-size:14px;max-width:620px;line-height:1.65}.modern-form .hero-head .copy .public-note{color:#d9c6e7;font-size:12px}
.modern-form .logo-box{position:relative;z-index:1;width:220px;min-height:180px;border-radius:20px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(8px);justify-self:end}.modern-form .logo-placeholder{background:rgba(255,255,255,.14);color:#fff}.modern-form .form-body{padding:30px 58px 42px;background:#fff}
.modern-form .campaign-form{max-width:none;grid-template-columns:1fr 1fr;column-gap:22px;row-gap:0}.modern-form .form-section{margin:20px 0 10px;padding:0 0 10px;border-top:0}.modern-form .form-section:before{content:"";display:block;height:1px;background:#eee8f1;margin-bottom:18px}.modern-form .section-kicker{font-size:11px;color:#392b43;letter-spacing:1px}.modern-form .section-kicker span{background:#eee4f6;color:#6516b5}.modern-form .field{margin:9px 0 15px}.modern-form .field label{color:#302733;font-size:12px;font-weight:800}.modern-form .field input,.modern-form .field textarea,.modern-form .field select{background:#fff;color:#27202b;border:1px solid #ddd5e3;box-shadow:0 2px 7px rgba(44,20,61,.03);min-height:46px;border-radius:11px}.modern-form .field input::placeholder,.modern-form .field textarea::placeholder{color:#aaa1ad}.modern-form .field textarea{min-height:112px}.modern-form .field select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#8a7d91 50%),linear-gradient(135deg,#8a7d91 50%,transparent 50%);background-position:calc(100% - 18px) 20px,calc(100% - 13px) 20px;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:40px}.modern-form .field select option{background:#fff;color:#27202b}.modern-form .field input:focus,.modern-form .field textarea:focus,.modern-form .field select:focus{border-color:#8d48c2;box-shadow:0 0 0 4px rgba(141,72,194,.1)}.modern-form .multi-grid{grid-template-columns:1fr 1fr;gap:9px}.modern-form .multi-option{background:#faf8fc;border:1px solid #e5ddea;color:#44384a;min-height:48px;padding:11px 12px;border-radius:11px;transition:.18s}.modern-form .multi-option:hover{border-color:#b990d2;background:#f7f0fb}.modern-form .multi-option input{min-height:auto;width:auto;accent-color:#6c1ca8}.modern-form .helper{color:#8a7e90}.modern-form .city-warning{background:#fff6df;border-color:#f1dda5;color:#8a6619}.modern-form .public-footer{color:#8b808f;margin:24px 0 10px}.modern-form .submit{background:linear-gradient(135deg,#6516b5,#7b2bc6);border:0;color:#fff;height:50px;border-radius:11px;font-weight:800;box-shadow:0 10px 22px rgba(101,22,181,.2)}.modern-form .submit:hover{filter:brightness(1.05);transform:translateY(-1px)}
/* Success screen */
.form-shell .public-form:not(.modern-form){width:min(720px,calc(100% - 40px));margin:60px auto;padding:36px;background:linear-gradient(145deg,#321049,#6817a4);border:0;color:#fff;border-radius:22px}
.form-shell .public-form:not(.modern-form) .notice{background:#fff;color:#241c29}.form-shell .public-form:not(.modern-form) h1{color:#fff}.form-shell .public-form:not(.modern-form) .intro{color:#ded0e7}
@media(max-width:800px){.modern-form{width:calc(100% - 22px);margin:18px auto 30px;border-radius:18px}.modern-form .hero-head{grid-template-columns:1fr;padding:30px 24px;gap:20px;text-align:center}.modern-form .hero-head .copy,.modern-form .hero-head .copy .brand,.modern-form .hero-head .copy h1,.modern-form .hero-head .copy .intro,.modern-form .hero-head .copy .public-note{text-align:center}.modern-form .hero-head .copy h1{font-size:31px;margin-left:auto;margin-right:auto}.modern-form .logo-box{justify-self:center;width:180px;min-height:130px}.modern-form .form-body{padding:20px 20px 28px}.modern-form .campaign-form{grid-template-columns:1fr}.modern-form .campaign-form .short-field{grid-column:1/-1}.modern-form .multi-grid{grid-template-columns:1fr}}

/* VIERNES OS 1.7 — encabezado simplificado + instrucciones */
.modern-form .hero-head .copy .brand{display:none}
.modern-form .hero-head .copy h1{margin:0 0 10px;font-size:38px;line-height:1.08;letter-spacing:-1px}
.modern-form .hero-head .copy .intro{margin:0;max-width:650px}
.instruction-box{display:flex;align-items:flex-start;gap:12px;margin:0 0 24px;padding:15px 17px;border:1px solid #e8dff0;background:#fbf9fd;border-radius:13px}
.instruction-icon{width:26px;height:26px;min-width:26px;border-radius:50%;display:grid;place-items:center;background:#eee4f6;color:#6516b5;font-weight:900;font-size:13px}
.instruction-title{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.9px;color:#4a3a51;margin-bottom:4px}
.instruction-text{font-size:12px;line-height:1.6;color:#766b7e}
.public-head-preview .brand{display:none}
@media(max-width:800px){.modern-form .hero-head .copy h1{font-size:31px}}
/* VIERNES OS 1.8 — encabezado horizontal y subtítulo debajo */
.modern-form .hero-head{
  display:block;
  position:relative;
  padding:52px 72px 48px;
  min-height:260px;
}
.modern-form .hero-head .copy{
  width:100%;
  max-width:100%;
  padding-right:250px;
}
.modern-form .hero-head .copy h1{
  display:block;
  width:100%;
  max-width:none;
  margin:0 0 16px;
  font-size:48px;
  line-height:1.08;
  letter-spacing:-1.4px;
  white-space:normal;
}
.modern-form .hero-head .copy .intro{
  display:block;
  width:100%;
  max-width:820px;
  margin:0;
  font-size:15px;
  line-height:1.7;
}
.modern-form .hero-head .logo-box{
  position:absolute;
  right:58px;
  top:50%;
  transform:translateY(-50%);
  width:185px;
  min-height:150px;
}
@media(max-width:900px){
  .modern-form .hero-head{padding:42px 40px 38px}
  .modern-form .hero-head .copy{padding-right:210px}
  .modern-form .hero-head .copy h1{font-size:40px}
  .modern-form .hero-head .logo-box{right:30px;width:165px;min-height:135px}
}
@media(max-width:700px){
  .modern-form .hero-head{padding:32px 24px;text-align:center}
  .modern-form .hero-head .copy{padding-right:0}
  .modern-form .hero-head .copy h1{font-size:34px;text-align:center;margin-bottom:12px}
  .modern-form .hero-head .copy .intro{text-align:center;font-size:14px}
  .modern-form .hero-head .logo-box{position:static;transform:none;margin:24px auto 0;width:180px;min-height:120px}
}

/* 1.9 — preview uses the exact public form */
.preview-card{overflow:hidden}.preview-frame{height:900px;margin:0 -4px -4px;border:1px solid #e7dfeb;border-radius:14px;overflow:hidden;background:#f6f4f9}.preview-frame iframe{display:block;width:100%;height:100%;border:0;background:#f6f4f9}.modern-form .submit:disabled{opacity:.7;cursor:default;transform:none;filter:none}

/* VIERNES OS 1.10 — seguimiento futurista */
.status-page{
  min-height:100vh;
  margin:0;
  padding:48px 20px;
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 15% 15%, rgba(126,55,210,.24), transparent 34%),
    radial-gradient(circle at 85% 80%, rgba(91,25,151,.22), transparent 38%),
    linear-gradient(135deg,#f8f6fb 0%,#f0ecf5 48%,#f8f7fa 100%);
}
.status-page:before,.status-page:after{
  content:"";position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none;
}
.status-page:before{
  width:360px;height:360px;left:-170px;top:-160px;
  border:1px solid rgba(116,49,180,.13);box-shadow:0 0 100px rgba(100,31,164,.12);
}
.status-page:after{
  width:430px;height:430px;right:-220px;bottom:-240px;
  border:1px solid rgba(116,49,180,.12);box-shadow:0 0 120px rgba(100,31,164,.10);
}
.status-card{
  width:min(720px,100%);
  position:relative;
  z-index:1;
  background:rgba(255,255,255,.91);
  border:1px solid rgba(93,62,112,.14);
  border-radius:26px;
  padding:34px;
  box-shadow:0 28px 70px rgba(41,19,58,.16),0 4px 16px rgba(41,19,58,.05);
  backdrop-filter:blur(16px);
}
.status-brand{
  text-align:center;
  font-size:10px;
  letter-spacing:4px;
  font-weight:900;
  color:#806b8e;
  margin-bottom:9px;
}
.status-card h1{
  margin:0;
  text-align:center;
  color:#21142b;
  font-size:30px;
  letter-spacing:-.8px;
}
.status-subtitle{
  text-align:center;
  color:#74657d;
  margin:9px auto 25px;
  font-size:14px;
  line-height:1.55;
}
.status-number{
  border-radius:17px;
  padding:21px 22px;
  background:linear-gradient(135deg,#faf8fc,#f2edf7);
  border:1px solid #e7deed;
  text-align:center;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}
.status-number small{
  display:block;text-transform:uppercase;letter-spacing:1.1px;font-size:10px;
  color:#8a7b91;font-weight:800;margin-bottom:6px;
}
.status-number strong{
  display:block;font-size:28px;letter-spacing:.5px;color:#321246;
}
.status-state{
  display:flex;justify-content:center;margin:22px 0 12px;
}
.status-badge{
  display:inline-flex;align-items:center;gap:8px;padding:8px 14px;
  border-radius:999px;font-size:12px;font-weight:850;border:1px solid transparent;
}
.status-badge:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 10px currentColor}
.status-badge.green{color:#087a55;background:#e6f8f0;border-color:#c8ecde}
.status-badge.yellow{color:#9a6808;background:#fff5d8;border-color:#f0dfaa}
.status-badge.red{color:#b12a4f;background:#fde9ef;border-color:#f2cbd7}
.status-badge.purple{color:#6532a1;background:#f0e8fa;border-color:#dfcef1}
.status-campaign{text-align:center;color:#786981;font-size:13px;margin:0 0 18px}
.status-message{
  padding:15px 17px;border-radius:14px;background:#f8f6fa;border:1px solid #e9e1ee;
  color:#4f4257;font-size:13px;line-height:1.5;
}
.status-action{
  width:100%;margin-top:16px;border:0;border-radius:12px;padding:13px 16px;
  background:linear-gradient(135deg,#7d31c3,#5a1596);color:#fff;
  font-weight:800;cursor:pointer;box-shadow:0 10px 22px rgba(91,22,150,.22);
  transition:transform .18s ease,filter .18s ease,box-shadow .18s ease;
}
.status-action:hover{filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 13px 28px rgba(91,22,150,.28)}
.status-action:active{transform:translateY(0);filter:brightness(1.15)}
.status-footer{text-align:center;margin-top:18px;color:#9a8ea0;font-size:11px}
@media(max-width:600px){
  .status-page{padding:20px 13px}
  .status-card{padding:25px 18px;border-radius:21px}
  .status-card h1{font-size:25px}
  .status-number strong{font-size:24px}
}

/* VIERNES OS 1.11 — aceptación, logo global y detalles futuristas */
.site-logo{display:block;max-width:150px;max-height:62px;width:auto;height:auto;object-fit:contain}
.fallback-logo{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#8136c8,#56118f);color:#fff;font-weight:900;font-size:22px}
.status-logo,.accept-logo{display:flex;justify-content:center;align-items:center;margin-bottom:17px}
.status-logo .site-logo,.accept-logo .site-logo{max-width:150px;max-height:58px}
.acceptance-card{max-width:820px}
.check-mark{color:#18a673}
.approval-line{display:flex;align-items:center;justify-content:center;gap:8px;margin:18px 0 22px;color:#087a55;font-size:12px;font-weight:800}
.approval-line span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#e5f8ef}
.client-data-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.data-card{padding:16px 17px;border:1px solid #e9e2ed;background:#fcfbfd;border-radius:14px;min-height:78px}
.data-card span{display:block;color:#8b7c92;text-transform:uppercase;letter-spacing:.7px;font-size:9px;font-weight:850;margin-bottom:6px}
.data-card strong{display:block;color:#2a1c31;font-size:13px;line-height:1.45}
.schedule-block{margin-top:24px;padding:22px;border-radius:18px;background:linear-gradient(145deg,#faf8fc,#f4eff8);border:1px solid #e8dfed}
.block-kicker{font-size:10px;letter-spacing:1.2px;color:#7a5a8e;font-weight:900;margin-bottom:6px}
.schedule-block h2{margin:0 0 6px;color:#24172b;font-size:21px}
.schedule-block>p{margin:0 0 14px;color:#776b7f;font-size:12px}
.schedule-form .field{margin:11px 0}
.schedule-form .field label span{font-weight:500;color:#9b8ea2}
.schedule-form input,.schedule-form textarea{background:#fff}
.confirmed-card{display:flex;gap:15px;align-items:flex-start;margin-top:23px;padding:19px;border-radius:16px;background:#effaf5;border:1px solid #d2eee2;color:#225541}
.confirmed-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#d9f5e8;color:#0d865e;font-weight:900}
.confirmed-card small{font-size:9px;letter-spacing:1px;font-weight:900;color:#16805e}
.confirmed-card h2{margin:4px 0 7px;font-size:19px;color:#174634}
.confirmed-card p{margin:4px 0;font-size:12px;line-height:1.45}
.master-logo-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}
.master-logo-current{min-width:130px;min-height:74px;padding:9px 14px;border:1px dashed #d8cde0;border-radius:13px;display:grid;place-items:center;background:#fbf9fd}
.master-logo-current .master-logo{max-width:120px;max-height:55px}
@media(max-width:650px){
 .client-data-grid{grid-template-columns:1fr}
 .master-logo-head{align-items:flex-start;flex-direction:column}
}

/* VIERNES OS 1.12 — confirmación y seguimiento */
.submission-success-card{max-width:720px;text-align:center}
.success-icon{width:54px;height:54px;margin:0 auto 12px;border-radius:18px;display:grid;place-items:center;background:#e6f8f0;color:#07815b;font-size:27px;font-weight:950;border:1px solid #ccecdf;box-shadow:0 8px 20px rgba(8,129,91,.10)}
.submission-success-card .status-number{margin-top:22px}
.compact-tracking{width:auto;text-align:left;margin-top:18px}
.compact-tracking .tracking-copy-row{margin-top:4px}
.status-follow{display:block;text-align:center;text-decoration:none;box-sizing:border-box}

/* VIERNES OS 1.13 — configuración por campaña, sin vista previa embebida */
.campaign-visibility-card{height:100%;min-width:0}
.visibility-list{display:flex;flex-direction:column;gap:8px}
.visibility-item{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 13px;border:1px solid var(--line);border-radius:12px;background:#fff;transition:.16s}
.visibility-item:hover{border-color:#d7c8e3;box-shadow:0 5px 18px rgba(55,21,76,.05)}
.visibility-item.is-off{background:#faf9fb;opacity:.78}
.visibility-info{display:flex;align-items:center;gap:11px;min-width:0}
.visibility-info b{display:block;font-size:13px;line-height:1.25}
.visibility-number{width:30px;height:30px;border-radius:9px;background:#eee6f7;color:#6d28a7;display:grid;place-items:center;font-size:10px;font-weight:900;flex:none}
.visibility-action{margin:0}
.visibility-switch{border:0;background:transparent;display:flex;align-items:center;gap:8px;cursor:pointer;padding:3px}
.visibility-switch span{width:39px;height:22px;border-radius:999px;background:#d9d3df;position:relative;display:block;transition:.18s}
.visibility-switch span:after{content:"";position:absolute;width:16px;height:16px;left:3px;top:3px;background:#fff;border-radius:50%;box-shadow:0 1px 3px #0002;transition:.18s}
.visibility-switch.on span{background:var(--green)}
.visibility-switch.on span:after{transform:translateX(17px)}
.visibility-switch em{font-style:normal;font-size:10px;font-weight:850;color:#776b80;min-width:44px;text-align:left}
.visibility-switch.on em{color:#137851}
.visibility-note{margin-top:14px;padding:13px 14px;border-radius:11px;background:#f7f3fa;border:1px solid #e9e0ef;display:flex;gap:9px;align-items:flex-start;font-size:11px;color:#766a7d;line-height:1.45}
.visibility-note b{color:#4c3658;white-space:nowrap}
@media(max-width:1000px){.grid2{grid-template-columns:1fr}.content{padding:22px 18px 40px}.topbar{padding:0 18px}}
@media(max-width:620px){.top{align-items:flex-start;flex-direction:column}.actions{width:100%}.actions .btn{flex:1}.search{width:210px}.visibility-item{align-items:flex-start}.visibility-info{min-width:0}.visibility-switch em{display:none}}

/* =========================================================
   VIERNES OS 1.14 — Builder profesional y responsive
   ========================================================= */
.builder-page{max-width:1500px}
.builder-titlebar{display:flex;justify-content:space-between;align-items:flex-end;gap:22px;margin-bottom:20px}
.eyebrow,.card-kicker{font-size:9px;letter-spacing:1.5px;font-weight:900;color:#8c7898;margin-bottom:5px}
.builder-titlebar h1{margin:0 0 6px;font-size:29px;letter-spacing:-.6px}
.builder-titlebar p{margin:0;color:var(--muted);font-size:13px}
.builder-tabs{
  display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:6px;
  background:#ebe7ef;border:1px solid #e2dce7;border-radius:15px;margin-bottom:18px;
}
.builder-tabs a{
  display:flex;align-items:center;gap:11px;padding:12px 14px;border-radius:11px;
  color:#706579;transition:.18s;min-width:0
}
.builder-tabs a:hover{background:#f6f3f8;color:#3d3047}
.builder-tabs a.active{background:#fff;color:#4f168d;box-shadow:0 3px 12px rgba(49,19,67,.08)}
.builder-tabs a b{display:block;font-size:12px}.builder-tabs a small{display:block;font-size:10px;color:#918697;margin-top:2px}
.tab-icon{width:31px;height:31px;display:grid;place-items:center;border-radius:9px;background:#f1e9f7;color:#7227a9;font-size:9px;font-weight:900;flex:none}
.builder-tabs a.active .tab-icon{background:linear-gradient(135deg,#8c43d1,#5f169a);color:#fff}
.builder-tab-panel{animation:builderIn .18s ease}
@keyframes builderIn{from{opacity:.4;transform:translateY(3px)}to{opacity:1;transform:none}}
.builder-main-card{padding:24px}
.field-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.field-summary{
  display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:11px;
  padding:14px;border:1px solid var(--line);border-radius:13px;background:#fcfbfd;min-height:73px;
}
.field-summary:hover{border-color:#d9cae4;box-shadow:0 5px 16px rgba(44,15,61,.045)}
.field-summary-number,.visibility-number{
  width:32px;height:32px;border-radius:9px;background:#eee5f6;color:#6d25a3;
  display:grid;place-items:center;font-size:9px;font-weight:900
}
.field-summary-body{min-width:0}.field-summary-body b{display:block;font-size:12px;line-height:1.3}.field-summary-body .small{margin-top:3px}
.field-helper{font-size:10px;color:#8a7d90;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mini-status{font-size:9px;font-weight:850;padding:5px 8px;border-radius:999px;white-space:nowrap}
.mini-status.on{color:#087a55;background:#e5f7ef}.mini-status.off{color:#817686;background:#efebf1}
.visibility-modern-list{display:flex;flex-direction:column;gap:8px}
.visibility-modern-item{
  display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px;
  padding:12px 14px;border:1px solid var(--line);border-radius:13px;background:#fff;
  transition:.16s
}
.visibility-modern-item:hover{border-color:#d8c8e4;box-shadow:0 5px 18px rgba(55,21,76,.045)}
.visibility-modern-item.is-off{background:#faf9fb}
.visibility-main{min-width:0}.visibility-main b{display:block;font-size:12px;line-height:1.3}.visibility-main span{display:block;color:#938697;font-size:10px;margin-top:3px}
.visibility-modern-item form{margin:0}
.visibility-toggle{border:0;background:none;padding:3px;display:flex;align-items:center;gap:8px;cursor:pointer}
.visibility-toggle i{width:40px;height:23px;background:#d8d2dd;border-radius:999px;position:relative;display:block;transition:.18s}
.visibility-toggle i:after{content:"";position:absolute;width:17px;height:17px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0002;transition:.18s}
.visibility-toggle.on i{background:var(--green)}.visibility-toggle.on i:after{transform:translateX(17px)}
.visibility-toggle em{font-style:normal;font-size:10px;font-weight:850;color:#847887;min-width:42px;text-align:left}
.visibility-toggle.on em{color:#087a55}.visibility-toggle.off em{color:#817686}
.builder-tip{
  margin-top:16px;padding:14px 15px;border-radius:12px;background:#f7f3fa;border:1px solid #e8dfed;
  display:flex;gap:10px;align-items:flex-start
}
.builder-tip>span{width:23px;height:23px;border-radius:7px;background:#e4f5ed;color:#087a55;display:grid;place-items:center;font-weight:900;font-size:11px;flex:none}
.builder-tip b{font-size:11px;color:#4a3655}.builder-tip p{margin:3px 0 0;font-size:10px;color:#807386;line-height:1.45}
.publication-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.publication-grid .card{min-height:260px}
.publication-status{display:flex;gap:7px;margin:10px 0 14px}.publication-grid h2{margin:0 0 7px;font-size:20px}
.publish-form{margin-top:20px}.link-card h2{margin-top:0}.generated-link{display:flex;gap:8px;margin-top:14px}
.generated-link input{min-width:0;flex:1;border:1px solid var(--line);background:#faf9fb;border-radius:10px;padding:11px;font-size:11px;color:#57485f}
.generated-link button{flex:none}.link-open{width:100%;margin-top:11px}.reactivate-form{margin-top:9px}
@media(max-width:1000px){
 .field-summary-grid,.publication-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
 .builder-titlebar{align-items:flex-start;flex-direction:column}
 .builder-titlebar .actions{width:100%}.builder-titlebar .actions .btn{flex:1}
 .builder-tabs{grid-template-columns:1fr}
 .builder-tabs a{padding:11px 13px}
 .field-summary{grid-template-columns:32px minmax(0,1fr)}
 .field-summary .mini-status{grid-column:2;justify-self:start;margin-top:-5px}
 .visibility-modern-item{grid-template-columns:32px minmax(0,1fr) auto;padding:11px}
 .visibility-toggle em{display:none}
 .generated-link{flex-direction:column}.generated-link button{width:100%}
}

/* Pantallas públicas largas: nunca cortar contenido, siempre permitir desplazamiento */
.status-page{
  min-height:100vh;height:auto;overflow-x:hidden;overflow-y:auto;
  align-items:flex-start;
}
.status-page .status-card{margin:22px auto 36px}
.acceptance-page .status-card{width:min(900px,100%);max-height:none;overflow:visible}
.acceptance-page .client-data-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.acceptance-page .schedule-block{margin-bottom:4px}
@media(max-width:720px){
  .status-page{padding:18px 10px}
  .status-page .status-card{margin:8px auto 24px}
  .acceptance-page .status-card{padding:22px 16px}
  .acceptance-page .client-data-grid{grid-template-columns:1fr}
  .acceptance-page .grid2{grid-template-columns:1fr}
  .acceptance-page .confirmed-card{flex-direction:column}
}
/* VIERNES OS 1.15 — disponibilidad y aprobación simplificada */
.availability-master{display:grid;gap:16px}.availability-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(135deg,#fff,#faf7fc)}
.availability-hero h2{margin:0 0 6px}.availability-hero p{margin:0;max-width:720px}.availability-count{min-width:145px;padding:16px;border-radius:14px;background:#f2eafb;border:1px solid #e3d5ee;text-align:center}.availability-count strong{display:block;font-size:25px;color:#6516a6}.availability-count span{font-size:10px;color:#786b80;font-weight:800}
.availability-add-form{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end}.availability-add-form .field{margin:0}.availability-list{display:flex;flex-direction:column;gap:8px}.availability-row{display:grid;grid-template-columns:minmax(260px,1fr) 150px 130px auto auto;align-items:center;gap:12px;padding:11px 13px;border:1px solid var(--line);border-radius:13px;background:#fff}.availability-row.disabled{opacity:.65;background:#faf9fb}.availability-row.booked{background:#fffcf3}.availability-date{display:flex;align-items:center;gap:10px}.availability-date>span{width:38px;height:38px;border-radius:10px;background:#f0e5f8;color:#6819a6;display:grid;place-items:center;font-size:12px;font-weight:900}.availability-date b{display:block;font-size:12px;text-transform:capitalize}.availability-date small{display:block;font-size:10px;color:#918595;margin-top:2px}.availability-time{font-size:12px;font-weight:800;color:#45354d}.availability-row .icon-btn.danger{color:#b32e4d;background:#faedf1}.slot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0}.slot-option{position:relative;cursor:pointer}.slot-option input{position:absolute;opacity:0}.slot-option span{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px;border:1px solid #dfd4e5;background:#fff;border-radius:13px;transition:.16s}.slot-option b{font-size:12px;color:#4d3e55}.slot-option strong{font-size:15px;color:#6819a6}.slot-option:hover span{border-color:#bb91d2;box-shadow:0 6px 18px rgba(70,24,94,.07)}.slot-option input:checked+span{border-color:#7528b2;background:#f6effa;box-shadow:0 0 0 3px rgba(117,40,178,.10)}.empty-slot{padding:18px;text-align:center;border:1px dashed #ddd2e3;border-radius:12px;color:#887b90;font-size:12px;background:#fbf9fc}
@media(max-width:900px){.availability-add-form{grid-template-columns:1fr 1fr}.availability-add-form .btn{grid-column:1/-1}.slot-grid{grid-template-columns:1fr 1fr}.availability-row{grid-template-columns:1fr auto auto auto}.availability-time{grid-column:2}.availability-state{grid-column:3}}
@media(max-width:600px){.availability-hero{align-items:flex-start;flex-direction:column}.availability-count{width:100%;box-sizing:border-box}.availability-add-form,.slot-grid{grid-template-columns:1fr}.availability-row{grid-template-columns:1fr auto}.availability-time{grid-column:auto}.availability-state{grid-column:auto}.availability-row form{justify-self:end}}


/* VIERNES OS 1.19 — seguimiento elegante y botones sin flash blanco */
.elegant-tracking{
  margin-top:20px;
  padding:17px 18px;
  border:1px solid #e7dced;
  border-radius:18px;
  background:linear-gradient(135deg,#fbf9fd 0%,#f5eff9 100%);
  box-shadow:0 8px 24px rgba(75,28,103,.06);
}
.tracking-copy-main{display:flex;align-items:center;gap:12px;min-width:0}
.tracking-copy-icon{
  width:42px;height:42px;flex:none;border-radius:13px;
  display:grid;place-items:center;
  color:#fff;font-size:18px;font-weight:900;
  background:linear-gradient(135deg,#8136c8,#5a1596);
  box-shadow:0 7px 16px rgba(90,21,150,.18)
}
.elegant-tracking .tracking-copy-title{font-size:14px;font-weight:900;color:#2b1d34;margin:0 0 3px}
.elegant-tracking p{margin:0;color:#796d82;font-size:11px;line-height:1.45}
.tracking-copy-actions{display:flex;gap:9px;margin-top:13px}
.copy-tracking-btn,.open-tracking-btn{
  min-height:40px;padding:9px 15px;border-radius:999px;
  display:inline-flex;align-items:center;justify-content:center;gap:7px;
  font:inherit;font-size:11px;font-weight:850;text-decoration:none;cursor:pointer;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease,filter .16s ease;
}
.copy-tracking-btn{
  border:0;color:#fff !important;
  background:linear-gradient(135deg,#8136c8,#5a1596) !important;
  box-shadow:0 7px 17px rgba(90,21,150,.20);
}
.copy-tracking-btn:hover{filter:brightness(1.07);transform:translateY(-1px);box-shadow:0 10px 22px rgba(90,21,150,.25)}
.copy-tracking-btn:active,.copy-tracking-btn:focus,.copy-tracking-btn:focus-visible{
  color:#fff !important;background:linear-gradient(135deg,#8136c8,#5a1596) !important;
  outline:none;transform:translateY(0);box-shadow:0 5px 14px rgba(90,21,150,.20)
}
.open-tracking-btn{color:#5d3473;border:1px solid #d9c9e2;background:#fff}
.open-tracking-btn:hover{border-color:#b997ca;background:#faf6fc;transform:translateY(-1px)}
.tracking-copied{display:none;margin-top:9px;font-size:10px;font-weight:750;color:#16805e}
.tracking-copied.show{display:block}
.status-action:focus,.status-action:focus-visible,.status-action:active{
  color:#fff !important;
  background:linear-gradient(135deg,#7d31c3,#5a1596) !important;
  outline:none;
  filter:none;
}
.status-action:active{transform:translateY(0);box-shadow:0 7px 16px rgba(91,22,150,.20)}
@media(max-width:520px){
 .tracking-copy-actions{display:grid;grid-template-columns:1fr 1fr}
 .copy-tracking-btn,.open-tracking-btn{width:100%}
}

/* VIERNES OS 1.20 — botón público estable al hacer clic */
.public-form .submit,
.modern-form .submit {
  -webkit-appearance: none;
  appearance: none;
  -webkit-tap-highlight-color: transparent;
  outline: none;
  color: #fff !important;
  background: linear-gradient(135deg,#6516b5,#7b2bc6) !important;
  border: 0 !important;
  opacity: 1;
  transition: transform .18s ease, filter .18s ease, box-shadow .18s ease;
}
.public-form .submit:hover,
.modern-form .submit:hover {
  background: linear-gradient(135deg,#6f1bc0,#8734d2) !important;
  color: #fff !important;
  filter: brightness(1.05);
}
.public-form .submit:focus,
.public-form .submit:focus-visible,
.public-form .submit:active,
.modern-form .submit:focus,
.modern-form .submit:focus-visible,
.modern-form .submit:active {
  outline: none !important;
  color: #fff !important;
  background: linear-gradient(135deg,#6516b5,#7b2bc6) !important;
  border: 0 !important;
  box-shadow: 0 8px 22px rgba(101,22,181,.28) !important;
}
.public-form .submit:active,
.modern-form .submit:active {
  transform: translateY(1px) !important;
  filter: brightness(.98) !important;
}
.public-form .submit:disabled,
.modern-form .submit:disabled {
  color: #fff !important;
  background: linear-gradient(135deg,#6516b5,#7b2bc6) !important;
  opacity: .58;
}

/* VIERNES OS 1.21 — selector de plantillas + temas públicos consistentes */
.template-form{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}
.template-choice{appearance:none;-webkit-appearance:none;border:1px solid var(--line);position:relative;display:grid;grid-template-columns:150px 1fr;gap:15px;align-items:center;width:100%;padding:13px;text-align:left;border-radius:16px;background:#fff;color:#211b27;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease}
.template-choice:hover{border-color:#b57ce0;box-shadow:0 10px 28px rgba(75,25,105,.09);transform:translateY(-1px)}
.template-choice.selected{border-color:#7b2bc6;box-shadow:0 0 0 3px rgba(123,43,198,.11),0 12px 28px rgba(75,25,105,.08);background:#fff}
.template-choice.selected:after{content:'✓';position:absolute;right:12px;top:12px;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#8136c8,#5a1596);color:#fff;font-size:12px;font-weight:900;box-shadow:0 5px 14px rgba(90,21,150,.22)}
.template-preview{height:112px;border-radius:13px;padding:10px;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid rgba(255,255,255,.18)}
.light-preview{background:linear-gradient(145deg,#f7f3fb,#eee6f7)}
.dark-preview{background:linear-gradient(145deg,#07050e,#241039 72%,#5b158e)}
.tp-card{width:100%;height:100%;border-radius:10px;padding:10px;display:flex;flex-direction:column;justify-content:center;gap:5px}
.light-preview .tp-card{background:#fff;color:#271b31;box-shadow:0 6px 18px rgba(40,20,55,.08)}
.dark-preview .tp-card{background:rgba(9,6,18,.78);border:1px solid rgba(181,101,255,.35);color:#fff;box-shadow:0 0 20px rgba(132,43,255,.18)}
.tp-card b{font-size:7px;letter-spacing:2px;opacity:.7}.tp-card strong{font-size:11px;line-height:1.05}.tp-card small{font-size:7px;opacity:.65}.tp-card i{height:7px;border-radius:4px;background:linear-gradient(90deg,#7c32d6,#a75cff);width:58%;display:block}
.template-copy b{display:block;font-size:14px;margin-bottom:5px}.template-copy small{display:block;color:var(--muted);font-size:11px;line-height:1.45}.template-copy em{display:inline-flex;margin-top:9px;font-style:normal;font-size:9px;font-weight:900;letter-spacing:.8px;text-transform:uppercase;color:#7b2bc6}
.template-save{grid-column:1/-1;justify-self:start;border-radius:999px}
.template-note{min-height:170px}.template-note .card-kicker{color:#caa1ef}.template-current{margin-top:20px;padding:11px 13px;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:rgba(255,255,255,.07);font-size:12px;color:#eee}.template-current strong{color:#fff}

/* Dark Futurista: máxima legibilidad en formularios */
.public-theme.dark{--public-text:#fbf8ff;--public-muted:#c9bdd6;--public-border:rgba(190,112,255,.25)}
.public-theme.dark .form-shell{background:radial-gradient(circle at 8% 8%,rgba(126,46,230,.24),transparent 25%),radial-gradient(circle at 92% 88%,rgba(186,47,255,.16),transparent 28%),linear-gradient(135deg,#07050d 0%,#13081f 46%,#05040a 100%);min-height:100vh}
.public-theme.dark .form-shell:after{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 45%,rgba(151,61,255,.07),transparent 43%)}
.public-theme.dark .public-form{position:relative;z-index:1;background:linear-gradient(145deg,rgba(13,8,23,.98),rgba(28,11,45,.98) 55%,rgba(54,15,84,.96));color:var(--public-text);border:1px solid var(--public-border);box-shadow:0 30px 100px rgba(0,0,0,.55),0 0 60px rgba(119,37,224,.14);backdrop-filter:blur(16px)}
.public-theme.dark .public-head{color:#fff}.public-theme.dark .public-head h1,.public-theme.dark .public-form h1{color:#fff !important}.public-theme.dark .public-head .intro,.public-theme.dark .public-form .intro{color:#d4c8df !important}
.public-theme.dark .logo-box{background:rgba(255,255,255,.045);border:1px solid rgba(190,112,255,.2)}
.public-theme.dark .form-section{border-color:rgba(190,112,255,.18)}
.public-theme.dark .modern-form .section-kicker{color:#f6effc !important;font-weight:900}
.public-theme.dark .modern-form .section-kicker span{background:linear-gradient(145deg,rgba(143,62,226,.25),rgba(91,27,139,.22));border:1px solid rgba(192,117,255,.27);color:#d3a5ff !important;box-shadow:0 0 18px rgba(133,45,219,.10)}
.public-theme.dark .public-form .field label{color:#f5eefb !important;font-weight:850}
.public-theme.dark .public-form .field input,.public-theme.dark .public-form .field textarea,.public-theme.dark .public-form .field select{background:rgba(255,255,255,.075) !important;color:#fff !important;border:1px solid rgba(194,125,255,.25) !important;box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 5px 18px rgba(0,0,0,.08)}
.public-theme.dark .public-form .field input:hover,.public-theme.dark .public-form .field textarea:hover,.public-theme.dark .public-form .field select:hover{border-color:rgba(205,145,255,.38) !important}
.public-theme.dark .public-form .field input:focus,.public-theme.dark .public-form .field textarea:focus,.public-theme.dark .public-form .field select:focus{border-color:#b56aff !important;box-shadow:0 0 0 3px rgba(181,106,255,.14),0 0 24px rgba(126,40,216,.13) !important}
.public-theme.dark .public-form .field input::placeholder,.public-theme.dark .public-form .field textarea::placeholder{color:#c7b8d4 !important;opacity:1}
.public-theme.dark .public-form .field select{color:#fff !important}.public-theme.dark .public-form .field select option{background:#160d20 !important;color:#fff !important}
.public-theme.dark .public-form .helper{color:#bcaec9 !important}.public-theme.dark .instruction-box{background:rgba(255,255,255,.045);border-color:rgba(194,125,255,.20);color:#eee6f7}.public-theme.dark .instruction-title{color:#fff}.public-theme.dark .instruction-text{color:#d0c1dc}
.public-theme.dark .modern-form .multi-option{background:rgba(255,255,255,.055) !important;border-color:rgba(194,125,255,.21) !important;color:#f4edf9 !important}.public-theme.dark .modern-form .multi-option:hover{background:rgba(148,54,238,.13) !important;border-color:rgba(207,139,255,.4) !important}.public-theme.dark .modern-form .multi-option input{accent-color:#a85cff}
.public-theme.dark .public-footer{color:#a99ab7 !important}.public-theme.dark .submit,.public-theme.dark .modern-form .submit{color:#fff !important;background:linear-gradient(135deg,#6d1bd2,#a14cff) !important;border:1px solid rgba(224,188,255,.26) !important;box-shadow:0 12px 30px rgba(102,25,204,.30) !important}.public-theme.dark .submit:hover{background:linear-gradient(135deg,#7c25e6,#ac5aff) !important}.public-theme.dark .submit:active,.public-theme.dark .submit:focus,.public-theme.dark .submit:focus-visible{color:#fff !important;background:linear-gradient(135deg,#6d1bd2,#a14cff) !important;filter:none !important}

/* Dark Futurista para seguimiento, aceptación y solicitud recibida */
.public-theme.dark.status-page{background:radial-gradient(circle at 8% 8%,rgba(126,46,230,.23),transparent 26%),radial-gradient(circle at 92% 88%,rgba(186,47,255,.16),transparent 30%),linear-gradient(135deg,#07050d,#14091f 52%,#05040a);color:#fff}
.public-theme.dark.status-page:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 40%,rgba(139,46,236,.09),transparent 42%)}
.public-theme.dark .status-card{position:relative;background:linear-gradient(145deg,rgba(11,7,19,.98),rgba(27,11,43,.98) 55%,rgba(48,14,75,.96));border:1px solid rgba(190,112,255,.23);box-shadow:0 35px 100px rgba(0,0,0,.58),0 0 55px rgba(117,35,221,.14);color:#fff;backdrop-filter:blur(16px)}
.public-theme.dark .status-brand{color:#bd83ff}.public-theme.dark .status-card h1{color:#fff}.public-theme.dark .status-subtitle,.public-theme.dark .status-campaign{color:#cbbdd8}.public-theme.dark .status-number{background:linear-gradient(145deg,rgba(106,31,165,.19),rgba(25,10,40,.72));border-color:rgba(190,112,255,.23)}.public-theme.dark .status-number small{color:#b7a7c5}.public-theme.dark .status-number strong{color:#fff}.public-theme.dark .status-message,.public-theme.dark .tracking-copy-card,.public-theme.dark .schedule-block,.public-theme.dark .confirmed-card{background:rgba(255,255,255,.045);border-color:rgba(190,112,255,.20);color:#eee7f6}.public-theme.dark .status-footer{color:#92829f}.public-theme.dark .approval-line{background:rgba(23,176,123,.10);border-color:rgba(45,198,148,.18);color:#72e1ba}.public-theme.dark .data-card{background:rgba(255,255,255,.04);border-color:rgba(190,112,255,.18);color:#fff}.public-theme.dark .data-card span{color:#a99bb7}.public-theme.dark .data-card strong{color:#fff}.public-theme.dark .status-action,.public-theme.dark .open-tracking-btn,.public-theme.dark .copy-tracking-btn{color:#fff !important}.public-theme.dark .status-action{background:linear-gradient(135deg,#6d1bd2,#a14cff) !important;border-color:rgba(224,188,255,.24) !important}.public-theme.dark .copy-tracking-btn{background:linear-gradient(135deg,#6d1bd2,#9a43f5) !important}.public-theme.dark .open-tracking-btn{background:rgba(255,255,255,.05);border-color:rgba(190,112,255,.25);color:#e9dff2 !important}.public-theme.dark .tracking-copy-title{color:#fff}.public-theme.dark .elegant-tracking p{color:#bcaecb}.public-theme.dark .tracking-copied{color:#66ddb2}.public-theme.dark .slot-option{background:rgba(255,255,255,.045);border-color:rgba(190,112,255,.19);color:#fff}.public-theme.dark .slot-option:hover,.public-theme.dark .slot-option:has(input:checked){background:rgba(141,46,231,.14);border-color:#a85cff;box-shadow:0 0 0 2px rgba(168,92,255,.12)}

@media(max-width:900px){.template-form{grid-template-columns:1fr}.template-save{grid-column:auto}.template-choice{grid-template-columns:120px 1fr}.public-form .public-head{grid-template-columns:1fr 130px}.public-form{padding:28px 24px}}
@media(max-width:620px){.template-choice{grid-template-columns:1fr}.template-preview{height:100px}.public-form .public-head{grid-template-columns:1fr;text-align:center}.public-head .copy,.public-head .copy h1,.public-head .copy .intro{text-align:center;margin-left:auto;margin-right:auto}.public-logo{max-height:80px}.public-form{padding:22px 17px;border-radius:18px}.public-form .two{grid-template-columns:1fr}.status-card{width:min(94vw,860px);padding:24px 18px}}

/* VIERNES OS 1.22 — Dark Futurista: formulario completo, contraste y bordes */
.public-theme.dark .modern-form .form-body{
  background:linear-gradient(180deg,rgba(11,7,20,.99) 0%,rgba(18,8,29,.99) 48%,rgba(27,9,42,.99) 100%) !important;
  color:#f8f3ff !important;
}
.public-theme.dark .modern-form .form-section:before{
  background:linear-gradient(90deg,rgba(194,125,255,.30),rgba(194,125,255,.08),rgba(194,125,255,.30)) !important;
}
.public-theme.dark .modern-form .section-kicker{
  color:#ffffff !important;
  text-shadow:0 0 14px rgba(184,103,255,.16);
}
.public-theme.dark .modern-form .field label{
  color:#fbf8ff !important;
  text-shadow:0 1px 10px rgba(0,0,0,.35);
}
.public-theme.dark .modern-form .field input,
.public-theme.dark .modern-form .field textarea,
.public-theme.dark .modern-form .field select{
  background:rgba(255,255,255,.065) !important;
  color:#ffffff !important;
  border:1px solid rgba(207,142,255,.42) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 4px 18px rgba(0,0,0,.20) !important;
}
.public-theme.dark .modern-form .field input::placeholder,
.public-theme.dark .modern-form .field textarea::placeholder{
  color:#cfc1db !important;
  opacity:1 !important;
}
.public-theme.dark .modern-form .field input:hover,
.public-theme.dark .modern-form .field textarea:hover,
.public-theme.dark .modern-form .field select:hover{
  border-color:rgba(220,165,255,.62) !important;
  background:rgba(255,255,255,.085) !important;
}
.public-theme.dark .modern-form .field input:focus,
.public-theme.dark .modern-form .field textarea:focus,
.public-theme.dark .modern-form .field select:focus{
  border-color:#c17aff !important;
  background:rgba(255,255,255,.10) !important;
  box-shadow:0 0 0 3px rgba(193,122,255,.17),0 0 28px rgba(128,40,220,.16) !important;
}
.public-theme.dark .modern-form .field select{
  background-image:linear-gradient(45deg,transparent 50%,#d8b0ff 50%),linear-gradient(135deg,#d8b0ff 50%,transparent 50%) !important;
  background-position:calc(100% - 18px) 20px,calc(100% - 13px) 20px !important;
  background-size:5px 5px,5px 5px !important;
  background-repeat:no-repeat !important;
}
.public-theme.dark .modern-form .field select option{
  background:#170b22 !important;
  color:#ffffff !important;
}
.public-theme.dark .modern-form .helper{
  color:#bdaecb !important;
}
.public-theme.dark .modern-form .multi-option{
  color:#ffffff !important;
  background:rgba(255,255,255,.055) !important;
  border:1px solid rgba(207,142,255,.34) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025) !important;
}
.public-theme.dark .modern-form .multi-option:hover{
  background:rgba(151,58,238,.14) !important;
  border-color:rgba(220,165,255,.62) !important;
}
.public-theme.dark .modern-form .multi-option input{
  accent-color:#b866ff !important;
}
.public-theme.dark .modern-form .public-footer{
  color:#bcaec9 !important;
}
.public-theme.dark .modern-form .submit{
  color:#ffffff !important;
  background:linear-gradient(135deg,#7020d6 0%,#9e45f4 100%) !important;
  border:1px solid rgba(225,190,255,.45) !important;
  box-shadow:0 12px 30px rgba(103,28,204,.34),inset 0 1px 0 rgba(255,255,255,.18) !important;
}
.public-theme.dark .modern-form .submit:hover{
  color:#ffffff !important;
  background:linear-gradient(135deg,#7b28e7 0%,#ad58ff 100%) !important;
  border-color:rgba(238,211,255,.62) !important;
  filter:none !important;
}
.public-theme.dark .modern-form .submit:active,
.public-theme.dark .modern-form .submit:focus,
.public-theme.dark .modern-form .submit:focus-visible{
  color:#ffffff !important;
  background:linear-gradient(135deg,#7020d6 0%,#9e45f4 100%) !important;
  border-color:rgba(225,190,255,.55) !important;
  filter:none !important;
  outline:none !important;
  box-shadow:0 0 0 3px rgba(193,122,255,.18),0 12px 30px rgba(103,28,204,.34) !important;
}
.public-theme.dark .modern-form .city-warning{
  color:#f4d994 !important;
  background:rgba(217,154,22,.09) !important;
  border-color:rgba(241,197,91,.25) !important;
}
.public-theme.dark .modern-form .logo-box{
  border-color:rgba(207,142,255,.34) !important;
  background:rgba(255,255,255,.045) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 12px 35px rgba(0,0,0,.18) !important;
}
@media(max-width:800px){
  .public-theme.dark .modern-form .form-body{padding:24px 20px 32px !important}
}


/* VIERNES OS 1.24 — plantillas globales adicionales */
.template-choice.selected{outline:2px solid rgba(123,43,198,.16)}
.orange-preview{background:radial-gradient(circle at 20% 85%,rgba(255,89,0,.45),transparent 34%),radial-gradient(circle at 82% 12%,rgba(255,120,20,.28),transparent 35%),linear-gradient(145deg,#050505,#17100d 55%,#2b1207)}
.orange-preview .tp-card{background:rgba(5,5,5,.82);border:1px solid rgba(255,119,38,.42);color:#fff;box-shadow:0 0 24px rgba(255,85,0,.14)}
.orange-preview .tp-card i{background:linear-gradient(90deg,#ff5a00,#ffad33)}
.midnight-preview{background:radial-gradient(circle at 70% 20%,rgba(100,110,130,.18),transparent 38%),linear-gradient(145deg,#050608,#11151b 60%,#08090b)}
.midnight-preview .tp-card{background:rgba(11,13,16,.9);border:1px solid rgba(190,198,210,.22);color:#f6f7f9;box-shadow:0 0 24px rgba(255,255,255,.04)}
.midnight-preview .tp-card i{background:linear-gradient(90deg,#aab3bf,#f1f3f5)}
.public-theme.orange{--public-text:#fff;--public-muted:#b9b1aa;--public-border:rgba(255,112,20,.34)}
.public-theme.orange.status-page,.public-theme.orange .form-shell{background:radial-gradient(circle at 8% 20%,rgba(255,72,0,.16),transparent 25%),radial-gradient(circle at 92% 82%,rgba(255,140,30,.10),transparent 28%),linear-gradient(135deg,#030303,#0b0705 50%,#020202);color:#fff}
.public-theme.orange .public-form,.public-theme.orange .status-card{background:linear-gradient(145deg,rgba(7,7,7,.98),rgba(18,10,6,.98) 60%,rgba(27,12,5,.98));border-color:rgba(255,112,20,.30);box-shadow:0 35px 100px rgba(0,0,0,.62),0 0 55px rgba(255,76,0,.11);color:#fff}
.public-theme.orange .public-head h1,.public-theme.orange .public-form h1,.public-theme.orange .status-card h1{color:#fff!important}
.public-theme.orange .public-head .intro,.public-theme.orange .public-form .intro,.public-theme.orange .status-subtitle,.public-theme.orange .status-campaign{color:#d8d0c9!important}
.public-theme.orange .form-section{border-color:rgba(255,112,20,.18)}
.public-theme.orange .modern-form .section-kicker,.public-theme.orange .status-brand{color:#ff8a36!important}
.public-theme.orange .modern-form .section-kicker span{background:linear-gradient(145deg,rgba(255,94,0,.22),rgba(100,32,5,.22));border-color:rgba(255,125,42,.35);color:#ffad6b!important}
.public-theme.orange .public-form .field label{color:#fff!important}
.public-theme.orange .public-form .field input,.public-theme.orange .public-form .field textarea,.public-theme.orange .public-form .field select{background:rgba(255,255,255,.045)!important;color:#fff!important;border:1px solid rgba(255,124,40,.28)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.03),0 5px 18px rgba(0,0,0,.12)}
.public-theme.orange .public-form .field input:focus,.public-theme.orange .public-form .field textarea:focus,.public-theme.orange .public-form .field select:focus{border-color:#ff7620!important;box-shadow:0 0 0 3px rgba(255,103,20,.13),0 0 25px rgba(255,85,0,.12)!important}
.public-theme.orange .public-form .field input::placeholder,.public-theme.orange .public-form .field textarea::placeholder{color:#a9a09a!important}
.public-theme.orange .public-form .field select option{background:#100805;color:#fff}
.public-theme.orange .instruction-box,.public-theme.orange .modern-form .multi-option,.public-theme.orange .status-message,.public-theme.orange .tracking-copy-card,.public-theme.orange .schedule-block,.public-theme.orange .confirmed-card{background:rgba(255,255,255,.035)!important;border-color:rgba(255,124,40,.20)!important;color:#fff}
.public-theme.orange .modern-form .multi-option:hover,.public-theme.orange .modern-form .multi-option:has(input:checked){background:rgba(255,91,0,.10)!important;border-color:#ff7620!important}
.public-theme.orange .modern-form .multi-option input{accent-color:#ff6a00}
.public-theme.orange .submit,.public-theme.orange .modern-form .submit,.public-theme.orange .status-action{background:linear-gradient(135deg,#ff4d00,#ff9b2f)!important;color:#fff!important;border-color:rgba(255,205,160,.25)!important;box-shadow:0 12px 30px rgba(255,75,0,.24)!important}
.public-theme.orange .submit:hover,.public-theme.orange .status-action:hover{background:linear-gradient(135deg,#ff5d0b,#ffab45)!important}
.public-theme.orange .submit:active,.public-theme.orange .submit:focus,.public-theme.orange .submit:focus-visible{background:linear-gradient(135deg,#ff4d00,#ff9b2f)!important;color:#fff!important;filter:none!important}
.public-theme.orange .status-number{background:linear-gradient(145deg,rgba(255,94,0,.10),rgba(15,8,5,.78));border-color:rgba(255,124,40,.24)}
.public-theme.orange .status-number strong{color:#fff}.public-theme.orange .slot-option{background:rgba(255,255,255,.035);border-color:rgba(255,124,40,.20);color:#fff}.public-theme.orange .slot-option:hover,.public-theme.orange .slot-option:has(input:checked){background:rgba(255,90,0,.11);border-color:#ff7620;box-shadow:0 0 0 2px rgba(255,118,32,.12)}
.public-theme.midnight{--public-text:#f3f5f7;--public-muted:#aeb4bc;--public-border:rgba(210,218,228,.20)}
.public-theme.midnight.status-page,.public-theme.midnight .form-shell{background:radial-gradient(circle at 10% 12%,rgba(110,125,145,.12),transparent 25%),radial-gradient(circle at 88% 84%,rgba(75,90,110,.10),transparent 28%),linear-gradient(135deg,#030405,#0a0c0f 52%,#020303);color:#f3f5f7}
.public-theme.midnight .public-form,.public-theme.midnight .status-card{background:linear-gradient(145deg,#07090b,#101317 58%,#080a0c);border-color:rgba(210,218,228,.18);box-shadow:0 35px 100px rgba(0,0,0,.72),0 0 50px rgba(180,190,205,.05);color:#f3f5f7}
.public-theme.midnight .public-head h1,.public-theme.midnight .public-form h1,.public-theme.midnight .status-card h1{color:#fff!important}.public-theme.midnight .public-head .intro,.public-theme.midnight .public-form .intro,.public-theme.midnight .status-subtitle,.public-theme.midnight .status-campaign{color:#c2c8cf!important}
.public-theme.midnight .form-section{border-color:rgba(210,218,228,.12)}.public-theme.midnight .modern-form .section-kicker,.public-theme.midnight .status-brand{color:#d7dde4!important}.public-theme.midnight .modern-form .section-kicker span{background:rgba(255,255,255,.06);border-color:rgba(220,226,234,.20);color:#e7ebef!important}
.public-theme.midnight .public-form .field label{color:#f7f8fa!important}.public-theme.midnight .public-form .field input,.public-theme.midnight .public-form .field textarea,.public-theme.midnight .public-form .field select{background:rgba(255,255,255,.035)!important;color:#fff!important;border:1px solid rgba(210,218,228,.18)!important}.public-theme.midnight .public-form .field input:focus,.public-theme.midnight .public-form .field textarea:focus,.public-theme.midnight .public-form .field select:focus{border-color:#d7dde4!important;box-shadow:0 0 0 3px rgba(220,228,238,.10),0 0 22px rgba(200,210,220,.06)!important}.public-theme.midnight .public-form .field input::placeholder,.public-theme.midnight .public-form .field textarea::placeholder{color:#8f969f!important}.public-theme.midnight .public-form .field select option{background:#0b0d10;color:#fff}.public-theme.midnight .instruction-box,.public-theme.midnight .modern-form .multi-option,.public-theme.midnight .status-message,.public-theme.midnight .tracking-copy-card,.public-theme.midnight .schedule-block,.public-theme.midnight .confirmed-card{background:rgba(255,255,255,.03)!important;border-color:rgba(210,218,228,.14)!important;color:#f3f5f7}.public-theme.midnight .modern-form .multi-option:hover,.public-theme.midnight .modern-form .multi-option:has(input:checked){background:rgba(255,255,255,.06)!important;border-color:#cfd6de!important}.public-theme.midnight .modern-form .multi-option input{accent-color:#dce2e8}.public-theme.midnight .submit,.public-theme.midnight .modern-form .submit,.public-theme.midnight .status-action{background:linear-gradient(135deg,#161a20,#3a414b)!important;color:#fff!important;border-color:rgba(255,255,255,.22)!important;box-shadow:0 12px 28px rgba(0,0,0,.30)!important}.public-theme.midnight .submit:hover,.public-theme.midnight .status-action:hover{background:linear-gradient(135deg,#20262d,#4a535e)!important}.public-theme.midnight .submit:active,.public-theme.midnight .submit:focus,.public-theme.midnight .submit:focus-visible{background:linear-gradient(135deg,#161a20,#3a414b)!important;color:#fff!important;filter:none!important}.public-theme.midnight .status-number{background:linear-gradient(145deg,rgba(255,255,255,.05),rgba(8,10,12,.85));border-color:rgba(210,218,228,.16)}.public-theme.midnight .status-number strong{color:#fff}.public-theme.midnight .slot-option{background:rgba(255,255,255,.03);border-color:rgba(210,218,228,.15);color:#fff}.public-theme.midnight .slot-option:hover,.public-theme.midnight .slot-option:has(input:checked){background:rgba(255,255,255,.06);border-color:#d6dde5;box-shadow:0 0 0 2px rgba(220,228,238,.08)}
.cleanup-form{display:flex;gap:14px;align-items:end;max-width:620px}.cleanup-form .field{flex:1}.danger{color:#b4233f!important}.btn.danger{border-color:rgba(180,35,63,.22)!important}
@media(max-width:900px){.template-form{grid-template-columns:1fr 1fr}.cleanup-form{flex-direction:column;align-items:stretch}.campaign{flex-direction:column;gap:16px}.actions{flex-wrap:wrap}}
@media(max-width:620px){.template-form{grid-template-columns:1fr}.template-choice{grid-template-columns:1fr}.cleanup-form{max-width:none}}

/* =========================================================
   VIERNES OS 1.25 — Sistema cromático por plantilla
   Objetivo: ningún texto, borde, campo, estado o botón debe
   perder contraste al cambiar de plantilla.
   ========================================================= */
.public-theme.light{
  --t-primary:#7b2bc6;--t-primary-2:#a45bea;--t-secondary:#eee5f6;
  --t-text:#211b27;--t-muted:#74687d;--t-surface:#ffffff;--t-surface-2:#faf7fc;
  --t-field:#ffffff;--t-field-text:#211b27;--t-field-placeholder:#9a8fa2;
  --t-border:#ded4e6;--t-border-strong:#c8afd8;--t-section:#e8deed;
}
.public-theme.dark{
  --t-primary:#9b4dff;--t-primary-2:#c27aff;--t-secondary:#29113e;
  --t-text:#ffffff;--t-muted:#c7b9d4;--t-surface:#0d0913;--t-surface-2:#171021;
  --t-field:#17121f;--t-field-text:#ffffff;--t-field-placeholder:#c8b8d8;
  --t-border:rgba(207,142,255,.48);--t-border-strong:rgba(220,165,255,.72);--t-section:rgba(207,142,255,.28);
}
.public-theme.orange{
  --t-primary:#ff6a00;--t-primary-2:#ffad45;--t-secondary:#2a1107;
  --t-text:#ffffff;--t-muted:#d2c5bd;--t-surface:#090706;--t-surface-2:#160c08;
  --t-field:#120d0a;--t-field-text:#ffffff;--t-field-placeholder:#b9aaa0;
  --t-border:rgba(255,124,40,.48);--t-border-strong:rgba(255,161,92,.78);--t-section:rgba(255,124,40,.28);
}
.public-theme.midnight{
  --t-primary:#d7dde4;--t-primary-2:#f1f3f5;--t-secondary:#171b21;
  --t-text:#ffffff;--t-muted:#c2c8cf;--t-surface:#080a0d;--t-surface-2:#11151a;
  --t-field:#0d1014;--t-field-text:#ffffff;--t-field-placeholder:#9da5ae;
  --t-border:rgba(210,218,228,.40);--t-border-strong:rgba(230,235,240,.70);--t-section:rgba(210,218,228,.23);
}

/* Aplicación común de la paleta a formulario, aceptación y seguimiento */
.public-theme .modern-form,
.public-theme .status-card{color:var(--t-text)}
.public-theme .modern-form .form-body{color:var(--t-text)}
.public-theme .modern-form .form-section{border-color:var(--t-section)!important}
.public-theme .modern-form .form-section:before{background:linear-gradient(90deg,transparent,var(--t-section),transparent)!important}
.public-theme .modern-form .section-kicker{color:var(--t-text)!important}
.public-theme .modern-form .section-kicker span{background:var(--t-secondary)!important;border:1px solid var(--t-border)!important;color:var(--t-primary-2)!important}
.public-theme .modern-form .field label{color:var(--t-text)!important}
.public-theme .modern-form .field input,
.public-theme .modern-form .field textarea,
.public-theme .modern-form .field select{
  background:var(--t-field)!important;color:var(--t-field-text)!important;
  border:1px solid var(--t-border)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 5px 18px rgba(0,0,0,.10)!important;
}
.public-theme .modern-form .field input::placeholder,
.public-theme .modern-form .field textarea::placeholder{color:var(--t-field-placeholder)!important;opacity:1!important}
.public-theme .modern-form .field input:hover,
.public-theme .modern-form .field textarea:hover,
.public-theme .modern-form .field select:hover{border-color:var(--t-border-strong)!important}
.public-theme .modern-form .field input:focus,
.public-theme .modern-form .field textarea:focus,
.public-theme .modern-form .field select:focus{border-color:var(--t-primary-2)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--t-primary) 20%,transparent),0 0 24px color-mix(in srgb,var(--t-primary) 12%,transparent)!important}
.public-theme .modern-form .multi-option{background:var(--t-surface-2)!important;border-color:var(--t-border)!important;color:var(--t-text)!important}
.public-theme .modern-form .multi-option:hover,
.public-theme .modern-form .multi-option:has(input:checked){border-color:var(--t-border-strong)!important}
.public-theme .modern-form .helper,.public-theme .public-footer{color:var(--t-muted)!important}
.public-theme .modern-form .submit,.public-theme .status-action,.public-theme .copy-tracking-btn{
  background:linear-gradient(135deg,var(--t-primary),var(--t-primary-2))!important;color:#fff!important;border-color:var(--t-border-strong)!important;
}
.public-theme .modern-form .submit:hover,.public-theme .status-action:hover,.public-theme .copy-tracking-btn:hover{filter:brightness(1.08)!important}
.public-theme .modern-form .submit:active,.public-theme .modern-form .submit:focus,.public-theme .modern-form .submit:focus-visible,
.public-theme .status-action:active,.public-theme .status-action:focus,.public-theme .status-action:focus-visible{
  background:linear-gradient(135deg,var(--t-primary),var(--t-primary-2))!important;color:#fff!important;filter:none!important;outline:none!important;
}
.public-theme .status-card h1,.public-theme .status-card .status-subtitle,.public-theme .status-card .status-campaign{color:var(--t-text)!important}
.public-theme .status-message,.public-theme .tracking-copy-card,.public-theme .schedule-block,.public-theme .confirmed-card{
  background:var(--t-surface-2)!important;border-color:var(--t-border)!important;color:var(--t-text)!important
}
.public-theme .slot-option{background:var(--t-field)!important;border-color:var(--t-border)!important;color:var(--t-text)!important}
.public-theme .slot-option span{background:var(--t-field)!important;border-color:var(--t-border)!important;color:var(--t-text)!important}
.public-theme .slot-option b{color:var(--t-text)!important}.public-theme .slot-option strong{color:var(--t-primary-2)!important}
.public-theme .slot-option:hover span,.public-theme .slot-option input:checked+span{border-color:var(--t-border-strong)!important;background:var(--t-surface-2)!important}
.public-theme .approval-line{color:#64ddb2!important}

/* Master: pestañas ordenadas y desplazables sin romper el layout */
.master-tabs{max-width:100%;overflow-x:auto;overflow-y:hidden;flex-wrap:nowrap;scrollbar-width:thin;white-space:nowrap}
.master-tabs a{flex:0 0 auto}

/* Selector de plantillas: selección inequívoca + paleta visible */
.template-choice.selected{outline:2px solid var(--purple2);outline-offset:0}
.template-choice.selected .template-copy em{font-weight:950}
.template-palette{display:flex!important;gap:5px;margin-top:8px;align-items:center}
.template-palette i{display:block!important;width:14px!important;height:14px!important;border-radius:50%!important;background:var(--sw)!important;border:1px solid rgba(127,112,140,.28)!important;box-shadow:0 1px 4px rgba(0,0,0,.10)!important}
.template-choice.selected .template-palette i{box-shadow:0 0 0 1px rgba(123,43,198,.18),0 2px 7px rgba(0,0,0,.12)!important}

@supports not (color: color-mix(in srgb, white 20%, transparent)){
.public-theme .modern-form .field input:focus,.public-theme .modern-form .field textarea:focus,.public-theme .modern-form .field select:focus{box-shadow:0 0 0 3px rgba(123,43,198,.18),0 0 24px rgba(123,43,198,.10)!important}
}

/* =========================================================
   VIERNES OS 1.26 — PALETAS AISLADAS POR PLANTILLA
   Cada plantilla controla TODO el formulario público:
   fondo, panel, encabezado, textos, campos, bordes, botones,
   secciones y estados. No se heredan colores de otra plantilla.
   ========================================================= */

/* LIGHT — blanco / morado */
.public-theme.light .modern-form{
  background:#ffffff!important;color:#211b27!important;border-color:#e3d9e9!important;
  box-shadow:0 25px 70px rgba(48,18,70,.13)!important;
}
.public-theme.light .modern-form .hero-head{
  background:linear-gradient(135deg,#321049 0%,#64168e 58%,#8228c1 100%)!important;
}
.public-theme.light .modern-form .form-body{background:#fff!important;color:#211b27!important}
.public-theme.light .modern-form .section-kicker{color:#392b43!important}
.public-theme.light .modern-form .section-kicker span{background:#eee4f6!important;color:#6516b5!important;border-color:#dfd0e9!important}
.public-theme.light .modern-form .field label{color:#302733!important}
.public-theme.light .modern-form .field input,
.public-theme.light .modern-form .field textarea,
.public-theme.light .modern-form .field select{background:#fff!important;color:#27202b!important;border-color:#ddd5e3!important}
.public-theme.light .modern-form .field input::placeholder,
.public-theme.light .modern-form .field textarea::placeholder{color:#aaa1ad!important}
.public-theme.light .modern-form .multi-option{background:#faf8fc!important;color:#44384a!important;border-color:#e5ddea!important}
.public-theme.light .modern-form .helper,.public-theme.light .modern-form .public-footer{color:#8a7e90!important}
.public-theme.light .modern-form .submit{background:linear-gradient(135deg,#6516b5,#8b35d5)!important;color:#fff!important}

/* DARK FUTURISTA — negro / morado eléctrico */
.public-theme.dark .modern-form{
  background:#09060d!important;color:#f8f3ff!important;border-color:rgba(177,91,255,.32)!important;
  box-shadow:0 30px 100px rgba(0,0,0,.68),0 0 70px rgba(125,37,221,.13)!important;
}
.public-theme.dark .modern-form .hero-head{
  background:linear-gradient(135deg,#13091e 0%,#351052 52%,#711db0 100%)!important;
  border-bottom:1px solid rgba(196,121,255,.25)!important;
}
.public-theme.dark .modern-form .form-body{
  background:linear-gradient(180deg,#09070d 0%,#0e0915 48%,#130a1c 100%)!important;color:#fff!important;
}
.public-theme.dark .modern-form .form-section:before{background:linear-gradient(90deg,transparent,rgba(181,101,255,.42),transparent)!important}
.public-theme.dark .modern-form .section-kicker{color:#fff!important}
.public-theme.dark .modern-form .section-kicker span{background:#241034!important;color:#d7a9ff!important;border-color:rgba(191,112,255,.55)!important}
.public-theme.dark .modern-form .field label{color:#fff!important}
.public-theme.dark .modern-form .field input,
.public-theme.dark .modern-form .field textarea,
.public-theme.dark .modern-form .field select{
  background:#15101c!important;color:#fff!important;border:1px solid rgba(195,121,255,.45)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 6px 20px rgba(0,0,0,.25)!important;
}
.public-theme.dark .modern-form .field input::placeholder,
.public-theme.dark .modern-form .field textarea::placeholder{color:#c6b5d5!important}
.public-theme.dark .modern-form .multi-option{background:#14101b!important;color:#fff!important;border-color:rgba(195,121,255,.35)!important}
.public-theme.dark .modern-form .multi-option:hover,
.public-theme.dark .modern-form .multi-option:has(input:checked){background:#21112f!important;border-color:#bd70ff!important}
.public-theme.dark .modern-form .helper,.public-theme.dark .modern-form .public-footer{color:#bcaacb!important}
.public-theme.dark .modern-form .submit{background:linear-gradient(135deg,#7020d6,#b24cff)!important;color:#fff!important}

/* OBSIDIAN ORANGE — negro / carbón / naranja */
.public-theme.orange .modern-form{
  background:#080605!important;color:#fff!important;border-color:rgba(255,103,25,.35)!important;
  box-shadow:0 30px 100px rgba(0,0,0,.72),0 0 65px rgba(255,76,0,.10)!important;
}
.public-theme.orange .modern-form .hero-head{
  background:linear-gradient(135deg,#120704 0%,#301006 52%,#8b3005 100%)!important;
  border-bottom:1px solid rgba(255,128,54,.30)!important;
}
.public-theme.orange .modern-form .form-body{
  background:linear-gradient(180deg,#080605 0%,#100906 52%,#160b06 100%)!important;color:#fff!important;
}
.public-theme.orange .modern-form .form-section:before{background:linear-gradient(90deg,transparent,rgba(255,103,25,.42),transparent)!important}
.public-theme.orange .modern-form .section-kicker{color:#fff!important}
.public-theme.orange .modern-form .section-kicker span{background:#291006!important;color:#ffad6b!important;border-color:rgba(255,128,54,.55)!important}
.public-theme.orange .modern-form .field label{color:#fff!important}
.public-theme.orange .modern-form .field input,
.public-theme.orange .modern-form .field textarea,
.public-theme.orange .modern-form .field select{
  background:#130c08!important;color:#fff!important;border:1px solid rgba(255,124,40,.48)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03),0 6px 20px rgba(0,0,0,.28)!important;
}
.public-theme.orange .modern-form .field input::placeholder,
.public-theme.orange .modern-form .field textarea::placeholder{color:#bca99e!important}
.public-theme.orange .modern-form .multi-option{background:#120b08!important;color:#fff!important;border-color:rgba(255,124,40,.38)!important}
.public-theme.orange .modern-form .multi-option:hover,
.public-theme.orange .modern-form .multi-option:has(input:checked){background:#241006!important;border-color:#ff7620!important}
.public-theme.orange .modern-form .helper,.public-theme.orange .modern-form .public-footer{color:#bca99e!important}
.public-theme.orange .modern-form .submit{background:linear-gradient(135deg,#e94600,#ff8a24)!important;color:#fff!important}

/* MIDNIGHT — negro / grafito / acero */
.public-theme.midnight .modern-form{
  background:#050608!important;color:#f6f8fa!important;border-color:rgba(188,199,211,.28)!important;
  box-shadow:0 30px 100px rgba(0,0,0,.80),0 0 60px rgba(160,175,190,.06)!important;
}
.public-theme.midnight .modern-form .hero-head{
  background:linear-gradient(135deg,#050607 0%,#15191e 55%,#292f37 100%)!important;
  border-bottom:1px solid rgba(220,228,236,.20)!important;
}
.public-theme.midnight .modern-form .form-body{
  background:linear-gradient(180deg,#050608 0%,#0a0d10 50%,#0e1115 100%)!important;color:#f7f9fb!important;
}
.public-theme.midnight .modern-form .form-section:before{background:linear-gradient(90deg,transparent,rgba(204,214,224,.30),transparent)!important}
.public-theme.midnight .modern-form .section-kicker{color:#fff!important}
.public-theme.midnight .modern-form .section-kicker span{background:#15191e!important;color:#e0e6ec!important;border-color:rgba(210,220,230,.42)!important}
.public-theme.midnight .modern-form .field label{color:#f7f9fb!important}
.public-theme.midnight .modern-form .field input,
.public-theme.midnight .modern-form .field textarea,
.public-theme.midnight .modern-form .field select{
  background:#0d1014!important;color:#fff!important;border:1px solid rgba(205,216,226,.40)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 6px 20px rgba(0,0,0,.34)!important;
}
.public-theme.midnight .modern-form .field input::placeholder,
.public-theme.midnight .modern-form .field textarea::placeholder{color:#929ba5!important}
.public-theme.midnight .modern-form .multi-option{background:#0d1014!important;color:#f5f7f9!important;border-color:rgba(205,216,226,.34)!important}
.public-theme.midnight .modern-form .multi-option:hover,
.public-theme.midnight .modern-form .multi-option:has(input:checked){background:#171c22!important;border-color:#e0e6ec!important}
.public-theme.midnight .modern-form .helper,.public-theme.midnight .modern-form .public-footer{color:#9fa8b2!important}
.public-theme.midnight .modern-form .submit{background:linear-gradient(135deg,#20262d,#59636e)!important;color:#fff!important}

/* Evita que estilos globales vuelvan a pintar el cuerpo del formulario */
.public-theme.dark .modern-form .form-body,
.public-theme.orange .modern-form .form-body,
.public-theme.midnight .modern-form .form-body{isolation:isolate}

/* Contraste de selección en todas las plantillas */
.public-theme.dark .modern-form .field input:focus,
.public-theme.dark .modern-form .field textarea:focus,
.public-theme.dark .modern-form .field select:focus{border-color:#c17aff!important}
.public-theme.orange .modern-form .field input:focus,
.public-theme.orange .modern-form .field textarea:focus,
.public-theme.orange .modern-form .field select:focus{border-color:#ff7620!important}
.public-theme.midnight .modern-form .field input:focus,
.public-theme.midnight .modern-form .field textarea:focus,
.public-theme.midnight .modern-form .field select:focus{border-color:#e0e6ec!important}

/* =========================================================
   VIERNES OS 1.27 — CONTRASTE COMPLETO EN ACEPTACIÓN / SEGUIMIENTO
   Los estilos genéricos de .schedule-block y .status-card no deben
   imponer colores claros sobre las plantillas oscuras.
   ========================================================= */
.public-theme .status-card .status-brand,
.public-theme .status-card h1,
.public-theme .status-card .status-subtitle,
.public-theme .status-card .status-campaign,
.public-theme .status-card .status-footer,
.public-theme .status-card .schedule-block h2,
.public-theme .status-card .schedule-block > p,
.public-theme .status-card .schedule-block .block-kicker,
.public-theme .status-card .confirmed-card h2,
.public-theme .status-card .confirmed-card p,
.public-theme .status-card .confirmed-card small,
.public-theme .status-card .tracking-copy-title,
.public-theme .status-card .tracking-copy-card p,
.public-theme .status-card .empty-slot {
  color:var(--t-text)!important;
}

.public-theme .status-card .status-subtitle,
.public-theme .status-card .status-campaign,
.public-theme .status-card .schedule-block > p,
.public-theme .status-card .confirmed-card p,
.public-theme .status-card .tracking-copy-card p {
  color:var(--t-muted)!important;
}

.public-theme .status-card .status-brand,
.public-theme .status-card .block-kicker {
  color:var(--t-primary-2)!important;
}

.public-theme .status-card .schedule-block,
.public-theme .status-card .confirmed-card,
.public-theme .status-card .status-message,
.public-theme .status-card .tracking-copy-card {
  background:var(--t-surface-2)!important;
  border-color:var(--t-border)!important;
  color:var(--t-text)!important;
}

.public-theme .status-card .slot-option,
.public-theme .status-card .slot-option span {
  background:var(--t-field)!important;
  color:var(--t-field-text)!important;
  border-color:var(--t-border)!important;
}
.public-theme .status-card .slot-option b { color:var(--t-field-text)!important; }
.public-theme .status-card .slot-option strong { color:var(--t-primary-2)!important; }
.public-theme .status-card .slot-option:hover span,
.public-theme .status-card .slot-option input:checked + span {
  background:var(--t-surface-2)!important;
  border-color:var(--t-border-strong)!important;
}

.public-theme .status-card .status-action {
  background:linear-gradient(135deg,var(--t-primary),var(--t-primary-2))!important;
  color:#fff!important;
  border-color:var(--t-border-strong)!important;
}
.public-theme .status-card .status-action:hover,
.public-theme .status-card .status-action:active,
.public-theme .status-card .status-action:focus,
.public-theme .status-card .status-action:focus-visible {
  background:linear-gradient(135deg,var(--t-primary),var(--t-primary-2))!important;
  color:#fff!important;
  filter:none!important;
  outline:none!important;
}

/* DARK FUTURISTA */
.public-theme.dark .status-card .status-brand,
.public-theme.dark .status-card .block-kicker { color:#c27aff!important; }
.public-theme.dark .status-card .schedule-block h2 { color:#ffffff!important; }
.public-theme.dark .status-card .schedule-block > p,
.public-theme.dark .status-card .status-subtitle,
.public-theme.dark .status-card .status-footer { color:#c7b9d4!important; }
.public-theme.dark .status-card .empty-slot { color:#c7b9d4!important;background:#15101c!important;border-color:rgba(194,122,255,.30)!important; }
.public-theme.dark .status-card .confirmed-card h2 { color:#ffffff!important; }
.public-theme.dark .status-card .confirmed-card p { color:#c7b9d4!important; }
.public-theme.dark .status-card .confirmed-card small { color:#c27aff!important; }
.public-theme.dark .status-card .slot-option,
.public-theme.dark .status-card .slot-option span { background:#15101c!important;color:#fff!important;border-color:rgba(194,122,255,.42)!important; }
.public-theme.dark .status-card .slot-option b { color:#fff!important; }
.public-theme.dark .status-card .slot-option strong { color:#c27aff!important; }
.public-theme.dark .status-card .slot-option:hover span,
.public-theme.dark .status-card .slot-option input:checked + span { background:#21112f!important;border-color:#c27aff!important; }

/* OBSIDIAN ORANGE */
.public-theme.orange .status-card .status-brand,
.public-theme.orange .status-card .block-kicker { color:#ff8a36!important; }
.public-theme.orange .status-card .schedule-block h2 { color:#ffffff!important; }
.public-theme.orange .status-card .schedule-block > p,
.public-theme.orange .status-card .status-subtitle,
.public-theme.orange .status-card .status-footer { color:#d8d0c9!important; }
.public-theme.orange .status-card .empty-slot { color:#d8d0c9!important;background:#130c08!important;border-color:rgba(255,124,40,.30)!important; }
.public-theme.orange .status-card .confirmed-card h2 { color:#ffffff!important; }
.public-theme.orange .status-card .confirmed-card p { color:#d8d0c9!important; }
.public-theme.orange .status-card .confirmed-card small { color:#ff8a36!important; }
.public-theme.orange .status-card .slot-option,
.public-theme.orange .status-card .slot-option span { background:#130c08!important;color:#fff!important;border-color:rgba(255,124,40,.42)!important; }
.public-theme.orange .status-card .slot-option b { color:#fff!important; }
.public-theme.orange .status-card .slot-option strong { color:#ff9b55!important; }
.public-theme.orange .status-card .slot-option:hover span,
.public-theme.orange .status-card .slot-option input:checked + span { background:#241006!important;border-color:#ff7620!important; }

/* MIDNIGHT */
.public-theme.midnight .status-card .status-brand,
.public-theme.midnight .status-card .block-kicker { color:#d7dde4!important; }
.public-theme.midnight .status-card .schedule-block h2 { color:#ffffff!important; }
.public-theme.midnight .status-card .schedule-block > p,
.public-theme.midnight .status-card .status-subtitle,
.public-theme.midnight .status-card .status-footer { color:#b8c0c9!important; }
.public-theme.midnight .status-card .empty-slot { color:#b8c0c9!important;background:#0d1014!important;border-color:rgba(210,218,228,.28)!important; }
.public-theme.midnight .status-card .confirmed-card h2 { color:#ffffff!important; }
.public-theme.midnight .status-card .confirmed-card p { color:#b8c0c9!important; }
.public-theme.midnight .status-card .confirmed-card small { color:#d7dde4!important; }
.public-theme.midnight .status-card .slot-option,
.public-theme.midnight .status-card .slot-option span { background:#0d1014!important;color:#fff!important;border-color:rgba(210,218,228,.38)!important; }
.public-theme.midnight .status-card .slot-option b { color:#fff!important; }
.public-theme.midnight .status-card .slot-option strong { color:#e0e6ec!important; }
.public-theme.midnight .status-card .slot-option:hover span,
.public-theme.midnight .status-card .slot-option input:checked + span { background:#171c22!important;border-color:#e0e6ec!important; }

/* La línea de aprobación conserva el significado semántico de éxito,
   pero se integra con cada fondo mediante una superficie translúcida. */
.public-theme .status-card .approval-line {
  background:color-mix(in srgb,#16a979 12%,var(--t-surface-2))!important;
  border-color:color-mix(in srgb,#16a979 22%,var(--t-border))!important;
  color:#54d7aa!important;
}

/* =========================================================
   VIERNES OS 1.28 — ACEPTACIÓN: BOTONES Y TEXTO SIEMPRE VISIBLES
   Corrección final para la pantalla accept.php. Cada plantilla usa
   un botón propio de alto contraste; nunca se hereda el gris del
   navegador ni un color de texto que desaparezca sobre el fondo.
   ========================================================= */
.public-theme .status-card .status-action,
.public-theme .status-card .status-action:link,
.public-theme .status-card .status-action:visited {
  min-height:48px!important;
  border-radius:12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  font-weight:900!important;
  font-size:13px!important;
  line-height:1!important;
  text-shadow:none!important;
  opacity:1!important;
  -webkit-text-fill-color:#fff!important;
}
.public-theme .status-card .status-action:disabled {
  opacity:1!important;
  cursor:not-allowed!important;
  -webkit-text-fill-color:var(--t-muted)!important;
  color:var(--t-muted)!important;
}

/* Dark Futurista */
.public-theme.dark .status-card .status-action,
.public-theme.dark .status-card .status-action:focus,
.public-theme.dark .status-card .status-action:active {
  background:linear-gradient(135deg,#6818c5 0%,#a14cff 100%)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  border:1px solid rgba(221,184,255,.42)!important;
  box-shadow:0 12px 30px rgba(109,27,210,.30)!important;
}
.public-theme.dark .status-card .status-action:disabled {
  background:linear-gradient(135deg,#272331,#393343)!important;
  color:#ddd5e5!important;
  -webkit-text-fill-color:#ddd5e5!important;
  border-color:rgba(220,210,230,.22)!important;
  box-shadow:none!important;
}

/* Obsidian Orange */
.public-theme.orange .status-card .status-action,
.public-theme.orange .status-card .status-action:focus,
.public-theme.orange .status-card .status-action:active {
  background:linear-gradient(135deg,#ff4d00 0%,#ff9b2f 100%)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  border:1px solid rgba(255,214,177,.48)!important;
  box-shadow:0 12px 30px rgba(255,75,0,.24)!important;
}
.public-theme.orange .status-card .status-action:disabled {
  background:linear-gradient(135deg,#2b1b14,#40332c)!important;
  color:#ded5cf!important;
  -webkit-text-fill-color:#ded5cf!important;
  border-color:rgba(255,190,150,.22)!important;
  box-shadow:none!important;
}

/* Midnight — negro/grafito, no gris claro con texto blanco */
.public-theme.midnight .status-card .status-action,
.public-theme.midnight .status-card .status-action:focus,
.public-theme.midnight .status-card .status-action:active {
  background:linear-gradient(135deg,#080a0d 0%,#242a31 100%)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  border:1px solid rgba(225,232,239,.48)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.08)!important;
}
.public-theme.midnight .status-card .status-action:hover {
  background:linear-gradient(135deg,#11151a 0%,#343c45 100%)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
.public-theme.midnight .status-card .status-action:disabled {
  background:linear-gradient(135deg,#171b20,#252b32)!important;
  color:#bfc6ce!important;
  -webkit-text-fill-color:#bfc6ce!important;
  border-color:rgba(210,218,228,.25)!important;
  box-shadow:none!important;
}

/* Light */
.public-theme.light .status-card .status-action,
.public-theme.light .status-card .status-action:focus,
.public-theme.light .status-card .status-action:active {
  background:linear-gradient(135deg,#6f20b9 0%,#a45bea 100%)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  border:1px solid rgba(123,43,198,.30)!important;
  box-shadow:0 12px 28px rgba(101,22,181,.18)!important;
}
.public-theme.light .status-card .status-action:disabled {
  background:linear-gradient(135deg,#ded8e4,#cfc8d7)!important;
  color:#554a5f!important;
  -webkit-text-fill-color:#554a5f!important;
  border-color:#c3b9ca!important;
  box-shadow:none!important;
}

/* Asegura contraste de los elementos internos del bloque de agenda */
.public-theme .status-card .schedule-block .block-kicker,
.public-theme .status-card .schedule-block h2,
.public-theme .status-card .schedule-block > p,
.public-theme .status-card .slot-option b,
.public-theme .status-card .slot-option strong {
  opacity:1!important;
  text-shadow:none!important;
}

/* VIERNES OS 1.29 — Logo monocromático por plantilla
   El archivo subido es único y se adapta automáticamente a la identidad visual:
   Light = negro | Dark / Obsidian Orange / Midnight = blanco.
   Se aplica a todas las páginas públicas que utilizan la plantilla. */
.public-theme.light .public-logo,
.public-theme.light .status-logo .site-logo,
.public-theme.light .accept-logo .site-logo{
  filter: brightness(0) saturate(100%) !important;
}

.public-theme.dark .public-logo,
.public-theme.dark .status-logo .site-logo,
.public-theme.dark .accept-logo .site-logo,
.public-theme.orange .public-logo,
.public-theme.orange .status-logo .site-logo,
.public-theme.orange .accept-logo .site-logo,
.public-theme.midnight .public-logo,
.public-theme.midnight .status-logo .site-logo,
.public-theme.midnight .accept-logo .site-logo{
  filter: brightness(0) invert(1) !important;
}

/* Refuerzo para logos dentro de encabezados públicos y tarjetas de estado. */
.public-theme.light .logo-box .public-logo,
.public-theme.light .status-card .site-logo,
.public-theme.dark .logo-box .public-logo,
.public-theme.dark .status-card .site-logo,
.public-theme.orange .logo-box .public-logo,
.public-theme.orange .status-card .site-logo,
.public-theme.midnight .logo-box .public-logo,
.public-theme.midnight .status-card .site-logo{
  opacity: 1 !important;
}

/* El contenedor acompaña el contraste de cada identidad. */
.public-theme.light .logo-box{
  background:rgba(0,0,0,.025) !important;
  border-color:rgba(20,15,25,.12) !important;
}
.public-theme.dark .logo-box{
  background:rgba(255,255,255,.055) !important;
  border-color:rgba(190,112,255,.28) !important;
}
.public-theme.orange .logo-box{
  background:rgba(255,255,255,.035) !important;
  border-color:rgba(255,124,40,.24) !important;
}
.public-theme.midnight .logo-box{
  background:rgba(255,255,255,.035) !important;
  border-color:rgba(210,218,228,.22) !important;
}

/* El logo de respaldo V también conserva contraste cuando no hay archivo cargado. */
.public-theme.light .fallback-logo{
  background:#17131a !important;
  color:#fff !important;
}
.public-theme.dark .fallback-logo,
.public-theme.orange .fallback-logo,
.public-theme.midnight .fallback-logo{
  background:linear-gradient(135deg,#7b2bc6,#4d137f) !important;
  color:#fff !important;
}

/* VIERNES 1.30 · vencimiento individual de disponibilidad */
.availability-add-form{align-items:end;}
.auto-expire-card{border:1px solid rgba(124,58,237,.18);}
.auto-expire-form{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding-top:4px}
.auto-expire-form small{display:block;color:#7a7185;margin-top:3px}
.slot-expire-form{display:flex;align-items:center;gap:6px}
.slot-expire-form select{min-width:126px;height:38px;border:1px solid #ddd6e8;border-radius:10px;background:#fff;color:#21182b;padding:0 9px;font-weight:600}
.slot-expiry{display:block;margin-top:4px;font-size:11px;color:#8a8092}
.public-theme.dark .slot-expiry,.public-theme.orange .slot-expiry,.public-theme.midnight .slot-expiry{color:#aaa!important}

/* VIERNES OS 1.31 — confirmación de copia y seguimiento centrado */
.elegant-tracking .tracking-copy-main{display:block;text-align:center}
.elegant-tracking .tracking-copy-title{font-size:16px}
.elegant-tracking .tracking-copy-main p{margin-top:5px}
.elegant-tracking .tracking-copy-actions-stacked{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:16px}
.elegant-tracking .copy-tracking-btn,.elegant-tracking .open-tracking-btn{width:min(220px,100%)}
.tracking-copy-icon{display:none!important}
.copy-tracking-btn.copied{background:linear-gradient(135deg,#18a878,#0d7957)!important;box-shadow:0 0 0 3px rgba(34,197,94,.12),0 9px 22px rgba(16,120,85,.25)!important;transform:scale(1.02)}
.tracking-copied{margin-top:9px;text-align:center}
.public-theme.dark .elegant-tracking .copy-tracking-btn,.public-theme.orange .elegant-tracking .copy-tracking-btn,.public-theme.midnight .elegant-tracking .copy-tracking-btn{color:#fff!important}
.public-theme.dark .elegant-tracking .open-tracking-btn{background:rgba(255,255,255,.05);border-color:rgba(190,112,255,.30);color:#fff!important}
.public-theme.orange .elegant-tracking .open-tracking-btn{background:rgba(255,255,255,.04);border-color:rgba(255,124,40,.28);color:#fff!important}
.public-theme.midnight .elegant-tracking .open-tracking-btn{background:rgba(255,255,255,.04);border-color:rgba(210,218,228,.24);color:#fff!important}

/* 1.31 — detalle de solicitud: vista oscura premium */
.admin-dark-detail{background:#080a0f!important;color:#f5f4f8!important}
.admin-dark-detail .side{background:linear-gradient(180deg,#10111a 0%,#080912 100%);border-right:1px solid rgba(177,106,255,.13);box-shadow:none}
.admin-dark-detail .topbar{background:rgba(8,10,15,.96);border-bottom:1px solid rgba(177,106,255,.10);color:#fff}
.admin-dark-detail .search{background:#11131b;color:#aaa3b5;border-color:#262331}
.admin-dark-detail .content{max-width:1500px}
.admin-dark-detail .title h1,.admin-dark-detail h2,.admin-dark-detail h3,.admin-dark-detail label{color:#f8f7fb}
.admin-dark-detail .title p,.admin-dark-detail .muted,.admin-dark-detail .small{color:#aaa4b4}
.admin-dark-detail .card{background:linear-gradient(145deg,#10121a,#0d0f16);border-color:#252733;box-shadow:0 16px 40px rgba(0,0,0,.22)}
.admin-dark-detail .notice{background:rgba(255,255,255,.035);border-color:#252733;color:#f4f2f7}
.admin-dark-detail .field input,.admin-dark-detail .field textarea,.admin-dark-detail .field select,.admin-dark-detail .copy input{background:#0b0d13;color:#f6f4fa;border-color:#2a2d39}
.admin-dark-detail .field input::placeholder,.admin-dark-detail .field textarea::placeholder{color:#777382}
.admin-dark-detail .field input:focus,.admin-dark-detail .field textarea:focus,.admin-dark-detail .field select:focus{border-color:#9b55ef;box-shadow:0 0 0 3px rgba(155,85,239,.12)}
.admin-dark-detail .btn.secondary{background:#171922;color:#ded9e6;border:1px solid #2b2e3a}
.admin-dark-detail .btn.secondary:hover{background:#1e202a}
.admin-dark-detail .btn.danger{background:rgba(180,35,66,.12);color:#ff718e;border-color:rgba(255,82,119,.18)}
.admin-dark-detail .pill.yellow{background:rgba(245,180,45,.12);color:#ffd15b}.admin-dark-detail .pill.green{background:rgba(32,190,133,.12);color:#5ce4b1}.admin-dark-detail .pill.red{background:rgba(232,72,101,.12);color:#ff7d98}.admin-dark-detail .pill.purple{background:rgba(155,85,239,.14);color:#c796ff}
.admin-dark-detail .admin-tracking-card .copy{display:flex;gap:9px;align-items:center}.admin-dark-detail .admin-tracking-card .copy input{flex:1;min-width:0;padding:11px 12px;border-radius:9px;font:inherit;font-size:12px}
.admin-dark-detail .admin-copy-btn{border:1px solid #8d4fe0!important;color:#c999ff!important;background:rgba(141,79,224,.08)!important;min-width:92px}
.admin-dark-detail .admin-copy-btn:hover{background:rgba(141,79,224,.16)!important;transform:translateY(-1px)}
.admin-dark-detail .admin-copy-btn.copied{background:linear-gradient(135deg,#148b68,#0d6d52)!important;border-color:#28c796!important;color:#fff!important;box-shadow:0 0 0 3px rgba(40,199,150,.10)}
.admin-copy-feedback{display:none}.admin-copy-feedback.show{display:block;margin-top:10px;padding:11px 13px;border-radius:10px;font-size:12px;font-weight:800}.admin-copy-feedback.success{background:rgba(25,166,113,.10);border:1px solid rgba(35,205,151,.35);color:#5ce0b2}.admin-copy-feedback.error{background:rgba(224,58,85,.10);border:1px solid rgba(224,58,85,.28);color:#ff8297}
.admin-dark-detail .reschedule-btn{color:#d09aff!important;border-color:rgba(160,83,239,.35)!important;background:rgba(133,51,211,.09)!important}
.admin-dark-detail .reschedule-btn:hover{background:rgba(133,51,211,.17)!important}
.admin-dark-detail .side .nav a{color:#d7d1df}.admin-dark-detail .side .nav a:hover,.admin-dark-detail .side .nav a.active{background:rgba(145,74,224,.15);color:#fff}.admin-dark-detail .nav-label{color:#a991bd}.admin-dark-detail .logo-word{color:#fff}.admin-dark-detail .side-footer{color:#aaa3b3}
@media(max-width:900px){.admin-dark-detail .admin-tracking-card .copy{align-items:stretch}.admin-dark-detail .admin-tracking-card .copy input{min-width:0}.admin-dark-detail .admin-copy-btn{flex:none}}
@media(max-width:560px){.admin-dark-detail .admin-tracking-card .copy{flex-direction:column}.admin-dark-detail .admin-copy-btn{width:100%}}

/* 1.31 — estado de reagendamiento */
.public-theme .confirmed-state-label{margin:16px auto 10px;display:flex;justify-content:center;align-items:center;gap:8px;font-size:10px;font-weight:900;letter-spacing:1.3px;color:#3ac997}
.public-theme .confirmed-state-label span{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#ddf8ed;color:#14815e}
.public-theme.dark .confirmed-state-label span,.public-theme.orange .confirmed-state-label span,.public-theme.midnight .confirmed-state-label span{background:rgba(34,201,151,.14);color:#68e2bd}


/* VIERNES OS 1.32 — tema independiente del panel administrativo.
   No afecta public-theme ni sus cuatro plantillas. */
.admin-theme-dark{background:#080a0f!important;color:#f4f2f8!important;--bg:#080a0f;--surface:#10121a;--surface2:#0d0f16;--ink:#f4f2f8;--muted:#aaa4b4;--line:#252733;--purple:#8f45e8;--purple2:#a45cff;--deep:#171025;--deep2:#24133b;--shadow:0 16px 40px rgba(0,0,0,.24)}
.admin-theme-dark .main{background:#080a0f}.admin-theme-dark .topbar{background:rgba(8,10,15,.96);border-color:#1d2029;color:#fff}.admin-theme-dark .search{background:#11131b;color:#aaa3b5;border-color:#292c36}.admin-theme-dark .content{color:#f4f2f8}.admin-theme-dark h1,.admin-theme-dark h2,.admin-theme-dark h3,.admin-theme-dark h4,.admin-theme-dark label,.admin-theme-dark th{color:#f7f5fa}.admin-theme-dark .muted,.admin-theme-dark .small,.admin-theme-dark .title p{color:#aaa4b4}.admin-theme-dark .card,.admin-theme-dark .hero-card,.admin-theme-dark .notice,.admin-theme-dark .accordion,.admin-theme-dark .drop-card{background:linear-gradient(145deg,#10121a,#0d0f16);border-color:#252733;box-shadow:0 16px 40px rgba(0,0,0,.18)}.admin-theme-dark .table th,.admin-theme-dark .table td{border-color:#242731}.admin-theme-dark .table th{color:#8f8998}.admin-theme-dark .field input,.admin-theme-dark .field textarea,.admin-theme-dark .field select,.admin-theme-dark .copy input,.admin-theme-dark input[type=text],.admin-theme-dark input[type=number],.admin-theme-dark input[type=date],.admin-theme-dark input[type=time]{background:#0b0d13;color:#f6f4fa;border-color:#2a2d39}.admin-theme-dark .field input::placeholder,.admin-theme-dark .field textarea::placeholder,.admin-theme-dark input::placeholder{color:#777382}.admin-theme-dark .field input:focus,.admin-theme-dark .field textarea:focus,.admin-theme-dark .field select:focus{border-color:#9b55ef;box-shadow:0 0 0 3px rgba(155,85,239,.12)}.admin-theme-dark .btn.secondary{background:#171922;color:#ded9e6;border:1px solid #2b2e3a}.admin-theme-dark .btn.secondary:hover{background:#1f222d}.admin-theme-dark .btn.danger{background:rgba(180,35,66,.12);color:#ff718e;border-color:rgba(255,82,119,.18)}.admin-theme-dark .master-tabs{background:#15131d}.admin-theme-dark .master-tabs a{color:#aaa1b4}.admin-theme-dark .master-tabs a.active{background:#24143a;color:#d5a6ff;box-shadow:none}.admin-theme-dark .accordion summary,.admin-theme-dark .drop-card summary{background:#10121a;color:#f5f2f8}.admin-theme-dark .accordion[open] summary,.admin-theme-dark .drop-card[open] summary{background:#14121b;border-color:#282b36}.admin-theme-dark .option-row{border-color:#252733}.admin-theme-dark .option-row input[type=text]{background:#0b0d13;color:#f5f2f8;border-color:#2a2d39}.admin-theme-dark .notice{color:#e9e5ee}.admin-theme-dark .pill{background:#1a1b23;color:#d5cfdd}.admin-theme-dark .pill.green{background:rgba(32,190,133,.12);color:#5ce4b1}.admin-theme-dark .pill.yellow{background:rgba(245,180,45,.12);color:#ffd15b}.admin-theme-dark .pill.red{background:rgba(232,72,101,.12);color:#ff7d98}.admin-theme-dark .pill.purple{background:rgba(155,85,239,.14);color:#c796ff}.admin-theme-dark .metric:after{background:rgba(145,74,224,.10)}.admin-theme-dark .side{background:linear-gradient(180deg,#10111a 0%,#080912 100%);border-right:1px solid rgba(177,106,255,.13);box-shadow:none}.admin-theme-dark .nav a{color:#d7d1df}.admin-theme-dark .nav a:hover,.admin-theme-dark .nav a.active{background:rgba(145,74,224,.15);color:#fff}.admin-theme-dark .nav-label{color:#a991bd}.admin-theme-dark .logo-word{color:#fff}.admin-theme-dark .side-footer{color:#aaa3b3}
.admin-theme-light{background:#f5f3f8;color:#19151f}.admin-theme-light .side{background:linear-gradient(180deg,#4a0b8d 0%,#2a0648 100%)}

/* Dashboard / Master selector */
.dashboard-theme-page{display:grid;gap:16px;max-width:980px}.dashboard-theme-hero{display:flex;align-items:center;justify-content:space-between;gap:24px}.dashboard-theme-badge{padding:10px 14px;border-radius:999px;background:#eee5fb;color:#6331a0;font-size:11px;font-weight:900;letter-spacing:1px}.admin-theme-dark .dashboard-theme-badge{background:rgba(155,85,239,.14);color:#c796ff;border:1px solid rgba(155,85,239,.25)}.dashboard-theme-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.dashboard-theme-choice{appearance:none;border:1px solid var(--line);background:var(--surface2);color:var(--ink);border-radius:16px;padding:14px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:12px;transition:.18s}.dashboard-theme-choice:hover{transform:translateY(-1px);border-color:#a45cff}.dashboard-theme-choice.selected{border:2px solid #8f45e8;box-shadow:0 0 0 3px rgba(143,69,232,.12)}.dashboard-theme-choice>span:last-child{display:flex;flex-direction:column;gap:5px}.dashboard-theme-choice strong{font-size:15px}.dashboard-theme-choice small{font-size:11px;color:var(--muted);line-height:1.45}.dashboard-theme-preview{height:155px;border-radius:12px;padding:13px;display:grid;grid-template-columns:32px 1fr;grid-template-rows:28px 1fr auto;gap:7px;overflow:hidden;position:relative}.preview-dark{background:linear-gradient(135deg,#0b0d13,#1b102b);border:1px solid #30263b;color:#fff}.preview-light{background:#fff;border:1px solid #ddd6e4;color:#211b27}.dashboard-theme-preview i{grid-row:1 / span 3;width:4px;border-radius:8px;background:#8f45e8;opacity:.8}.dashboard-theme-preview b{font-size:18px}.dashboard-theme-preview span{font-weight:800;align-self:center}.dashboard-theme-preview small{grid-column:2;font-size:9px;color:inherit;opacity:.65}.dashboard-theme-save-row{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:4px}.admin-theme-dark .dashboard-theme-choice{background:#0f1118;border-color:#292c36}.admin-theme-dark .dashboard-theme-choice.selected{border-color:#a45cff;background:#12101a}
@media(max-width:760px){.dashboard-theme-form{grid-template-columns:1fr}.dashboard-theme-save-row{align-items:stretch;flex-direction:column}.dashboard-theme-save-row .btn{width:100%}.dashboard-theme-hero{align-items:flex-start;flex-direction:column}}

/* Copiar — púrpura visible + pulso al confirmar, sin importar plantilla pública */
.copy-tracking-btn{transition:background .18s,border-color .18s,box-shadow .18s,transform .18s!important}.public-theme.light .copy-tracking-btn,.public-theme.dark .copy-tracking-btn,.public-theme.orange .copy-tracking-btn,.public-theme.midnight .copy-tracking-btn{background:linear-gradient(135deg,#7b2bc6,#9b4bea)!important;border:1px solid rgba(214,172,255,.38)!important;color:#fff!important;box-shadow:0 8px 20px rgba(103,31,183,.20)!important}.copy-tracking-btn:hover{filter:brightness(1.06)}.copy-tracking-btn.copied{animation:viernes-copy-pulse .72s ease-in-out 0s 2;background:linear-gradient(135deg,#18a878,#0d7957)!important;border-color:#42d5ad!important;color:#fff!important}.admin-copy-btn{transition:background .18s,border-color .18s,box-shadow .18s,transform .18s!important}.admin-copy-btn.copied{animation:viernes-copy-pulse .72s ease-in-out 0s 2!important}@keyframes viernes-copy-pulse{0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(166,92,255,.0)}50%{transform:scale(1.045);box-shadow:0 0 0 6px rgba(166,92,255,.16),0 10px 28px rgba(115,42,207,.30)}}


/* MASTER · FAVICON */
.favicon-current{width:58px;height:58px;border:1px solid rgba(127,127,127,.25);border-radius:14px;display:flex;align-items:center;justify-content:center;background:rgba(127,127,127,.08);overflow:hidden}
.favicon-current img{width:40px;height:40px;object-fit:contain}
.brand-preview-favicon{margin-top:18px;display:flex;align-items:center;gap:12px;color:inherit;font-size:13px}.brand-preview-favicon img{width:28px;height:28px;object-fit:contain;border-radius:6px}

/* VIERNES OS 1.36 — selector y vista previa real del favicon */
.favicon-upload-preview{margin:12px 0 4px;padding:12px 14px;border:1px dashed rgba(145,74,224,.45);border-radius:14px;display:flex;align-items:center;gap:14px;background:rgba(145,74,224,.06)}
.favicon-upload-preview span{font-size:12px;font-weight:700;opacity:.75}
.favicon-upload-preview img{width:42px;height:42px;object-fit:contain;border-radius:8px;background:rgba(127,127,127,.08)}
.admin-theme-dark .favicon-upload-preview{border-color:rgba(177,106,255,.35);background:rgba(145,74,224,.08)}

/* VIERNES OS 1.38 — Fondo público realmente continuo
   El fondo pertenece también al documento raíz para evitar cortes
   horizontales cuando el contenido termina antes de la ventana. */
html:has(body.status-page){
  min-height:100%;
  background:
    radial-gradient(circle at 15% 15%, rgba(126,55,210,.24), transparent 34%),
    radial-gradient(circle at 85% 80%, rgba(91,25,151,.22), transparent 38%),
    linear-gradient(135deg,#f8f6fb 0%,#f0ecf5 48%,#f8f7fa 100%);
  background-attachment:fixed;
  background-size:cover;
}
html:has(body.status-page) body.status-page{
  min-height:100vh;
  height:auto;
  background-color:#f8f6fb;
  background-attachment:fixed;
  background-size:cover;
}
html:has(body.public-theme.dark.status-page){
  background:radial-gradient(circle at 8% 8%,rgba(126,46,230,.23),transparent 26%),radial-gradient(circle at 92% 88%,rgba(186,47,255,.16),transparent 30%),linear-gradient(135deg,#07050d,#14091f 52%,#05040a);
}
html:has(body.public-theme.dark.status-page) body.status-page{background:transparent;}
html:has(body.public-theme.orange.status-page){
  background:radial-gradient(circle at 8% 20%,rgba(255,72,0,.16),transparent 25%),radial-gradient(circle at 92% 82%,rgba(255,140,30,.10),transparent 28%),linear-gradient(135deg,#030303,#0b0705 50%,#020202);
}
html:has(body.public-theme.orange.status-page) body.status-page{background:transparent;}
html:has(body.public-theme.midnight.status-page){
  background:radial-gradient(circle at 10% 12%,rgba(110,125,145,.12),transparent 25%),radial-gradient(circle at 88% 84%,rgba(75,90,110,.10),transparent 28%),linear-gradient(135deg,#030405,#0a0c0f 52%,#020303);
}
html:has(body.public-theme.midnight.status-page) body.status-page{background:transparent;}

/* VIERNES OS 1.39 — Fondo verdaderamente continuo
   El fondo de las páginas públicas vive en <html>, mientras el body
   queda transparente. Así nunca aparece una franja/corte al terminar
   el área de contenido del body. */
html:has(body.status-page){
  min-height:100%;
  background-attachment:fixed!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
}
html:has(body.status-page) body.status-page,
html:has(body.status-page) body.public-theme.status-page{
  background:transparent!important;
  background-color:transparent!important;
  min-height:100vh!important;
  height:auto!important;
  overflow-x:hidden!important;
}
/* Refuerza el fondo raíz para cada plantilla */
html:has(body.public-theme.light.status-page){
  background:radial-gradient(circle at 15% 15%,rgba(126,55,210,.24),transparent 34%),radial-gradient(circle at 85% 80%,rgba(91,25,151,.22),transparent 38%),linear-gradient(135deg,#f8f6fb 0%,#f0ecf5 48%,#f8f7fa 100%)!important;
}
html:has(body.public-theme.dark.status-page){
  background:radial-gradient(circle at 8% 8%,rgba(126,46,230,.23),transparent 26%),radial-gradient(circle at 92% 88%,rgba(186,47,255,.16),transparent 30%),linear-gradient(135deg,#07050d,#14091f 52%,#05040a)!important;
}
html:has(body.public-theme.orange.status-page){
  background:radial-gradient(circle at 8% 20%,rgba(255,72,0,.16),transparent 25%),radial-gradient(circle at 92% 82%,rgba(255,140,30,.10),transparent 28%),linear-gradient(135deg,#030303,#0b0705 50%,#020202)!important;
}
html:has(body.public-theme.midnight.status-page){
  background:radial-gradient(circle at 10% 12%,rgba(110,125,145,.12),transparent 25%),radial-gradient(circle at 88% 84%,rgba(75,90,110,.10),transparent 28%),linear-gradient(135deg,#030405,#0a0c0f 52%,#020303)!important;
}

/* VIERNES OS 1.40 — elimina el corte entre viewport y contenido
   HTML y BODY usan exactamente el mismo fondo fijo. No hay una segunda
   capa de fondo que pueda terminar a mitad de la página. */
html:has(body.status-page),
html:has(body.status-page) body.status-page{
  background-attachment:fixed!important;
  background-repeat:no-repeat!important;
  background-size:cover!important;
}
html:has(body.public-theme.light.status-page),
html:has(body.public-theme.light.status-page) body.status-page{
  background:radial-gradient(circle at 15% 15%,rgba(126,55,210,.24),transparent 34%),radial-gradient(circle at 85% 80%,rgba(91,25,151,.22),transparent 38%),linear-gradient(135deg,#f8f6fb 0%,#f0ecf5 48%,#f8f7fa 100%)!important;
}
html:has(body.public-theme.dark.status-page),
html:has(body.public-theme.dark.status-page) body.status-page{
  background:radial-gradient(circle at 8% 8%,rgba(126,46,230,.23),transparent 26%),radial-gradient(circle at 92% 88%,rgba(186,47,255,.16),transparent 30%),linear-gradient(135deg,#07050d,#14091f 52%,#05040a)!important;
}
html:has(body.public-theme.orange.status-page),
html:has(body.public-theme.orange.status-page) body.status-page{
  background:radial-gradient(circle at 8% 20%,rgba(255,72,0,.16),transparent 25%),radial-gradient(circle at 92% 82%,rgba(255,140,30,.10),transparent 28%),linear-gradient(135deg,#030303,#0b0705 50%,#020202)!important;
}
html:has(body.public-theme.midnight.status-page),
html:has(body.public-theme.midnight.status-page) body.status-page{
  background:radial-gradient(circle at 10% 12%,rgba(110,125,145,.12),transparent 25%),radial-gradient(circle at 88% 84%,rgba(75,90,110,.10),transparent 28%),linear-gradient(135deg,#030405,#0a0c0f 52%,#020303)!important;
}
html:has(body.status-page) body.status-page{
  min-height:100vh!important;
  height:auto!important;
  background-color:transparent!important;
}

/* =========================================================
   VIERNES OS 1.41 — REDISEÑO PÚBLICO SIN BANDAS NI CORTES
   El fondo ya no depende de la altura de ningún contenedor.
   La página usa una base sólida continua y una sola capa fija
   para los efectos decorativos.
   ========================================================= */
html:has(body.public-theme){
  margin:0!important;
  min-height:100%!important;
  background:#f7f4fb!important;
}
body.public-theme{
  margin:0!important;
  min-height:100vh!important;
  background:#f7f4fb!important;
  position:relative!important;
  isolation:isolate!important;
  overflow-x:hidden!important;
}
body.public-theme::before{
  content:"";
  position:fixed!important;
  inset:0!important;
  z-index:-1!important;
  pointer-events:none!important;
  background:
    radial-gradient(circle at 7% 8%,rgba(151,83,235,.18),transparent 24%),
    radial-gradient(circle at 93% 88%,rgba(126,55,210,.15),transparent 27%),
    linear-gradient(135deg,#f8f6fb 0%,#f1edf7 52%,#f8f7fa 100%)!important;
  background-repeat:no-repeat!important;
  background-size:100% 100%!important;
}
body.public-theme::after{display:none!important}
body.public-theme .form-shell,
body.public-theme.status-page{
  background:transparent!important;
  min-height:100vh!important;
  height:auto!important;
  margin:0!important;
}
body.public-theme.status-page{
  padding:42px 20px 54px!important;
  align-items:flex-start!important;
  justify-content:center!important;
}
body.public-theme.status-page .status-card{
  margin:0 auto!important;
}

/* Dark Futurista */
html:has(body.public-theme.dark),body.public-theme.dark{
  background:#07060c!important;
}
body.public-theme.dark::before{
  background:
    radial-gradient(circle at 6% 7%,rgba(126,46,230,.24),transparent 25%),
    radial-gradient(circle at 94% 88%,rgba(186,47,255,.16),transparent 29%),
    linear-gradient(135deg,#07050d 0%,#10071b 50%,#05040a 100%)!important;
}

/* Obsidian Orange */
html:has(body.public-theme.orange),body.public-theme.orange{
  background:#050403!important;
}
body.public-theme.orange::before{
  background:
    radial-gradient(circle at 7% 16%,rgba(255,72,0,.18),transparent 24%),
    radial-gradient(circle at 93% 84%,rgba(255,140,30,.12),transparent 27%),
    linear-gradient(135deg,#030303 0%,#0b0705 52%,#020202 100%)!important;
}

/* Midnight */
html:has(body.public-theme.midnight),body.public-theme.midnight{
  background:#040506!important;
}
body.public-theme.midnight::before{
  background:
    radial-gradient(circle at 9% 11%,rgba(110,125,145,.13),transparent 25%),
    radial-gradient(circle at 90% 85%,rgba(75,90,110,.10),transparent 28%),
    linear-gradient(135deg,#030405 0%,#0a0c0f 52%,#020303 100%)!important;
}

/* Tarjeta pública: limpia y estable, sin depender del fondo del contenedor */
body.public-theme.status-page .status-card{
  width:min(720px,100%)!important;
  box-sizing:border-box!important;
  flex:none!important;
}
body.public-theme .status-card,
body.public-theme .public-form{
  overflow:visible!important;
}

@media(max-width:620px){
  body.public-theme.status-page{padding:22px 12px 38px!important}
}

/* VIERNES OS 1.42 — fondos Grid degradados por plantilla
   Solo cambia el fondo exterior. Las paletas y componentes de cada plantilla
   permanecen intactos. Sin círculos grandes ni bandas horizontales. */
html:has(body.public-theme),
body.public-theme{
  background:#07070d!important;
}
body.public-theme{
  isolation:isolate!important;
  position:relative!important;
  min-height:100vh!important;
}
body.public-theme::before{
  content:""!important;
  position:fixed!important;
  inset:0!important;
  z-index:-1!important;
  pointer-events:none!important;
  background-image:
    linear-gradient(rgba(132,75,205,.075) 1px,transparent 1px),
    linear-gradient(90deg,rgba(132,75,205,.075) 1px,transparent 1px),
    radial-gradient(circle at 82% 12%,rgba(122,49,220,.18),transparent 25%),
    radial-gradient(circle at 12% 88%,rgba(92,32,170,.14),transparent 26%),
    linear-gradient(135deg,#05050a 0%,#0b0913 52%,#05050a 100%)!important;
  background-size:42px 42px,42px 42px,100% 100%,100% 100%,100% 100%!important;
  background-position:0 0,0 0,0 0,0 0,0 0!important;
}
body.public-theme::after{display:none!important}

/* Light */
html:has(body.public-theme.light),body.public-theme.light{background:#f7f5fb!important}
body.public-theme.light::before{
  background-image:
    linear-gradient(rgba(113,67,170,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(113,67,170,.055) 1px,transparent 1px),
    radial-gradient(circle at 85% 10%,rgba(153,94,224,.13),transparent 25%),
    radial-gradient(circle at 10% 90%,rgba(126,67,201,.10),transparent 27%),
    linear-gradient(135deg,#fbfaff 0%,#f3eff9 52%,#fbfaff 100%)!important;
}

/* Dark Futurista */
html:has(body.public-theme.dark),body.public-theme.dark{background:#07070d!important}
body.public-theme.dark::before{
  background-image:
    linear-gradient(rgba(139,76,224,.085) 1px,transparent 1px),
    linear-gradient(90deg,rgba(139,76,224,.085) 1px,transparent 1px),
    radial-gradient(circle at 84% 10%,rgba(132,49,236,.22),transparent 24%),
    radial-gradient(circle at 10% 90%,rgba(91,30,185,.18),transparent 27%),
    linear-gradient(135deg,#05050a 0%,#0d0917 52%,#05050a 100%)!important;
}

/* Obsidian Orange */
html:has(body.public-theme.orange),body.public-theme.orange{background:#070604!important}
body.public-theme.orange::before{
  background-image:
    linear-gradient(rgba(224,88,22,.065) 1px,transparent 1px),
    linear-gradient(90deg,rgba(224,88,22,.065) 1px,transparent 1px),
    radial-gradient(circle at 84% 10%,rgba(255,93,20,.18),transparent 24%),
    radial-gradient(circle at 10% 90%,rgba(181,57,10,.12),transparent 27%),
    linear-gradient(135deg,#040404 0%,#0d0805 52%,#040404 100%)!important;
}

/* Midnight */
html:has(body.public-theme.midnight),body.public-theme.midnight{background:#05070a!important}
body.public-theme.midnight::before{
  background-image:
    linear-gradient(rgba(91,119,151,.07) 1px,transparent 1px),
    linear-gradient(90deg,rgba(91,119,151,.07) 1px,transparent 1px),
    radial-gradient(circle at 84% 10%,rgba(54,93,145,.16),transparent 24%),
    radial-gradient(circle at 10% 90%,rgba(40,65,96,.12),transparent 27%),
    linear-gradient(135deg,#030507 0%,#080d13 52%,#030507 100%)!important;
}

/* Evita que cualquier contenedor vuelva a pintar un fondo de pantalla completo */
body.public-theme.status-page,
body.public-theme .form-shell{
  background:transparent!important;
}

/* VIERNES OS 1.43 — corrección real de visibilidad del fondo Grid */
body.public-theme > *{position:relative;z-index:1;}
body.public-theme::before{z-index:0!important;}

/* VIERNES OS 1.44 — fondo GRID definitivo: vence los fondos antiguos de las plantillas */
html:has(body.public-theme.dark.status-page),
body.public-theme.dark.status-page,
body.public-theme.dark.status-page .form-shell{
  background:#05050a!important;
}
body.public-theme.dark.status-page::before,
body.public-theme.dark.status-page .form-shell::before{
  content:""!important;
  position:fixed!important;
  inset:0!important;
  z-index:0!important;
  pointer-events:none!important;
  display:block!important;
  background-image:
    linear-gradient(rgba(139,76,224,.10) 1px,transparent 1px),
    linear-gradient(90deg,rgba(139,76,224,.10) 1px,transparent 1px),
    radial-gradient(circle at 84% 10%,rgba(132,49,236,.13),transparent 22%),
    radial-gradient(circle at 12% 88%,rgba(91,30,185,.10),transparent 24%),
    linear-gradient(135deg,#040409 0%,#0a0812 52%,#040409 100%)!important;
  background-size:46px 46px,46px 46px,100% 100%,100% 100%,100% 100%!important;
  background-repeat:repeat,repeat,no-repeat,no-repeat,no-repeat!important;
}

html:has(body.public-theme.light.status-page),body.public-theme.light.status-page{background:#faf8fd!important}
body.public-theme.light.status-page::before{
  content:""!important;position:fixed!important;inset:0!important;z-index:0!important;display:block!important;pointer-events:none!important;
  background-image:linear-gradient(rgba(113,67,170,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(113,67,170,.07) 1px,transparent 1px),radial-gradient(circle at 84% 10%,rgba(153,94,224,.10),transparent 22%),radial-gradient(circle at 12% 88%,rgba(126,67,201,.08),transparent 24%),linear-gradient(135deg,#fbfaff,#f2eef8,#fbfaff)!important;
  background-size:46px 46px,46px 46px,100% 100%,100% 100%,100% 100%!important;
}
html:has(body.public-theme.orange.status-page),body.public-theme.orange.status-page{background:#050403!important}
body.public-theme.orange.status-page::before{
  content:""!important;position:fixed!important;inset:0!important;z-index:0!important;display:block!important;pointer-events:none!important;
  background-image:linear-gradient(rgba(224,88,22,.075) 1px,transparent 1px),linear-gradient(90deg,rgba(224,88,22,.075) 1px,transparent 1px),radial-gradient(circle at 84% 10%,rgba(255,93,20,.11),transparent 22%),radial-gradient(circle at 12% 88%,rgba(181,57,10,.08),transparent 24%),linear-gradient(135deg,#040404,#0c0704,#040404)!important;
  background-size:46px 46px,46px 46px,100% 100%,100% 100%,100% 100%!important;
}
html:has(body.public-theme.midnight.status-page),body.public-theme.midnight.status-page{background:#040609!important}
body.public-theme.midnight.status-page::before{
  content:""!important;position:fixed!important;inset:0!important;z-index:0!important;display:block!important;pointer-events:none!important;
  background-image:linear-gradient(rgba(91,119,151,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(91,119,151,.07) 1px,transparent 1px),radial-gradient(circle at 84% 10%,rgba(54,93,145,.10),transparent 22%),radial-gradient(circle at 12% 88%,rgba(40,65,96,.08),transparent 24%),linear-gradient(135deg,#030507,#080d13,#030507)!important;
  background-size:46px 46px,46px 46px,100% 100%,100% 100%,100% 100%!important;
}
body.public-theme.status-page > *{position:relative!important;z-index:1!important}

/* VIERNES OS 1.45 — REDISEÑO DESDE CERO DEL FONDO PÚBLICO
   Fondo tecnológico limpio: grid, cuadrados de luz y degradados suaves.
   No utiliza círculos decorativos grandes. Las 4 paletas se conservan. */
html:has(body.public-theme),
body.public-theme{
  margin:0!important;
  min-height:100%!important;
  background:#05060b!important;
}
body.public-theme{
  position:relative!important;
  isolation:isolate!important;
  overflow-x:hidden!important;
}
body.public-theme::before{
  content:""!important;
  position:fixed!important;
  inset:0!important;
  z-index:0!important;
  pointer-events:none!important;
  background-color:#05060b!important;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(135deg,rgba(100,55,180,.10),transparent 42%,rgba(30,20,70,.10) 78%,transparent),
    linear-gradient(180deg,rgba(255,255,255,.015),transparent 55%,rgba(0,0,0,.16));
  background-size:44px 44px,44px 44px,100% 100%,100% 100%!important;
  background-position:0 0,0 0,0 0,0 0!important;
  background-repeat:repeat,repeat,no-repeat,no-repeat!important;
}
/* Cuadrados de luz: discretos, cuadrados y distribuidos; no círculos. */
body.public-theme::after{
  content:""!important;
  position:fixed!important;
  inset:0!important;
  z-index:0!important;
  pointer-events:none!important;
  opacity:.72!important;
  background-image:
    linear-gradient(135deg,transparent 0 42%,rgba(150,75,255,.20) 43% 57%,transparent 58%) ,
    linear-gradient(135deg,transparent 0 42%,rgba(150,75,255,.13) 43% 57%,transparent 58%) ,
    linear-gradient(135deg,transparent 0 42%,rgba(255,255,255,.07) 43% 57%,transparent 58%);
  background-size:150px 150px,230px 230px,310px 310px!important;
  background-position:8% 18%,78% 62%,45% 82%!important;
  background-repeat:no-repeat!important;
  filter:none!important;
}
body.public-theme > *{position:relative!important;z-index:1!important}
body.public-theme .form-shell,
body.public-theme.status-page{
  background:transparent!important;
  min-height:100vh!important;
}

/* DARK FUTURISTA — violeta */
html:has(body.public-theme.dark),body.public-theme.dark{background:#05060b!important}
body.public-theme.dark::before{
  background-color:#05060b!important;
  background-image:
    linear-gradient(rgba(125,70,210,.075) 1px,transparent 1px),
    linear-gradient(90deg,rgba(125,70,210,.075) 1px,transparent 1px),
    linear-gradient(120deg,rgba(100,35,210,.14),transparent 40%,rgba(35,20,85,.12) 78%,transparent),
    linear-gradient(180deg,rgba(255,255,255,.012),transparent 60%,rgba(0,0,0,.22))!important;
  background-size:44px 44px,44px 44px,100% 100%,100% 100%!important;
}
body.public-theme.dark::after{
  background-image:
    linear-gradient(135deg,transparent 0 42%,rgba(158,78,255,.28) 43% 57%,transparent 58%),
    linear-gradient(135deg,transparent 0 42%,rgba(111,53,221,.20) 43% 57%,transparent 58%),
    linear-gradient(135deg,transparent 0 42%,rgba(210,155,255,.10) 43% 57%,transparent 58%)!important;
  background-size:170px 170px,260px 260px,340px 340px!important;
  background-position:8% 14%,82% 60%,48% 82%!important;
}

/* OBSIDIAN ORANGE — naranja */
html:has(body.public-theme.orange),body.public-theme.orange{background:#070605!important}
body.public-theme.orange::before{
  background-color:#070605!important;
  background-image:
    linear-gradient(rgba(221,91,25,.065) 1px,transparent 1px),
    linear-gradient(90deg,rgba(221,91,25,.065) 1px,transparent 1px),
    linear-gradient(120deg,rgba(176,53,8,.12),transparent 40%,rgba(70,28,5,.10) 78%,transparent),
    linear-gradient(180deg,rgba(255,255,255,.01),transparent 60%,rgba(0,0,0,.22))!important;
  background-size:44px 44px,44px 44px,100% 100%,100% 100%!important;
}
body.public-theme.orange::after{
  background-image:
    linear-gradient(135deg,transparent 0 42%,rgba(255,105,25,.25) 43% 57%,transparent 58%),
    linear-gradient(135deg,transparent 0 42%,rgba(222,72,12,.17) 43% 57%,transparent 58%),
    linear-gradient(135deg,transparent 0 42%,rgba(255,180,90,.08) 43% 57%,transparent 58%)!important;
  background-size:170px 170px,260px 260px,340px 340px!important;
  background-position:8% 14%,82% 60%,48% 82%!important;
}

/* MIDNIGHT — azul acero */
html:has(body.public-theme.midnight),body.public-theme.midnight{background:#04070b!important}
body.public-theme.midnight::before{
  background-color:#04070b!important;
  background-image:
    linear-gradient(rgba(66,117,174,.065) 1px,transparent 1px),
    linear-gradient(90deg,rgba(66,117,174,.065) 1px,transparent 1px),
    linear-gradient(120deg,rgba(30,72,125,.12),transparent 40%,rgba(15,38,70,.10) 78%,transparent),
    linear-gradient(180deg,rgba(255,255,255,.01),transparent 60%,rgba(0,0,0,.24))!important;
  background-size:44px 44px,44px 44px,100% 100%,100% 100%!important;
}
body.public-theme.midnight::after{
  background-image:
    linear-gradient(135deg,transparent 0 42%,rgba(44,135,255,.22) 43% 57%,transparent 58%),
    linear-gradient(135deg,transparent 0 42%,rgba(36,88,156,.15) 43% 57%,transparent 58%),
    linear-gradient(135deg,transparent 0 42%,rgba(120,180,255,.07) 43% 57%,transparent 58%)!important;
  background-size:170px 170px,260px 260px,340px 340px!important;
  background-position:8% 14%,82% 60%,48% 82%!important;
}

/* LIGHT — lavanda limpia */
html:has(body.public-theme.light),body.public-theme.light{background:#f8f6fc!important}
body.public-theme.light::before{
  background-color:#f8f6fc!important;
  background-image:
    linear-gradient(rgba(103,61,170,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(103,61,170,.055) 1px,transparent 1px),
    linear-gradient(120deg,rgba(145,90,220,.10),transparent 40%,rgba(220,208,245,.12) 78%,transparent),
    linear-gradient(180deg,rgba(255,255,255,.35),transparent 60%,rgba(110,70,160,.025))!important;
  background-size:44px 44px,44px 44px,100% 100%,100% 100%!important;
}
body.public-theme.light::after{
  background-image:
    linear-gradient(135deg,transparent 0 42%,rgba(139,76,224,.12) 43% 57%,transparent 58%),
    linear-gradient(135deg,transparent 0 42%,rgba(139,76,224,.08) 43% 57%,transparent 58%),
    linear-gradient(135deg,transparent 0 42%,rgba(255,255,255,.5) 43% 57%,transparent 58%)!important;
  background-size:170px 170px,260px 260px,340px 340px!important;
  background-position:8% 14%,82% 60%,48% 82%!important;
}

/* Mantener tarjetas y campos de cada plantilla intactos; solo se reemplaza el fondo exterior. */


/* V10.5S — Vista previa del logo en MASTER: tamaño fijo y seguro.
   El archivo cargado nunca puede alterar el tamaño del panel. */
.brand-preview .logo-box{
  width:130px !important;
  height:90px !important;
  min-width:130px !important;
  max-width:130px !important;
  min-height:90px !important;
  max-height:90px !important;
  padding:10px !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.brand-preview .logo-box .public-logo{
  display:block !important;
  width:auto !important;
  height:auto !important;
  max-width:105px !important;
  max-height:62px !important;
  min-width:0 !important;
  min-height:0 !important;
  object-fit:contain !important;
  margin:0 auto !important;
}
.brand-preview .logo-box .logo-placeholder{
  width:58px !important;
  height:58px !important;
  min-width:58px !important;
  min-height:58px !important;
  font-size:16px !important;
}
.brand-preview .public-head{
  grid-template-columns:minmax(0,1fr) 130px !important;
  align-items:center !important;
}

/* =========================================================
   V10.5S — MASTER: PREVISUALIZACIONES DE MARCA SEGURAS
   Ningún archivo subido puede modificar el tamaño del Master.
   ========================================================= */
.master-logo-current,
.master-brand-logo-current {
  width: 150px !important;
  height: 82px !important;
  min-width: 150px !important;
  max-width: 150px !important;
  min-height: 82px !important;
  max-height: 82px !important;
  flex: 0 0 150px !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  padding: 8px !important;
}

.master-logo-current img,
.master-logo-current .master-logo,
.master-brand-logo-current img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 120px !important;
  max-height: 58px !important;
  object-fit: contain !important;
  object-position: center !important;
  flex: 0 0 auto !important;
}

.brand-preview .public-head {
  grid-template-columns: minmax(0, 1fr) 150px !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.brand-preview .logo-box {
  width: 150px !important;
  height: 82px !important;
  min-width: 150px !important;
  max-width: 150px !important;
  min-height: 82px !important;
  max-height: 82px !important;
  flex: 0 0 150px !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  padding: 8px !important;
}

.brand-preview .logo-box .public-logo {
  display: block !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 120px !important;
  max-height: 58px !important;
  object-fit: contain !important;
  object-position: center !important;
  margin: 0 auto !important;
}

.brand-preview .logo-box .logo-placeholder {
  width: 58px !important;
  height: 58px !important;
  min-width: 58px !important;
  min-height: 58px !important;
  max-width: 58px !important;
  max-height: 58px !important;
  font-size: 14px !important;
}

.favicon-current,
.favicon-upload-preview img {
  box-sizing: border-box !important;
  flex: 0 0 auto !important;
}

.favicon-current {
  width: 58px !important;
  height: 58px !important;
  min-width: 58px !important;
  max-width: 58px !important;
  min-height: 58px !important;
  max-height: 58px !important;
  overflow: hidden !important;
}

.favicon-current img {
  width: 40px !important;
  height: 40px !important;
  max-width: 40px !important;
  max-height: 40px !important;
  object-fit: contain !important;
}

.favicon-upload-preview {
  max-height: 70px !important;
  overflow: hidden !important;
}

.favicon-upload-preview img {
  width: 42px !important;
  height: 42px !important;
  max-width: 42px !important;
  max-height: 42px !important;
  object-fit: contain !important;
}

@media (max-width: 760px) {
  .master-logo-current,
  .master-brand-logo-current {
    width: 130px !important;
    height: 74px !important;
    min-width: 130px !important;
    max-width: 130px !important;
    min-height: 74px !important;
    max-height: 74px !important;
    flex-basis: 130px !important;
  }

  .master-logo-current img,
  .master-logo-current .master-logo,
  .master-brand-logo-current img {
    max-width: 105px !important;
    max-height: 52px !important;
  }
}

/* V10.5S — BLOQUEO DEFINITIVO DE PREVISUALIZACIONES DE MARCA EN MASTER */
.master-logo-head,
.master-logo-head > div,
.master-logo-current,
.master-brand-logo-current,
.brand-preview,
.brand-preview .public-head,
.brand-preview .public-head > div,
.brand-preview .logo-box {
  min-width: 0 !important;
  min-height: 0 !important;
  box-sizing: border-box !important;
}

.master-logo-current,
.master-brand-logo-current {
  width: 150px !important;
  height: 82px !important;
  min-width: 150px !important;
  max-width: 150px !important;
  min-height: 82px !important;
  max-height: 82px !important;
  flex: 0 0 150px !important;
  overflow: hidden !important;
  position: relative !important;
  contain: layout paint !important;
}

.master-logo-current img,
.master-logo-current svg,
.master-brand-logo-current img,
.master-brand-logo-current svg {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 120px !important;
  max-height: 58px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  object-fit: contain !important;
  object-position: center !important;
  overflow: hidden !important;
}

.brand-preview .public-head {
  width: 100% !important;
  max-width: 100% !important;
  grid-template-columns: minmax(0, 1fr) 150px !important;
  overflow: hidden !important;
}

.brand-preview .logo-box {
  width: 150px !important;
  height: 82px !important;
  min-width: 150px !important;
  max-width: 150px !important;
  min-height: 82px !important;
  max-height: 82px !important;
  flex: 0 0 150px !important;
  overflow: hidden !important;
  contain: layout paint !important;
}

.brand-preview .logo-box .public-logo,
.brand-preview .logo-box img,
.brand-preview .logo-box svg {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 120px !important;
  max-height: 58px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  object-fit: contain !important;
  object-position: center !important;
}

.favicon-current {
  width: 58px !important;
  height: 58px !important;
  min-width: 58px !important;
  max-width: 58px !important;
  min-height: 58px !important;
  max-height: 58px !important;
  flex: 0 0 58px !important;
  overflow: hidden !important;
  contain: layout paint !important;
}

.favicon-current img,
.favicon-current svg,
.favicon-upload-preview img,
.favicon-upload-preview svg {
  display: block !important;
  width: 42px !important;
  height: 42px !important;
  max-width: 42px !important;
  max-height: 42px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  object-fit: contain !important;
}

/* V10.5S — BLOQUEO REAL DE TAMAÑO DE LOGOS EN MASTER
   Las imágenes se ajustan al contenedor y jamás pueden expandir la página. */
.master-logo-head {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 150px !important;
  align-items: center !important;
  gap: 14px !important;
  min-width: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
}

.master-logo-head > div:first-child {
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
}

.master-logo-current,
.master-brand-logo-current {
  width: 150px !important;
  height: 82px !important;
  min-width: 150px !important;
  max-width: 150px !important;
  min-height: 82px !important;
  max-height: 82px !important;
  padding: 8px !important;
  margin: 0 !important;
  overflow: hidden !important;
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  contain: strict !important;
}

.master-logo-current img,
.master-logo-current svg,
.master-brand-logo-current img,
.master-brand-logo-current svg {
  width: 120px !important;
  height: 58px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 120px !important;
  max-height: 58px !important;
  object-fit: contain !important;
  object-position: center !important;
  display: block !important;
  flex: 0 0 120px !important;
}

/* Vista previa lateral: tamaño estrictamente limitado */
.brand-preview {
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
}

.brand-preview .public-head {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 150px !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow: hidden !important;
}

.brand-preview .public-head > .copy {
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
}

.brand-preview .logo-box {
  width: 150px !important;
  height: 82px !important;
  min-width: 150px !important;
  max-width: 150px !important;
  min-height: 82px !important;
  max-height: 82px !important;
  padding: 8px !important;
  overflow: hidden !important;
  contain: strict !important;
}

.brand-preview .logo-box img,
.brand-preview .logo-box svg,
.brand-preview .logo-box .public-logo {
  width: 120px !important;
  height: 58px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 120px !important;
  max-height: 58px !important;
  object-fit: contain !important;
  object-position: center !important;
  display: block !important;
}

.favicon-current {
  width: 58px !important;
  height: 58px !important;
  min-width: 58px !important;
  max-width: 58px !important;
  min-height: 58px !important;
  max-height: 58px !important;
  overflow: hidden !important;
  contain: strict !important;
}

.favicon-current img,
.favicon-current svg {
  width: 40px !important;
  height: 40px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 40px !important;
  max-height: 40px !important;
  object-fit: contain !important;
  display: block !important;
}

.favicon-upload-preview {
  width: 100% !important;
  max-width: 100% !important;
  max-height: 70px !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

.favicon-upload-preview img,
.favicon-upload-preview svg {
  width: 42px !important;
  height: 42px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 42px !important;
  max-height: 42px !important;
  object-fit: contain !important;
  flex: 0 0 42px !important;
}

@media (max-width: 900px) {
  .master-logo-head {
    grid-template-columns: minmax(0, 1fr) 130px !important;
  }
  .master-logo-current,
  .master-brand-logo-current,
  .brand-preview .logo-box {
    width: 130px !important;
    height: 74px !important;
    min-width: 130px !important;
    max-width: 130px !important;
    min-height: 74px !important;
    max-height: 74px !important;
  }
  .master-logo-current img,
  .master-logo-current svg,
  .master-brand-logo-current img,
  .master-brand-logo-current svg,
  .brand-preview .logo-box img,
  .brand-preview .logo-box svg,
  .brand-preview .logo-box .public-logo {
    width: 105px !important;
    height: 52px !important;
    max-width: 105px !important;
    max-height: 52px !important;
    flex-basis: 105px !important;
  }
}

/* =========================================================
   V10.5S — BLOQUEO REAL DE PREVISUALIZACIONES DE LOGOS
   El archivo original nunca puede cambiar el layout del Master.
   ========================================================= */

/* Contenedores de previsualización: tamaño absoluto/fijo */
.master-logo-current,
.master-brand-logo-current,
.brand-preview .logo-box,
.favicon-current {
  box-sizing: border-box !important;
  overflow: hidden !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 100% !important;
  position: relative !important;
  contain: strict !important;
}

.master-logo-current,
.master-brand-logo-current {
  width: 150px !important;
  height: 82px !important;
  min-width: 150px !important;
  max-width: 150px !important;
  min-height: 82px !important;
  max-height: 82px !important;
  flex: 0 0 150px !important;
  padding: 8px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* La imagen ocupa solamente el área disponible; object-fit la contiene. */
.master-logo-current img,
.master-logo-current svg,
.master-brand-logo-current img,
.master-brand-logo-current svg,
.brand-preview .logo-box img,
.brand-preview .logo-box svg {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  object-fit: contain !important;
  object-position: center !important;
  margin: 0 !important;
  padding: 0 !important;
  flex: 0 0 auto !important;
}

/* Caja de logo dentro de la vista del encabezado */
.brand-preview .public-head {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  grid-template-columns: minmax(0, 1fr) 150px !important;
  overflow: hidden !important;
}

.brand-preview .public-head > div,
.brand-preview .public-head > .copy,
.brand-preview .public-head > .logo-box {
  min-width: 0 !important;
  max-width: 100% !important;
}

.brand-preview .logo-box {
  width: 150px !important;
  height: 82px !important;
  min-width: 150px !important;
  max-width: 150px !important;
  min-height: 82px !important;
  max-height: 82px !important;
  flex: 0 0 150px !important;
  padding: 8px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.brand-preview .logo-box .public-logo {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  object-fit: contain !important;
  object-position: center !important;
}

/* Favicon: caja y archivo totalmente contenidos */
.favicon-current {
  width: 58px !important;
  height: 58px !important;
  min-width: 58px !important;
  max-width: 58px !important;
  min-height: 58px !important;
  max-height: 58px !important;
  flex: 0 0 58px !important;
  padding: 8px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.favicon-current img,
.favicon-current svg,
.favicon-upload-preview img,
.favicon-upload-preview svg {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  object-fit: contain !important;
  object-position: center !important;
  display: block !important;
}

.favicon-upload-preview {
  width: 100% !important;
  max-width: 100% !important;
  max-height: 76px !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

@media (max-width: 760px) {
  .master-logo-current,
  .master-brand-logo-current {
    width: 130px !important;
    height: 74px !important;
    min-width: 130px !important;
    max-width: 130px !important;
    min-height: 74px !important;
    max-height: 74px !important;
    flex-basis: 130px !important;
  }

  .brand-preview .public-head {
    grid-template-columns: minmax(0, 1fr) 130px !important;
  }

  .brand-preview .logo-box {
    width: 130px !important;
    height: 74px !important;
    min-width: 130px !important;
    max-width: 130px !important;
    min-height: 74px !important;
    max-height: 74px !important;
    flex-basis: 130px !important;
  }
}
