:root{--bg:#f2ede2;--paper:#fffdf8;--ink:#24211d;--muted:#746b5f;--gold:#b38a3c;--gold2:#e3c77e;--deep:#4a3a22;--line:#dfd4bd;--shadow:0 18px 50px rgba(74,58,34,.13)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;background:radial-gradient(circle at 15% 8%,rgba(201,164,91,.25),transparent 28%),radial-gradient(circle at 88% 24%,rgba(255,255,255,.9),transparent 32%),linear-gradient(125deg,#eee7d9 0%,#fbf8f0 38%,#eee4d0 100%);min-height:100vh}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.22;background:repeating-linear-gradient(112deg,transparent 0 90px,rgba(179,138,60,.12) 91px 93px,transparent 94px 180px),repeating-linear-gradient(28deg,transparent 0 130px,rgba(255,255,255,.35) 131px 133px,transparent 134px 260px);mix-blend-mode:multiply}.topbar{position:sticky;top:0;z-index:100;background:rgba(255,252,245,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:14px 5%;gap:20px}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font-family:Georgia,serif;font-weight:700;letter-spacing:.04em}.brand>span:last-child>span{color:var(--gold)}.brand small{display:block;font:11px Inter,sans-serif;color:var(--muted);letter-spacing:.15em}.brand-mark{width:38px;height:38px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-size:21px}.brand-mark.big{width:62px;height:62px;margin:auto;font-size:30px}nav{display:flex;gap:22px}nav a,.footer-links a{color:var(--muted);text-decoration:none;font-size:14px}nav a:hover,.footer-links a:hover{color:var(--gold)}.top-actions{display:flex;align-items:center;gap:8px}.age-pill,.plan-badge,.status-chip{border:1px solid #c8ad72;background:#fff8e7;color:#7e6028;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:700;letter-spacing:.06em}.button{border-radius:999px;padding:10px 16px;text-decoration:none;border:1px solid var(--line);cursor:pointer;font-weight:700}.button.pink{background:linear-gradient(135deg,#a57b31,#d9b967);color:white;border-color:#a57b31}.button.outline{background:rgba(255,255,255,.65);color:var(--deep)}.hero-vip{position:relative;overflow:hidden;margin:0 5%;min-height:430px;border:1px solid #d4c39e;border-top:0;border-radius:0 0 34px 34px;background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(232,219,190,.75));box-shadow:var(--shadow)}.hero-marble{position:absolute;inset:0;background:radial-gradient(ellipse at 18% 30%,rgba(179,138,60,.3),transparent 35%),radial-gradient(ellipse at 80% 70%,rgba(255,255,255,.8),transparent 36%),repeating-linear-gradient(116deg,transparent 0 70px,rgba(151,116,58,.1) 71px 74px,transparent 75px 155px),repeating-linear-gradient(24deg,transparent 0 115px,rgba(255,255,255,.45) 116px 119px,transparent 120px 220px)}.hero-copy{position:relative;max-width:780px;padding:100px 8%}.hero-copy h1{font:600 clamp(42px,6vw,76px)/.98 Georgia,serif;margin:12px 0;color:#332a1e}.hero-copy p{font-size:18px;max-width:620px;color:#665b4c}.eyebrow{color:var(--gold);font-size:11px;letter-spacing:.22em;font-weight:800}.gold-rule{width:130px;height:2px;background:linear-gradient(90deg,var(--gold),transparent);margin-top:28px}.search-card{margin:-34px auto 0;position:relative;width:min(1120px,90%);background:rgba(255,253,248,.96);border:1px solid var(--line);border-radius:22px;padding:18px;box-shadow:var(--shadow)}.search-card form{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:10px}.search-card input,.search-card select,.form-grid input,.form-grid select,.form-grid textarea,.inline-form input,.inline-form select{width:100%;border:1px solid var(--line);background:#fffdf8;border-radius:12px;padding:12px;color:var(--ink)}.section{width:min(1200px,90%);margin:70px auto}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:22px}.section h2,.panel h2{font:600 36px Georgia,serif;margin:0;color:#3a3022}.gold-count{color:var(--gold);font-weight:700}.profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.profile-card{background:rgba(255,253,248,.92);border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 10px 30px rgba(74,58,34,.08);transition:.2s}.profile-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.profile-card.vip{border-color:#c8a35e;box-shadow:0 12px 35px rgba(179,138,60,.16)}.profile-art{height:210px;position:relative;display:grid;place-items:center;background:radial-gradient(circle at 35% 35%,rgba(255,255,255,.95),transparent 25%),linear-gradient(145deg,#ded2b8,#f8f2e4 50%,#cdb47b)}.art-initial{font:600 82px Georgia,serif;color:rgba(91,67,28,.55)}.profile-art .plan-badge{position:absolute;top:14px;right:14px}.profile-body{padding:18px}.profile-title{display:flex;justify-content:space-between;align-items:center}.profile-title h3{margin:0;font:600 25px Georgia,serif}.location{color:var(--gold);font-weight:700;font-size:13px}.profile-body p{color:var(--muted);line-height:1.55}.card-footer{display:flex;justify-content:space-between;gap:10px;align-items:center;border-top:1px solid var(--line);padding-top:13px;font-size:12px}.card-footer a{color:var(--gold);font-weight:800;text-decoration:none}.city-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.city-grid a{padding:18px;background:rgba(255,253,248,.75);border:1px solid var(--line);border-radius:16px;text-decoration:none;color:var(--ink);display:flex;justify-content:space-between}.city-grid span{color:var(--gold)}footer{margin-top:80px;padding:28px 5%;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;border-top:1px solid var(--line);background:rgba(255,253,248,.7);color:var(--muted);font-size:12px}.footer-links{display:flex;gap:15px;flex-wrap:wrap}.adult{color:var(--gold);font-weight:700}.age-gate{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:25px;background:rgba(241,235,222,.97);backdrop-filter:blur(16px)}.age-gate.hidden{display:none}.age-card{width:min(560px,100%);padding:50px 34px;text-align:center;border:1px solid #c5a966;border-radius:28px;background:radial-gradient(circle at 50% 0,rgba(227,199,126,.32),transparent 35%),#fffdf8;box-shadow:0 30px 90px rgba(74,58,34,.2)}.age-card h1{font:600 40px/1.05 Georgia,serif;color:#3a3022}.age-card p{color:var(--muted);line-height:1.6}.age-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:25px 0}.dashboard{width:min(1380px,94%);margin:40px auto;display:grid;grid-template-columns:240px 1fr;gap:24px}.sidebar{position:sticky;top:100px;height:max-content;background:rgba(255,253,248,.9);border:1px solid var(--line);border-radius:22px;padding:18px;box-shadow:var(--shadow)}.side-link{display:block;text-decoration:none;color:var(--muted);padding:12px;border-radius:10px;margin:4px 0}.side-link.active,.side-link:hover{background:#f3ead6;color:var(--deep)}.dash-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.dash-head h1{font:600 42px Georgia,serif;margin:4px 0}.dash-head p{color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.stats>div,.panel{background:rgba(255,253,248,.9);border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:0 10px 30px rgba(74,58,34,.06)}.stats small{display:block;color:var(--gold);font-size:10px;font-weight:800;letter-spacing:.12em}.stats strong{display:block;font:600 30px Georgia,serif;margin:5px 0}.stats span{color:var(--muted);font-size:12px}.panel{margin-bottom:18px}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.panel-head p{color:var(--muted);font-size:13px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.form-grid label{font-size:12px;font-weight:700;color:#5e5446}.form-grid label input,.form-grid label select,.form-grid label textarea{margin-top:6px;font-weight:400}.wide{grid-column:1/-1}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line);vertical-align:middle}td small{display:block;color:var(--muted);margin-top:4px}.action-row{display:flex;gap:6px;flex-wrap:wrap}.tiny{border:1px solid #cdbb99;background:#fffaf0;color:#6b5228;border-radius:8px;padding:7px 9px;cursor:pointer;font-weight:700}.tiny.danger{border-color:#d5a7a7;color:#8a4545}.inline-form{display:inline-flex;gap:5px;align-items:center}.moderation-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--line)}.status-chip.active{background:#edf6eb;color:#47733d;border-color:#a7c79f}.status-chip.pending{background:#fff5dc;color:#80652d}.status-chip.paused{background:#eee;color:#666}.status-chip.rejected{background:#f8e7e7;color:#8b4848}.admin-page{width:min(1100px,92%);margin:50px auto}.permission-list>div{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:10px}.on{color:#4d7d42}.off{color:#999}.flash-wrap{position:fixed;right:20px;top:85px;z-index:200}.flash{padding:12px 16px;border-radius:12px;background:#fffdf8;border:1px solid var(--line);box-shadow:var(--shadow);margin:6px}.flash.error{border-color:#d5a7a7;color:#8a4545}.flash.success{border-color:#b5cfa9;color:#4d7d42}@media(max-width:900px){nav{display:none}.dashboard{grid-template-columns:1fr}.sidebar{position:static}.stats{grid-template-columns:repeat(2,1fr)}.search-card form{grid-template-columns:1fr 1fr}.hero-copy{padding:70px 7%}.form-grid{grid-template-columns:1fr}}@media(max-width:560px){.top-actions .age-pill{display:none}.stats{grid-template-columns:1fr 1fr}.search-card form{grid-template-columns:1fr}.hero-vip{margin:0 2%;}.section{width:94%}.hero-copy h1{font-size:45px}}

/* V4 — refined VIP visual system */
:root{--gold:#b58a3c;--gold-light:#d8bd79;--cream:#f6f1e7;--ink:#242321;--muted:#746f66;--line:#ded5c5;--white:#fffdf8}
html,body{font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif!important;color:var(--ink)}
body{background:radial-gradient(circle at 10% 0%,rgba(181,138,60,.10),transparent 28%),radial-gradient(circle at 92% 15%,rgba(181,138,60,.08),transparent 26%),linear-gradient(135deg,#fbf8f1,#eee7da 48%,#faf7f0);background-attachment:fixed}
h1,h2,h3,h4,.brand,.brand span,.section-title{font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif!important;letter-spacing:-.02em}
h1{font-weight:700}.brand span{font-weight:700;color:var(--gold)}
.topbar{background:rgba(255,253,248,.94)!important;border-bottom:1px solid rgba(181,138,60,.28)!important;box-shadow:0 4px 22px rgba(80,60,30,.06)}
.panel,.card,.hero,.legal-card,.profile-card{background:rgba(255,253,248,.9)!important;border:1px solid rgba(181,138,60,.22)!important;box-shadow:0 12px 35px rgba(80,60,30,.07)}
.button.pink{background:linear-gradient(135deg,#a8792d,#d6b567)!important;color:#fff!important;border:1px solid #a8792d!important}
.button.outline{color:#765b2a!important;border-color:#c9b483!important;background:#fffaf0!important}
.brand-mark{border-color:var(--gold)!important;color:var(--gold)!important;background:rgba(181,138,60,.06)}
.age-gate{background:rgba(30,26,20,.72)!important;backdrop-filter:blur(18px)}
.age-card{background:linear-gradient(145deg,#fffdf8,#eee7da)!important;border-color:rgba(181,138,60,.55)!important}
.age-card h1{color:#765b2a!important}
.profile-contact{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
.contact-bubble{display:inline-flex;align-items:center;gap:9px;padding:12px 17px;border-radius:999px;background:#fffaf0;border:1px solid #d8c79f;color:#5f4a25;text-decoration:none;font-weight:650}
.contact-bubble.whatsapp{background:#f4ead2;border-color:#c9ad6c}
.contact-bubble:hover{transform:translateY(-1px);box-shadow:0 6px 15px rgba(80,60,30,.12)}

.age-gate.is-hidden{display:none!important}.age-gate.hidden{display:none!important}

.profile-cover{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.profile-art .art-initial{position:relative;z-index:1}.profile-art .plan-badge{z-index:2}


:root{--bp-bg:#07080b;--bp-panel:#11141a;--bp-border:#2a2f3a;--bp-text:#f5f6f8;--bp-muted:#9da3ad;--bp-pink:#ef2b7d;--bp-pink2:#ff4b93}
html,body{background:radial-gradient(circle at 78% 8%,rgba(239,43,125,.12),transparent 26%),linear-gradient(180deg,#0d0f14,#07080b)!important;color:var(--bp-text)!important;font-family:Inter,system-ui,-apple-system,'Segoe UI',Arial,sans-serif!important}
h1,h2,h3,h4,.brand,.brand span{font-family:Inter,system-ui,-apple-system,'Segoe UI',Arial,sans-serif!important;color:var(--bp-text)!important}
header,.topbar{background:rgba(8,9,12,.94)!important;border-bottom:1px solid var(--bp-border)!important;backdrop-filter:blur(16px)!important}
.brand span,.eyebrow,.location,.adult{color:var(--bp-pink)!important}.brand-mark,.brand-icon{border-color:var(--bp-pink)!important;color:var(--bp-pink)!important}
nav a{color:#c6c9cf!important}nav a:hover,nav a.active{color:var(--bp-pink)!important}
.hero{background:linear-gradient(90deg,rgba(7,8,11,.98),rgba(7,8,11,.65)),radial-gradient(circle at 75% 42%,rgba(239,43,125,.20),transparent 30%),linear-gradient(135deg,#151820,#0a0b0f)!important;border:1px solid #232833!important}
.button.pink,.btn.gold,.goldbtn{background:linear-gradient(135deg,var(--bp-pink),var(--bp-pink2))!important;color:#fff!important;border-color:var(--bp-pink)!important}
.button.outline,.btn.outline,.btn.ghost,.lightbtn{background:#11141a!important;border:1px solid #373c47!important;color:#e7e9ed!important}
.panel,.card,.profile-card,.city-card,.contact-card,.search-panel,.auth-card,.legal-card,.stats>div,.mini,.upload-box{background:linear-gradient(145deg,#14171d,#0f1116)!important;border:1px solid var(--bp-border)!important;color:var(--bp-text)!important}
.profile-card.featured,.card.featured{border-color:var(--bp-pink)!important;box-shadow:0 12px 38px rgba(239,43,125,.12)!important}
.vip,.badge,.age-pill,.plan-badge,.city-row b{background:var(--bp-pink)!important;color:#fff!important;border-color:var(--bp-pink)!important}
.fake-photo,.photo,.avatar{background:linear-gradient(145deg,#2c2027,#171119 55%,#090a0d)!important;color:#f7d5e4!important}
input,select,textarea,.field input,.field select,.form-grid input,.form-grid select,.form-grid textarea,.auth-card input,.auth-card select,.auth-card textarea,.inline-form input,.inline-form select{background:#0d0f14!important;border:1px solid #303540!important;color:#f5f6f8!important}
input:focus,select:focus,textarea:focus{border-color:var(--bp-pink)!important;box-shadow:0 0 0 3px rgba(239,43,125,.10)!important}
.sidebar{background:#0b0d11!important;border-color:var(--bp-border)!important}.side-link{color:#9399a4!important}.side-link:hover,.side-link.active{background:rgba(239,43,125,.13)!important;color:#fff!important}
.contact-bubble,.contact{background:#151820!important;border:1px solid #343944!important;color:#fff!important}.contact-bubble.whatsapp,.contact.whatsapp{background:#11271e!important;border-color:#285a41!important;color:#65dda1!important}
.age-gate{background:radial-gradient(circle at 50% 20%,rgba(239,43,125,.14),transparent 28%),rgba(4,5,7,.985)!important;backdrop-filter:blur(18px)!important}
.age-card{background:linear-gradient(145deg,#15171d,#0d0f13)!important;border:1px solid #343844!important}.age-card h1,.age-card h2{color:#fff!important}.age-card p{color:#aeb3bc!important}
footer{background:#08090c!important;border-color:#252932!important;color:#777e89!important}.footer-links a:hover{color:var(--bp-pink)!important}

/* Legacy visual foundation — superseded by Elaryve production layer */
.brand{display:inline-flex;align-items:flex-end;gap:5px;text-decoration:none;font-family:Georgia,"Times New Roman",serif!important;font-style:italic;font-weight:700;font-size:24px;letter-spacing:-1px;position:relative}
.brand-legacy{color:#d5b36a!important;text-shadow:0 1px 12px rgba(213,179,106,.22)}
.brand-prive{color:#f02b7e!important;text-shadow:0 1px 12px rgba(240,43,126,.2)}
.brand-legacy:after,.brand-prive:after{content:"";display:block;height:5px;margin-top:-2px;background:currentColor;opacity:.55;clip-path:polygon(0 0,100% 0,94% 25%,87% 8%,80% 80%,72% 22%,63% 100%,54% 18%,45% 72%,35% 12%,24% 92%,14% 22%,5% 70%)}

.sensual-hero{width:min(1380px,96%);min-height:620px;margin:0 auto 0;position:relative;overflow:hidden;border-radius:0 0 34px 34px;border:1px solid #33252d;background:
radial-gradient(circle at 76% 48%,rgba(178,35,86,.23),transparent 23%),
radial-gradient(circle at 84% 30%,rgba(218,164,76,.12),transparent 18%),
linear-gradient(90deg,rgba(5,6,9,.98) 0%,rgba(10,8,12,.93) 42%,rgba(22,10,17,.62) 72%,rgba(7,7,10,.88) 100%)!important;
box-shadow:0 25px 70px rgba(0,0,0,.35)}
.hero-ambience{position:absolute;inset:0;background:
radial-gradient(ellipse at 79% 68%,rgba(120,17,53,.34),transparent 24%),
linear-gradient(135deg,transparent 58%,rgba(108,15,48,.20) 59%,rgba(24,7,14,.55) 76%,transparent 77%)}
.silk{position:absolute;right:-7%;bottom:-12%;width:58%;height:50%;border-radius:50% 0 0 0;background:linear-gradient(145deg,rgba(104,11,43,.08),rgba(134,19,57,.42),rgba(30,5,14,.72));transform:rotate(-8deg);filter:blur(2px)}
.candle{position:absolute;bottom:16%;width:12px;height:70px;border-radius:5px;background:linear-gradient(#f5d8a2,#9d6e31);box-shadow:0 0 32px 9px rgba(255,181,77,.18)}
.candle:before{content:"";position:absolute;width:12px;height:22px;left:0;top:-20px;border-radius:60% 40% 60% 40%;background:#ffd18b;box-shadow:0 0 26px 9px rgba(255,167,60,.42)}
.c1{right:13%;height:82px}.c2{right:18%;height:52px;bottom:14%}.c3{right:9%;height:45px;bottom:14%}
.sensual-hero .hero-copy{position:relative;z-index:2;width:58%;padding:120px 7% 90px}
.sensual-hero .hero-copy h1{font-size:clamp(52px,6vw,88px);line-height:.98;max-width:760px;margin:22px 0;color:#fff!important}
.sensual-hero .hero-copy>p:not(.eyebrow){max-width:600px;color:#c9c3c7;font-size:18px;line-height:1.55}
.gold-rule{width:120px;height:2px;background:linear-gradient(90deg,#d3aa5c,transparent);margin-top:28px}
.owner-contact-card{position:absolute;z-index:4;right:6%;top:50%;transform:translateY(-50%);width:min(360px,32%);padding:28px;border:1px solid rgba(218,180,105,.35);border-radius:24px;background:linear-gradient(145deg,rgba(18,17,21,.88),rgba(31,12,22,.78));box-shadow:0 24px 60px rgba(0,0,0,.32);backdrop-filter:blur(12px)}
.owner-contact-card h2{font-size:29px!important;line-height:1.05;margin:9px 0 12px;color:#fff!important}.owner-contact-card p{color:#bcb7bd;line-height:1.55;font-size:14px}
.contact-kicker{font-size:11px;letter-spacing:.2em;color:#d7b36c;font-weight:800}
.owner-contact-button{display:inline-flex;margin-top:10px;padding:13px 17px;border-radius:999px;text-decoration:none;background:linear-gradient(135deg,#d5ae61,#9e7130);color:#09090b;font-weight:800}

.profile-page{width:min(1240px,94%);margin:48px auto}.profile-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding:30px;border:1px solid #292d35;border-radius:26px;background:linear-gradient(135deg,#15171d,#160c12)}
.profile-head h1{font-size:52px;margin:8px 0 6px}.profile-head p{margin:0 0 10px;color:#b4b7be}.active-status{color:#8f96a1;font-size:13px}
.profile-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;align-items:start;margin-top:24px}.profile-main{min-width:0}.profile-side{min-width:0}
.profile-page .panel{padding:26px!important;border-radius:24px!important;margin-bottom:20px!important}.profile-page .panel h2{font-size:28px!important;margin-bottom:14px!important}
.profile-page .description{font-size:16px;line-height:1.75;color:#c9ccd2!important;margin:0}
.media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:20px}.media-grid>img,.media-grid>video{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:20px;border:1px solid #2d313a}
.sticky-contact{position:sticky;top:92px!important;margin:0!important;background:linear-gradient(145deg,#19151a,#101217)!important;border-color:#4b3840!important;box-shadow:0 18px 55px rgba(0,0,0,.28)!important}
.sticky-contact .contact-bubble{display:flex!important;width:100%;justify-content:center;box-sizing:border-box;margin:10px 0;padding:14px 16px!important}
.sticky-contact .whatsapp{background:linear-gradient(135deg,#153326,#10251d)!important}
.sticky-contact hr{border:0;border-top:1px solid #2e323a;margin:20px 0}.sticky-contact p{color:#a8adb5;font-size:13px}

.age-gate{background:radial-gradient(circle at 50% 25%,rgba(177,35,83,.23),transparent 28%),rgba(4,5,7,.97)!important}
.age-card{position:relative;overflow:hidden;padding:54px 38px!important;border:1px solid rgba(213,177,104,.42)!important;background:linear-gradient(145deg,#17141a,#0b0d11)!important;box-shadow:0 35px 110px rgba(0,0,0,.58)!important}
.age-glow{position:absolute;inset:-80px auto auto 50%;transform:translateX(-50%);width:280px;height:180px;background:radial-gradient(circle,rgba(239,43,125,.25),transparent 68%);pointer-events:none}
.age-kicker{position:relative;font-size:10px;letter-spacing:.22em;color:#d7b36c;font-weight:800;margin:12px 0}
.monogram{position:relative;margin:auto;width:72px;height:72px;display:grid;place-items:center;border:1px solid #b88b45;border-radius:50%;font-family:Georgia,serif;font-style:italic;font-size:24px;color:#e1c17c;background:#111217}
.age-card h1{font-size:38px!important;line-height:1.08!important}.age-card p{max-width:430px;margin:15px auto;color:#aeb3bc!important}
.age-actions{display:flex!important;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:28px!important}
.age-actions .goldbtn,.age-actions .lightbtn{border-radius:999px!important;padding:14px 22px!important;font-weight:800!important;cursor:pointer}
.age-actions .goldbtn{background:linear-gradient(135deg,#d5b067,#a87931)!important;color:#0b0b0d!important;border:1px solid #d7bd84!important;box-shadow:0 9px 28px rgba(181,138,60,.20)}
.age-actions .lightbtn{background:#12141a!important;color:#d8dbe0!important;border:1px solid #363b45!important}

@media(max-width:900px){
.sensual-hero{min-height:720px}.sensual-hero .hero-copy{width:auto;padding:75px 7% 300px}.owner-contact-card{left:7%;right:7%;top:auto;bottom:35px;transform:none;width:auto}.candle{opacity:.55}
.profile-layout{grid-template-columns:1fr}.sticky-contact{position:sticky!important;bottom:12px!important;top:auto!important;z-index:20}.profile-head{align-items:flex-start;flex-direction:column}
}
@media(max-width:560px){.profile-head h1{font-size:40px}.sensual-hero .hero-copy h1{font-size:48px}.sensual-hero .hero-copy{padding-top:65px}.owner-contact-card{padding:21px}}

.legal-long{max-width:980px;margin:0 auto;padding:38px!important}.legal-long h1{font-size:46px!important;margin:8px 0 28px}.legal-long h2{font-size:24px!important;margin:34px 0 10px}.legal-long p,.legal-long li{font-size:15px;line-height:1.8;color:#c6c9cf!important}.legal-alert{margin:22px 0;padding:16px 18px;border-radius:14px;background:#1b1518;border:1px solid #6d3f51;color:#dfc9d2;line-height:1.6}.legal-rules{display:grid;gap:9px;padding-left:22px}.legal-footer{justify-content:center!important}

/* CONTROL CENTER + MULTI THEME */
.nav-register{padding:9px 14px;border-radius:999px;background:linear-gradient(135deg,#ef2b7d,#ff4b93);color:#fff!important;font-weight:800}
.admin-quickbar{width:min(1380px,94%);margin:22px auto -18px;display:flex;gap:10px;flex-wrap:wrap}
.control-center{max-width:1180px}.control-form h2{padding-top:16px;border-top:1px solid #2b2f37}.control-form h2:first-of-type{border-top:0}
.theme-previews{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.theme-chip{padding:18px;border-radius:15px;text-align:center;font-weight:800;border:1px solid #333}.theme-chip.dark{background:#0b0d11;color:#f12c7d}.theme-chip.gold{background:#f6f0e3;color:#9e7434}.theme-chip.christmas{background:#10241a;color:#e3c378}.theme-chip.valentine{background:#32101f;color:#ff7aad}
.banner-admin-row{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:14px 0;border-top:1px solid #2d3038}.banner-admin-row>div{display:flex;align-items:center;gap:12px}.banner-admin-row img{width:90px;height:55px;object-fit:cover;border-radius:10px}.banner-admin-row small{display:block;color:#8e949e;margin-top:5px}
.promo-banners{width:min(1200px,92%);margin:28px auto}.promo-banner{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(220px,36%) 1fr;min-height:210px;border-radius:24px;border:1px solid #39303a;background:linear-gradient(135deg,#18151a,#0c0e12);box-shadow:0 18px 45px rgba(0,0,0,.28)}.promo-banner img{width:100%;height:100%;object-fit:cover;min-height:210px}.promo-banner>div{padding:30px}.promo-banner h2{font-size:32px!important;margin:7px 0}.promo-banner p{color:#b9bdc4;line-height:1.6}
.registration-page{max-width:900px}.consent-check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center!important}.consent-check input{width:auto!important}

/* Theme: Dark VIP = existing default */
.theme-dark_vip{--theme-accent:#ef2b7d;--theme-accent2:#ff4b93}

/* Theme: Elegant Gold */
body.theme-elegant_gold{background:radial-gradient(circle at 20% 0%,rgba(213,179,106,.10),transparent 25%),linear-gradient(180deg,#0e0d0b,#070706)!important}
body.theme-elegant_gold .brand-prive,body.theme-elegant_gold .eyebrow,body.theme-elegant_gold .location{color:#d7b36c!important}
body.theme-elegant_gold .button.pink,body.theme-elegant_gold .goldbtn,body.theme-elegant_gold .nav-register{background:linear-gradient(135deg,#9d7133,#dfc17a)!important;color:#0b0b0c!important}
body.theme-elegant_gold .profile-card.vip{border-color:#d7b36c!important}

/* Theme: Christmas */
body.theme-christmas{background:radial-gradient(circle at 80% 0%,rgba(183,34,45,.14),transparent 24%),radial-gradient(circle at 15% 10%,rgba(22,111,66,.15),transparent 22%),linear-gradient(180deg,#09120e,#050807)!important}
body.theme-christmas .topbar{border-bottom-color:#315743!important}
body.theme-christmas .brand-legacy{color:#e3c47a!important}body.theme-christmas .brand-prive{color:#cf3043!important}
body.theme-christmas .button.pink,body.theme-christmas .goldbtn,body.theme-christmas .nav-register{background:linear-gradient(135deg,#a91f32,#d94451)!important}
body.theme-christmas .eyebrow,body.theme-christmas .location{color:#dfc47d!important}
body.theme-christmas .panel,body.theme-christmas .profile-card{border-color:#284b39!important}

/* Theme: Valentine */
body.theme-valentine{background:radial-gradient(circle at 80% 0%,rgba(239,43,125,.23),transparent 26%),radial-gradient(circle at 12% 22%,rgba(151,25,72,.15),transparent 25%),linear-gradient(180deg,#180812,#08070a)!important}
body.theme-valentine .button.pink,body.theme-valentine .goldbtn,body.theme-valentine .nav-register{background:linear-gradient(135deg,#d61766,#ff5b9a)!important}
body.theme-valentine .profile-card,body.theme-valentine .panel{border-color:#4a2435!important}

@media(max-width:700px){.theme-previews{grid-template-columns:1fr 1fr}.promo-banner{grid-template-columns:1fr}.promo-banner img{height:180px;min-height:0}.admin-quickbar{width:94%}}

.mode-help{padding:14px 16px;border:1px solid #333842;border-radius:14px;background:#0d0f14;color:#aeb4be;line-height:1.65}.mode-help b{color:#f2f3f5}
.promo-entry-modal{position:fixed;inset:0;z-index:85000;display:flex;align-items:center;justify-content:center;padding:22px;background:rgba(3,4,6,.78);backdrop-filter:blur(10px)}.promo-entry-modal.hidden{display:none}.promo-entry-card{position:relative;width:min(760px,96vw);max-height:88vh;overflow:auto;display:grid;grid-template-columns:minmax(220px,42%) 1fr;border:1px solid #43313b;border-radius:26px;background:linear-gradient(145deg,#17151a,#0b0d11);box-shadow:0 30px 100px rgba(0,0,0,.65)}.promo-entry-card>img{width:100%;height:100%;min-height:340px;object-fit:cover}.promo-entry-content{padding:38px}.promo-entry-content h2{font-size:38px!important;margin:8px 0 14px}.promo-entry-content p{color:#b7bbc3;line-height:1.65}.promo-entry-close{position:absolute;right:14px;top:14px;z-index:2;width:38px;height:38px;border-radius:50%;border:1px solid #454a54;background:#101217;color:#fff;font-size:24px;cursor:pointer}
@media(max-width:650px){.promo-entry-card{grid-template-columns:1fr}.promo-entry-card>img{height:190px;min-height:0}.promo-entry-content{padding:26px}.promo-entry-content h2{font-size:30px!important}}

/* EMPLOYEE ADMIN / RBAC */
.staff-page{max-width:1180px}.staff-card{border:1px solid #2d3138;border-radius:18px;padding:0 18px;margin:12px 0;background:#101217}.staff-card summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:18px 0;list-style:none}.staff-card summary::-webkit-details-marker{display:none}.staff-card summary small{display:block;color:#858c96;margin-top:5px}.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.perm-switch{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center!important;gap:10px;padding:11px 13px;border:1px solid #2c3038;border-radius:12px;background:#0d0f13}.perm-switch input{width:auto!important;margin:0}.perm-switch span{font-weight:600;color:#c6c9d0}.permission-note{padding:12px;border:1px solid #56404a;border-radius:12px;color:#cbb8c0;background:#171217}
@media(max-width:700px){.permission-grid{grid-template-columns:1fr}}
/* MEGA V2 UX */
.brand{font-family:Georgia,serif;font-style:italic;font-size:25px;letter-spacing:-.03em}.brand-legacy{background:linear-gradient(180deg,#fff0b5,#c49439 70%);-webkit-background-clip:text;color:transparent;text-shadow:0 0 18px rgba(210,169,82,.15)}.brand-prive{background:linear-gradient(180deg,#ff94c2,#d71968);-webkit-background-clip:text;color:transparent;margin-left:3px;text-shadow:0 0 18px rgba(239,43,125,.25)}
.search-first{margin:18px auto 14px!important;z-index:5}.compact-hero{min-height:285px!important;margin-top:0!important;background-size:cover!important;background-position:center!important}.compact-hero .hero-copy{padding:54px 7%!important;max-width:700px}.compact-hero .hero-copy h1{font-size:clamp(32px,4vw,52px)!important;line-height:1.02!important}.compact-hero .hero-copy p{font-size:15px!important}.plan-section{margin-top:44px!important}.plan-section .section-head p{color:#8d929a}.plan-vip{border-top:1px solid rgba(212,176,92,.4);padding-top:28px}.plan-premium{border-top:1px solid rgba(239,43,125,.3);padding-top:28px}.plan-básico{border-top:1px solid rgba(255,255,255,.1);padding-top:28px}
.banner-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:16px}.contact-pill{display:inline-flex;padding:10px 14px;border-radius:999px;border:1px solid #d2ae5b;text-decoration:none;color:#e7c97e;background:#17130e;font-weight:800}.contact-pill.whatsapp{border-color:#3d9f68;color:#72d899}.contact-pill.email{border-color:#d8337c;color:#ff78ad}
.admin-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.admin-profile-card{border:1px solid #30343c;border-radius:18px;padding:16px;background:#101217}.admin-profile-top{display:grid;grid-template-columns:46px 1fr auto;gap:12px;align-items:center}.admin-profile-top h3{margin:0;font-size:20px}.admin-profile-top p{margin:3px 0;color:#858b95}.admin-avatar{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#2a1a22,#5b1838);font-size:22px;font-weight:900;color:#ff7aad}.admin-profile-meta{display:flex;justify-content:space-between;gap:10px;padding:13px 0;color:#9da2aa;font-size:12px}.quick-actions{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:12px}.quick-actions form{margin:0}.tiny.renew{border-color:#c99c45;color:#e5c36e}.admin-search{max-width:290px;border:1px solid #343842;background:#0b0d11;color:#fff;border-radius:12px;padding:11px}
body.theme-midnight_blue{background:radial-gradient(circle at 70% 0,#172b55 0,transparent 30%),#060a12!important}body.theme-midnight_blue .button.pink,body.theme-midnight_blue .nav-register{background:linear-gradient(135deg,#365fa8,#8ba9ff)!important}body.theme-black_red{background:radial-gradient(circle at 80% 10%,#491016 0,transparent 30%),#050506!important}body.theme-black_red .button.pink,body.theme-black_red .nav-register{background:linear-gradient(135deg,#8f111d,#ef3b46)!important}body.theme-rose_gold{background:radial-gradient(circle at 70% 0%,#4a2932 0,transparent 32%),#100b0d!important}body.theme-rose_gold .button.pink,body.theme-rose_gold .nav-register{background:linear-gradient(135deg,#a65e6d,#e7a5a7)!important}body.theme-champagne{background:radial-gradient(circle at 30% 0%,#4c3c22 0,transparent 30%),#0d0b08!important}body.theme-champagne .button.pink,body.theme-champagne .nav-register{background:linear-gradient(135deg,#a77a35,#f0d28d)!important;color:#17110a!important}body.theme-summer_neon{background:radial-gradient(circle at 20% 0%,#053e49 0,transparent 30%),radial-gradient(circle at 85% 10%,#53153f 0,transparent 28%),#05090b!important}body.theme-summer_neon .button.pink,body.theme-summer_neon .nav-register{background:linear-gradient(135deg,#00a8a8,#ef2b7d)!important}body.theme-halloween{background:radial-gradient(circle at 80% 0%,#4c2104 0,transparent 30%),#080604!important}body.theme-halloween .button.pink,body.theme-halloween .nav-register{background:linear-gradient(135deg,#c65b0b,#ff9a22)!important}body.theme-new_year{background:radial-gradient(circle at 20% 0%,#3b315b 0,transparent 28%),radial-gradient(circle at 80% 0%,#6a5420 0,transparent 25%),#07070a!important}body.theme-new_year .button.pink,body.theme-new_year .nav-register{background:linear-gradient(135deg,#7b63ad,#d7b44e)!important}
@media(max-width:800px){.admin-profile-grid{grid-template-columns:1fr}.compact-hero{min-height:250px!important}.compact-hero .hero-copy{padding:38px 6%!important}.compact-hero .hero-copy h1{font-size:34px!important}.search-first{width:94%!important}.admin-profile-top{grid-template-columns:42px 1fr}.admin-profile-top .status-chip{grid-column:1/-1;width:max-content}.promo-banner{grid-template-columns:1fr!important}}


/* ==========================================================
   ELARYVE — RESPONSIVE REAL (iPhone / Android)
   ========================================================== */
.mobile-menu-btn{display:none}
.public-search-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:end}
.public-search-form label{display:block;color:#eee;font-size:11px;font-weight:800}
.advanced-filters{display:contents}.more-filters{display:none}.search-actions{display:flex;gap:8px}

@media (max-width:720px){
html,body{width:100%;max-width:100%;overflow-x:hidden}
body{font-size:15px}
.topbar{min-height:68px;padding:10px 16px;position:sticky;top:0;z-index:2000;background:rgba(8,9,12,.98)!important}
.brand{font-size:27px!important;line-height:1!important;gap:5px!important}
.mobile-menu-btn{display:grid;place-items:center;width:42px;height:42px;margin-left:auto;border:1px solid #3a3d46;border-radius:12px;background:#111318;color:#fff;font-size:21px}
.topbar nav{display:none!important;position:absolute!important;top:64px!important;left:12px!important;right:12px!important;width:auto!important;padding:10px!important;background:#0d0f13!important;border:1px solid #30343c!important;border-radius:16px!important;box-shadow:0 18px 45px rgba(0,0,0,.5)!important}
.topbar nav.mobile-open{display:flex!important;flex-direction:column!important;gap:4px!important}
.topbar nav a{display:block!important;width:100%!important;padding:12px 14px!important;border-radius:10px!important}

.search-card.search-first{width:calc(100% - 24px)!important;margin:12px auto!important;padding:12px!important;border-radius:18px!important;background:#111318!important;border:1px solid #30343c!important;box-shadow:0 10px 30px rgba(0,0,0,.22)!important}
.public-search-form{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}
.public-search-form label{color:#f2f2f3!important;font-size:10px!important;line-height:1.2!important}
.public-search-form select,.public-search-form input{width:100%!important;min-height:44px!important;margin-top:5px!important;padding:8px 9px!important;border:1px solid #373b45!important;border-radius:11px!important;background:#090b0f!important;color:#fff!important;font-size:14px!important}
.advanced-filters{display:none!important;grid-column:1/-1!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}
.advanced-filters.mobile-open{display:grid!important}
.more-filters{display:block!important;grid-column:1/-1!important;border:0!important;background:transparent!important;color:#d9b66f!important;font-weight:800!important;padding:5px!important}
.search-actions{grid-column:1/-1!important;display:grid!important;grid-template-columns:1fr auto!important;gap:8px!important}
.search-actions .button{min-height:43px!important;display:grid!important;place-items:center!important;padding:9px 14px!important;border-radius:12px!important}
.search-actions .outline{min-width:88px!important}

.hero-vip.sensual-hero.compact-hero{width:calc(100% - 24px)!important;margin:12px auto 18px!important;min-height:0!important;display:flex!important;flex-direction:column!important;border-radius:22px!important;overflow:hidden!important}
.compact-hero .hero-copy{width:100%!important;padding:24px 20px 17px!important}
.compact-hero .hero-copy h1{max-width:330px!important;margin:8px 0 9px!important;font-size:29px!important;line-height:1.04!important}
.compact-hero .hero-copy>p:not(.eyebrow){max-width:330px!important;margin:0!important;font-size:13px!important;line-height:1.45!important}
.owner-contact-card{position:relative!important;inset:auto!important;transform:none!important;width:auto!important;margin:0 12px 12px!important;padding:17px!important;border-radius:18px!important;backdrop-filter:none!important}
.owner-contact-card h2{font-size:22px!important;line-height:1.08!important;margin:5px 0 7px!important}
.owner-contact-card p{font-size:13px!important;margin:0 0 10px!important}
.owner-contact-button{width:100%!important;min-height:44px!important;display:flex!important;align-items:center!important;justify-content:center!important}
.candle{display:none!important}

.promo-banners{width:calc(100% - 24px)!important;margin:16px auto!important}
.promo-banner{display:grid!important;grid-template-columns:108px minmax(0,1fr)!important;min-height:124px!important;border-radius:18px!important;overflow:hidden!important}
.promo-banner img{width:108px!important;height:100%!important;min-height:124px!important;max-height:175px!important;object-fit:cover!important}
.promo-banner>div{min-width:0!important;padding:14px!important}
.promo-banner h2{margin:4px 0 5px!important;font-size:20px!important;line-height:1.08!important;overflow-wrap:anywhere!important}
.promo-banner p{font-size:12px!important;line-height:1.35!important;display:-webkit-box!important;-webkit-line-clamp:3!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
.banner-actions{gap:6px!important;margin-top:8px!important}.banner-actions .button,.contact-pill{padding:7px 9px!important;font-size:11px!important}

.section,.plan-section{width:calc(100% - 28px)!important;margin:24px auto!important}
.plan-section{padding-top:16px!important}
.section-head{margin-bottom:13px!important;align-items:flex-start!important}
.section-head h2{font-size:28px!important;line-height:1.05!important;margin:3px 0!important}
.section-head p{font-size:12px!important;line-height:1.35!important;margin-top:5px!important}
.profile-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
.profile-card{border-radius:16px!important;overflow:hidden!important}
.profile-art{height:auto!important;aspect-ratio:4/5!important}
.profile-cover{width:100%!important;height:100%!important;object-fit:cover!important}
.profile-body{padding:11px!important}
.profile-title h3{font-size:18px!important;line-height:1.1!important}.profile-title>span{font-size:11px!important}
.profile-body .location{font-size:10px!important;line-height:1.3!important;margin:5px 0!important}
.profile-body>p:not(.location){font-size:11px!important;line-height:1.35!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
.card-footer>span{display:none!important}.card-footer a{display:block!important;width:100%!important;text-align:center!important;padding:8px!important;border-radius:10px!important;background:#15171c!important}

.age-gate{padding:14px!important}.age-card{width:100%!important;max-width:430px!important;padding:30px 20px!important;border-radius:22px!important}.age-card h1{font-size:29px!important}.age-actions{display:grid!important;grid-template-columns:1fr!important}.age-actions button{width:100%!important;min-height:45px!important}

.dashboard,.admin-page{width:calc(100% - 20px)!important;margin:18px auto!important}
.dashboard{display:block!important}.sidebar{position:relative!important;top:auto!important;margin-bottom:12px!important}
.form-grid{grid-template-columns:1fr!important}.wide{grid-column:auto!important}.stats{grid-template-columns:1fr 1fr!important}.admin-profile-grid{grid-template-columns:1fr!important}
}

@media (max-width:390px){
.public-search-form{grid-template-columns:1fr 1fr!important}
.filter-essential:nth-of-type(3){grid-column:1/-1!important}
.advanced-filters.mobile-open{grid-template-columns:1fr 1fr!important}
.advanced-filters.mobile-open label:last-child{grid-column:1/-1!important}
.profile-grid{grid-template-columns:1fr!important}
.promo-banner{grid-template-columns:92px minmax(0,1fr)!important}.promo-banner img{width:92px!important}
}


/* ==========================================================
   LOGO LUXURY + CONTACTO DE PERFIL UNIFICADO
   ========================================================== */
.luxury-brand{
  position:relative!important;
  display:inline-flex!important;
  align-items:baseline!important;
  gap:2px!important;
  padding:2px 10px 3px 18px!important;
  font-family:"Italianno","Brush Script MT","Segoe Script",cursive!important;
  font-style:normal!important;
  font-weight:400!important;
  font-size:42px!important;
  line-height:.82!important;
  letter-spacing:.01em!important;
  text-decoration:none!important;
  filter:drop-shadow(0 5px 14px rgba(0,0,0,.28));
}
.luxury-brand .brand-gem{
  position:absolute;
  left:2px;
  top:-4px;
  color:#e1c078!important;
  font-family:Georgia,serif!important;
  font-size:11px!important;
  text-shadow:0 0 12px rgba(225,192,120,.45);
}
.luxury-brand .brand-legacy{
  color:#e2bd70!important;
  background:linear-gradient(180deg,#f8e7b0 0%,#d8aa57 45%,#9d6d2e 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  text-shadow:none!important;
}
.luxury-brand .brand-prive{
  color:#ef367e!important;
  background:linear-gradient(180deg,#ff9bc3 0%,#ee3d82 48%,#a91650 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  text-shadow:none!important;
}
.luxury-brand .brand-legacy:after,
.luxury-brand .brand-prive:after{
  display:none!important;
}
.luxury-brand:after{
  content:"";
  position:absolute;
  left:18px;
  right:8px;
  bottom:-7px;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(226,189,112,.8),rgba(239,54,126,.8),transparent);
  box-shadow:0 0 8px rgba(239,54,126,.18);
}

.sticky-contact .contact-kicker{
  display:block;
  margin-bottom:5px;
  font-size:10px;
  font-weight:800;
  letter-spacing:.18em;
  color:#d7b36c!important;
}
.sticky-contact .contact-intro{
  margin:0 0 15px!important;
  padding:11px 12px;
  border:1px solid #30343d;
  border-radius:12px;
  background:#0d0f13;
  color:#bfc3ca!important;
  font-size:13px!important;
  line-height:1.5!important;
}

@media(max-width:720px){
  .luxury-brand{
    font-size:37px!important;
    padding-left:16px!important;
    padding-right:5px!important;
  }
  .luxury-brand .brand-gem{left:1px;top:-3px}
  .luxury-brand:after{left:16px;right:3px;bottom:-6px}
}

/* ==================== ANALYTICS ==================== */
.analytics-page{max-width:1320px}
.analytics-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0}
.analytics-kpis article{padding:20px;border:1px solid #2d3139;border-radius:18px;background:linear-gradient(145deg,#14161b,#0d0f13)}
.analytics-kpis small{display:block;color:#9da3ad;font-size:10px;font-weight:800;letter-spacing:.12em}
.analytics-kpis strong{display:block;margin:7px 0 4px;font-size:38px;line-height:1;color:#f3f3f4}
.analytics-kpis span{color:#d7b36c;font-size:12px}
.analytics-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:14px;margin:14px 0}
.bar-chart{height:245px;display:flex;align-items:end;gap:4px;padding:18px 4px 0;border-top:1px solid #282c34;overflow-x:auto}
.bar-col{height:100%;min-width:18px;flex:1;display:grid;grid-template-rows:18px 1fr 18px;align-items:end;text-align:center}
.bar-value{font-size:8px;color:#8f959f}
.bar-track{height:100%;min-height:80px;display:flex;align-items:flex-end;justify-content:center}
.bar-fill{width:65%;min-height:2px;border-radius:5px 5px 2px 2px;background:linear-gradient(180deg,#f14888,#8d1748);box-shadow:0 0 14px rgba(241,72,136,.18)}
.bar-col small{font-size:8px;color:#777e89}
.analytics-status,.plan-stat-list,.month-list,.rank-list{display:grid;gap:8px}
.analytics-status>div,.plan-stat-list>div,.month-list>div,.rank-list>div{display:flex;justify-content:space-between;gap:15px;padding:11px 12px;border:1px solid #292d35;border-radius:12px;background:#0d0f13}
.analytics-status span,.plan-stat-list span,.month-list span,.rank-list span{color:#b5bac3}
.analytics-status b,.plan-stat-list b,.month-list b,.rank-list b{color:#f0d18c}
.rank-list small{font-size:10px;color:#8f959f}
.analytics-table{width:100%;border-collapse:collapse}
.analytics-table th,.analytics-table td{padding:11px 12px;border-bottom:1px solid #282c33;text-align:left;font-size:12px}
.analytics-table th{color:#d8b970;font-size:10px;letter-spacing:.06em}
.analytics-table a{color:#f3659c}
.analytics-note{margin:14px 0;padding:14px 16px;border:1px solid #3a3440;border-radius:14px;background:#121016;color:#aeb2b9;font-size:12px;line-height:1.5}
@media(max-width:850px){
  .analytics-kpis{grid-template-columns:1fr 1fr}
  .analytics-grid{grid-template-columns:1fr}
}
@media(max-width:480px){
  .analytics-kpis{grid-template-columns:1fr 1fr;gap:8px}
  .analytics-kpis article{padding:14px}
  .analytics-kpis strong{font-size:28px}
  .bar-chart{height:210px}
  .analytics-table{min-width:700px}
}

/* ===== COMMERCIAL / PLAN HISTORY ANALYTICS ===== */
.finance-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:30px 0 12px;padding-top:8px}
.finance-head h2{margin:4px 0;font-size:30px}
.finance-head p{margin:0;color:#9fa4ad;font-size:12px}
.estimate-badge{padding:7px 10px;border:1px solid #59482b;border-radius:999px;background:#17130c;color:#d9b66f;font-size:9px;font-weight:900;letter-spacing:.08em;white-space:nowrap}
.finance-kpis article:first-child{border-color:#4b3a28}
.finance-plan-list{display:grid;gap:8px}
.finance-plan-list>div{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:13px;border:1px solid #292d35;border-radius:12px;background:#0d0f13}
.finance-plan-list span{display:grid;gap:3px}.finance-plan-list span>b{color:#eee}.finance-plan-list small{color:#858c97;font-size:10px}
.finance-plan-list strong{color:#e5c479;font-size:17px;white-space:nowrap}
@media(max-width:720px){.finance-head{align-items:flex-start;flex-direction:column}.estimate-badge{white-space:normal}}

/* WEEKLY PLANS / REFERRALS / BADGES */
.referral-table input,.referral-table select{min-width:90px}.referral-table code{color:#e6c57a}.button.small{padding:7px 9px!important;font-size:10px!important;margin:2px}
.referral-landing{max-width:650px;margin:45px auto;text-align:center;padding:38px!important}.referral-landing h1{font-size:38px}
.card-badges{position:absolute;left:8px;top:8px;display:flex;gap:5px;z-index:2}.card-badges span{padding:5px 7px;border:1px solid #4c604f;border-radius:999px;background:rgba(10,13,11,.9);color:#8ee0aa;font-size:8px;font-weight:900;text-transform:uppercase}
@media(max-width:720px){.referral-table{min-width:1000px}.referral-landing{margin:20px auto;padding:24px!important}.referral-landing h1{font-size:29px}}

/* OWNER DASHBOARD V1 */
.owner-dashboard-v1{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;width:min(1380px,94%);margin:22px auto 14px}
.owner-kpi-card{padding:18px;border:1px solid #30343d;border-radius:18px;background:linear-gradient(145deg,#15171c,#0d0f13)}
.owner-kpi-card span{display:block;color:#8f959f;font-size:9px;font-weight:900;letter-spacing:.12em}
.owner-kpi-card strong{display:block;margin:8px 0 4px;color:#e4c47a;font-size:32px;line-height:1}
.owner-kpi-card small{color:#aeb3bc;font-size:11px}
.owner-attention{width:min(1380px,94%);margin:0 auto 14px}
.owner-task-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.owner-task-grid a{display:flex;flex-direction:column;gap:4px;padding:14px;border:1px solid #2c3038;border-radius:14px;background:#0e1014;text-align:center}
.owner-task-grid b{font-size:24px;color:#f05b95}.owner-task-grid span{font-size:11px;color:#c5c9d0}
.owner-expiring-list{display:grid;gap:8px}.owner-expiring-list>div{display:flex;justify-content:space-between;gap:18px;padding:11px 12px;border:1px solid #292d35;border-radius:12px;background:#0d0f13}.owner-expiring-list span{display:grid;gap:3px}.owner-expiring-list small{color:#8e949e}.owner-expiring-list strong{color:#e6c77d}
@media(max-width:850px){.owner-dashboard-v1{grid-template-columns:1fr 1fr}.owner-task-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.owner-dashboard-v1{grid-template-columns:1fr 1fr;gap:8px}.owner-kpi-card{padding:14px}.owner-kpi-card strong{font-size:26px}}

/* CRM PHASE 2 */
.crm-v2{max-width:1380px}.crm-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0}
.crm-summary>div{padding:16px;border:1px solid #30343d;border-radius:16px;background:linear-gradient(145deg,#15171c,#0d0f13)}
.crm-summary small{display:block;color:#8f959f;font-size:9px;font-weight:900;letter-spacing:.12em}.crm-summary b{display:block;margin-top:6px;color:#e6c77d;font-size:22px}
.copy-box{width:100%;background:#090b0e!important;color:#e4e5e8!important;border:1px solid #343943!important;border-radius:12px!important;padding:12px!important}
.crm-contact{padding:12px;border:1px solid #2c3038;border-radius:12px;background:#0d0f13;margin-bottom:12px}.crm-contact p{margin:5px 0}
.crm-timeline{display:grid;gap:9px}.timeline-row{display:grid;grid-template-columns:170px 1fr;gap:15px;padding:13px;border-left:2px solid #d2ad68;background:#0d0f13;border-radius:0 12px 12px 0}
.timeline-row time{color:#858c96;font-size:10px}.timeline-row p{margin:4px 0;color:#c5c9d0}.timeline-row small{color:#777f89}.crm-link{border-color:#806b3d!important;color:#e2c274!important}
@media(max-width:760px){.crm-summary{grid-template-columns:1fr 1fr}.timeline-row{grid-template-columns:1fr;gap:4px}}

/* PROFILE MANAGEMENT PHASE 3 */
.profile-management-toolbar{
  width:min(1380px,94%);margin:16px auto 14px;padding:14px;border:1px solid #30343d;
  border-radius:18px;background:linear-gradient(145deg,#15171c,#0d0f13)
}
.profile-filter-row{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:9px}
.profile-filter-row input,.profile-filter-row select,.bulk-profile-bar input,.bulk-profile-bar select{
  min-height:42px;border:1px solid #343943;border-radius:11px;background:#090b0e;color:#eceef1;padding:9px 10px
}
.bulk-profile-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:11px;padding-top:11px;border-top:1px solid #292d34}
.bulk-left,.bulk-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.select-all{display:flex!important;align-items:center!important;gap:7px!important}.select-all input,.profile-card-selector input{width:auto!important}
.profile-card-selector{position:absolute;top:10px;left:10px;z-index:4;padding:5px 7px;border:1px solid #3b4049;border-radius:9px;background:rgba(10,12,16,.88)}
.admin-profile-card{position:relative}
.quick-renew-group{display:flex;gap:4px;flex-wrap:wrap}.quick-renew-group form{display:inline-flex}.tiny.renew{border-color:#705b31!important;color:#e8c674!important}
.admin-profile-card .tiny{white-space:nowrap}
@media(max-width:900px){
  .profile-filter-row{grid-template-columns:1fr 1fr}
  .bulk-profile-bar{align-items:flex-start;flex-direction:column}
}
@media(max-width:560px){
  .profile-filter-row{grid-template-columns:1fr}
  .bulk-controls{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .bulk-controls .button{grid-column:1/-1}
}

/* ADVANCED STATS PHASE 4 */
.advanced-stats{max-width:1380px}
.performance-table .ctr-pill{display:inline-block;min-width:58px;text-align:center;padding:5px 8px;border:1px solid #3d414a;border-radius:999px;background:#111319;color:#c8ccd3;font-weight:900}
.performance-table .ctr-pill.mid{color:#e8c36f;border-color:#66552f}
.performance-table .ctr-pill.good{color:#85ddb5;border-color:#2d664f}
.cohort-list{display:grid;gap:8px}.cohort-list>div{display:flex;justify-content:space-between;align-items:center;padding:12px;border:1px solid #2d3138;border-radius:12px;background:#0d0f13}.cohort-list span{display:grid;gap:3px}.cohort-list small{color:#8e949e}.cohort-list strong{font-size:20px;color:#e3c173}
.funnel-box{display:grid;gap:8px}.funnel-box>div{display:flex;justify-content:space-between;padding:12px;border:1px solid #2d3138;border-radius:12px;background:#0d0f13}.funnel-box b{color:#e8c776}.funnel-box .funnel-rate{border-color:#574627;background:#15130e}
/* COMMERCIAL PHASE 5 */
.commercial-v5{max-width:1380px}.commercial-help{margin-top:14px;padding:12px;border:1px solid #3b3424;border-radius:12px;background:#15130e;color:#c9b985}.commercial-v5 td form{margin:0}.commercial-v5 .analytics-table b{color:#e5c577}

/* CUSTOMER EXPERIENCE PHASE 6 */
.experience-filter-strip{width:min(1380px,94%);margin:10px auto 18px;display:flex;gap:7px;overflow-x:auto;padding-bottom:4px}
.xp-filter{white-space:nowrap;border:1px solid #353942;background:#101217;color:#c9cdd3;border-radius:999px;padding:9px 13px;font-weight:800;font-size:11px;cursor:pointer}
.xp-filter.active{border-color:#ad8d4e;color:#ebca7c;background:#18150f}.xp-hidden{display:none!important}
.profile-badges,.profile-public-badges{display:flex;flex-wrap:wrap;gap:5px;margin:7px 0}.profile-badge{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;border:1px solid #3b4048;background:rgba(11,13,17,.9);font-size:9px;font-weight:900;letter-spacing:.03em}
.profile-badge.verified{color:#86ddb6;border-color:#32654f}.profile-badge.updated{color:#e8c675;border-color:#66552f}.profile-badge.custom{color:#f1a5c4;border-color:#703852}
.favorite-btn{position:absolute;top:10px;right:10px;z-index:5;width:36px;height:36px;border-radius:50%;border:1px solid #42464f;background:rgba(8,10,13,.88);color:#9ba0a8;font-size:18px;cursor:pointer}.favorite-btn.active,.profile-favorite-v6.active{color:#f05b95;border-color:#8b3658}

/* OPERATION SECURITY PHASE 7 */
.security-v7{max-width:1380px}.security-checks{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin:16px 0}.security-checks article{display:flex;gap:10px;padding:13px;border:1px solid #343943;border-radius:14px;background:#0d0f13}.security-checks article>span{font-size:20px;font-weight:900}.security-checks article.ok>span{color:#82d9b1}.security-checks article.warn>span{color:#efb760}.security-checks small{display:block;margin-top:4px;color:#9298a1}.security-note{margin-top:14px;padding:12px;border:1px solid #574627;border-radius:12px;background:#15130e;color:#cdbd8e}.backup-list{display:grid;gap:8px}.backup-list>div{display:flex;justify-content:space-between;align-items:center;padding:11px;border:1px solid #2d3138;border-radius:12px;background:#0d0f13}.backup-list span{display:grid;gap:3px}.backup-list small{color:#8d939c}.maintenance-page{min-height:70vh;display:grid;place-items:center;padding:30px}.maintenance-card{max-width:620px;text-align:center;padding:42px;border:1px solid #3a3325;border-radius:24px;background:#101216}.maintenance-card h1{font-size:42px;margin:8px 0 14px}.maintenance-card p{color:#c4c7cc}.maintenance-card small{color:#858b94}@media(max-width:900px){.security-checks{grid-template-columns:1fr 1fr}}@media(max-width:520px){.security-checks{grid-template-columns:1fr}.maintenance-card h1{font-size:32px}}

/* AUTOMATION PHASE 8 */
.automation-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}
.auto-status-card{padding:16px;border:1px solid #30343d;border-radius:16px;background:linear-gradient(145deg,#15171c,#0d0f13)}
.auto-status-card small{display:block;color:#8f959f;font-size:9px;font-weight:900;letter-spacing:.1em}.auto-status-card strong{display:block;margin:7px 0;color:#e4c47a;font-size:19px}.auto-status-card span{font-size:10px;color:#aeb3bc}
.auto-status-card.on{border-color:#32624d}.auto-status-card.on strong{color:#86ddb6}.auto-status-card.off strong{color:#db7c8f}
.automation-warning{margin:12px 0 16px;padding:13px 15px;border:1px solid #66552e;border-radius:13px;background:#17140d;color:#d7c99c;font-size:12px;line-height:1.5}
.automation-form{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}
.automation-section{padding:18px;border:1px solid #2d3139;border-radius:17px;background:#101217}
.automation-section-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:13px}.automation-section-head>span{display:grid;place-items:center;flex:0 0 34px;height:34px;border:1px solid #685733;border-radius:50%;color:#e0bd6f;font-size:10px;font-weight:900}.automation-section-head h2{margin:0 0 3px}.automation-section-head p{margin:0;color:#8f959f;font-size:11px}
.automation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.automation-grid label{color:#c9cdd4;font-size:11px;font-weight:800}.automation-grid select,.automation-grid input{width:100%;min-height:43px;margin-top:5px;border:1px solid #343943;border-radius:11px;background:#090b0e;color:#eef0f3;padding:9px}
.automation-save{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.automation-save span{color:#8f959f;font-size:11px}.workflow-line{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;padding:16px;border:1px solid #2e333b;border-radius:14px;background:#0d0f13}.workflow-line span{padding:8px 11px;border:1px solid #52462f;border-radius:999px;color:#e5c474;font-size:11px;font-weight:800}.workflow-line b{color:#6c727d}
@media(max-width:780px){.automation-status-grid{grid-template-columns:1fr 1fr}.automation-grid{grid-template-columns:1fr}}

/* BLOCK 1 INVITATIONS FIX */
.referral-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.referral-card{padding:16px;border:1px solid #30343d;border-radius:16px;background:#0d0f13}
.referral-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.referral-card-head div{display:grid;gap:3px}
.referral-card-head small{color:#dfbf70;font-family:monospace}
.referral-link-box{margin:10px 0;padding:10px;border:1px dashed #51472f;border-radius:10px;overflow-wrap:anywhere;color:#aeb3bc;font-size:10px}
.referral-actions{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:12px}
.referral-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}
.referral-edit-grid .button{grid-column:1/-1}
@media(max-width:800px){.referral-cards{grid-template-columns:1fr}}
@media(max-width:520px){.referral-edit-grid{grid-template-columns:1fr}.referral-edit-grid .button{grid-column:auto}}

/* BLOCK 2 MULTIMEDIA FIX */
.admin-media-upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}
.admin-media-upload-grid form{padding:14px;border:1px solid #2f343d;border-radius:14px;background:#0d0f13}
.admin-media-upload-grid input{width:100%;margin:8px 0}
.admin-media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.admin-media-item{padding:10px;border:1px solid #30343d;border-radius:14px;background:#0c0e12}
.admin-media-item.cover{border-color:#806b3d}
.admin-media-preview{position:relative;aspect-ratio:4/5;border-radius:11px;overflow:hidden;background:#08090c}
.admin-media-preview img,.admin-media-preview video{width:100%;height:100%;object-fit:cover}
.cover-badge{position:absolute;top:8px;left:8px;padding:5px 7px;border-radius:999px;background:#17130b;border:1px solid #7c6637;color:#e7c575;font-size:8px;font-weight:900}
.admin-media-meta{display:flex;justify-content:space-between;gap:8px;padding:8px 2px}
.admin-media-meta small{color:#858c96}
.admin-media-actions{display:flex;gap:5px;flex-wrap:wrap}
.admin-media-actions form{margin:0}
.empty-media{grid-column:1/-1;padding:20px;text-align:center;border:1px dashed #343943;border-radius:12px;color:#8e949e}

.pending-media-row{display:flex;align-items:center;gap:12px}
.pending-media-preview{width:120px;height:120px;flex:0 0 120px;border-radius:12px;overflow:hidden;background:#090b0e}
.pending-media-preview img,.pending-media-preview video{width:100%;height:100%;object-fit:cover}
.pending-media-info{display:grid;gap:3px;flex:1}
.pending-media-info small,.pending-media-info span{color:#858c96}
.pending-media-info span{font-size:9px;overflow-wrap:anywhere}
.pending-media-actions{display:flex;gap:6px;flex-wrap:wrap}

@media(max-width:800px){
  .admin-media-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .admin-media-upload-grid,.admin-media-grid{grid-template-columns:1fr}
  .pending-media-row{align-items:flex-start}
  .pending-media-preview{width:90px;height:90px;flex-basis:90px}
}

/* BLOCK 4 BADGES FIX */
.badge-control-panel small{display:block;margin-top:5px;color:#858c96;font-size:10px}
.profile-public-badges{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}
.profile-badge.new{border-color:#806b3d;background:#17130b;color:#e7c575}
.profile-badge.verified{border-color:#365f55;background:#0e1b18}
.profile-badge.updated{border-color:#4d5264;background:#14161d}
.profile-badge.custom{border-color:#6a4a68;background:#1b121b}


/* BLOCK 5 CONTACT STICKY FIX
   El bloque de contacto acompaña el scroll sin quedar clavado a una
   coordenada absoluta de la página. */
@media (min-width: 761px){
  .profile-side{
    align-self:start;
  }

  .profile-side .profile-floating-contact,
  .profile-floating-contact.sticky-contact{
    position:sticky !important;
    top:92px !important;
    bottom:auto !important;
    z-index:30;
    max-height:calc(100vh - 112px);
    overflow:auto;
    scrollbar-width:thin;
  }
}

/* En móvil queda accesible sin tapar el contenido principal. */
@media (max-width: 760px){
  .profile-side{
    position:relative !important;
    top:auto !important;
    bottom:auto !important;
  }

  .profile-side .profile-floating-contact,
  .profile-floating-contact.sticky-contact{
    position:sticky !important;
    top:auto !important;
    bottom:10px !important;
    z-index:40;
    max-height:none;
    overflow:visible;
  }

  .profile-floating-contact .contact-actions,
  .profile-floating-contact .contact-buttons{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
  }
}

/* LEGAL PRIVACY V1 */
.legal-warning,.registration-legal-box{padding:12px;border:1px solid #6a5630;border-radius:12px;background:#17130c;color:#dfc98c}.legal-profile-panel{border-color:#51462f}.consent-history,.legal-table{display:grid;gap:7px;margin-top:12px}.consent-history>div,.legal-row{display:flex;justify-content:space-between;gap:10px;padding:10px;border:1px solid #30343d;border-radius:10px;background:#0b0d10}.legal-row small{display:block;color:#888f99}.legal-admin-page .wide{grid-column:1/-1}@media(max-width:650px){.legal-row,.consent-history>div{flex-direction:column}}


/* BLOCK 1 FUNCTIONAL FIX */
html,body{max-width:100%;overflow-x:hidden}
.admin-profile-grid,.profile-grid{min-width:0}
.admin-profile-card,.profile-card{min-width:0;max-width:100%}
.admin-profile-card *,.profile-card *{box-sizing:border-box}
.quick-actions{align-items:center}
.quick-settings-form{display:flex;gap:5px;align-items:center;flex-wrap:wrap;width:100%;margin-top:6px}
.quick-settings-form select{min-width:95px;max-width:145px;padding:6px 8px;font-size:10px}
.admin-inline-notice{position:fixed;right:18px;bottom:18px;z-index:9999;max-width:360px;padding:11px 14px;border:1px solid #5a4750;border-radius:12px;background:#171117;color:#fff;box-shadow:0 12px 30px rgba(0,0,0,.4);opacity:0;pointer-events:none;transform:translateY(10px);transition:.18s ease}
.admin-inline-notice.show{opacity:1;transform:translateY(0)}
.profile-connection{font-size:11px;font-weight:600;margin:5px 0 7px}
.profile-connection.on{color:#8fd2aa}
.profile-connection.off{color:#9398a2}
@media(max-width:700px){
  .quick-settings-form{display:grid;grid-template-columns:1fr 1fr}
  .quick-settings-form select{max-width:none;width:100%}
  .quick-settings-form button{grid-column:1/-1}
  .admin-inline-notice{left:12px;right:12px;bottom:12px;max-width:none}
}

/* BLOCK 2 ADMIN COMPACT */
.compact-profile-list{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
.admin-profile-card.compact{padding:10px 12px!important;min-height:0!important;border-radius:12px}
.compact-row-main{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center}
.compact-check{display:flex;align-items:center}.compact-check input{width:16px;height:16px}
.compact-identity{min-width:0}
.compact-name-line{display:flex;align-items:center;flex-wrap:wrap;gap:6px}
.compact-name-line h3{margin:0 6px 0 0;font-size:15px;line-height:1.15}
.compact-plan,.compact-status{display:inline-flex;align-items:center;min-height:22px;padding:3px 7px;border-radius:999px;border:1px solid #343842;font-size:9px;white-space:nowrap}
.compact-plan{color:#e3c477;border-color:#5e5030;background:#17130b}
.compact-status.status-active{color:#91d2ac;border-color:#315743;background:#0c1711}
.compact-status.status-paused{color:#dfbc73;border-color:#5d4a2f;background:#18130d}
.compact-status.status-pending{color:#b6a9dd;border-color:#49415e;background:#15121d}

.compact-meta{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:5px;color:#8b929c;font-size:10px}
.compact-actions{display:flex;align-items:center;gap:6px}
.compact-details{display:none;margin-top:10px;padding-top:10px;border-top:1px solid #292e36}
.compact-details.open{display:block}
.compact-settings-form{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr)) auto;gap:8px;align-items:end}
.compact-settings-form label{font-size:9px;color:#949ba6}.compact-settings-form select{width:100%;margin-top:4px}
.compact-secondary-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.compact-secondary-actions form{margin:0}
.compact-exact-renew{display:inline-flex!important;gap:4px;align-items:center}.compact-exact-renew input{width:64px!important;min-height:30px!important;padding:4px 6px!important}
.admin-profile-card.compact[hidden]{display:none!important}
@media(max-width:800px){
  .compact-row-main{grid-template-columns:auto 1fr}
  .compact-actions{grid-column:2;justify-self:start}
  .compact-settings-form{grid-template-columns:1fr 1fr}.compact-settings-form button{grid-column:1/-1}
}
@media(max-width:520px){
  .admin-profile-card.compact{position:relative;padding-right:42px!important}
  .compact-row-main{grid-template-columns:1fr}
  .compact-check{position:absolute;right:14px;top:14px}
  .compact-actions{grid-column:1}
  .compact-settings-form{grid-template-columns:1fr}.compact-settings-form button{grid-column:auto}
}

/* BLOCK 3 PROFILE HUB */
.profile-hub{max-width:1180px;margin:0 auto}
.profile-hub-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:14px}
.profile-hub-head h1{margin:3px 0 8px}.profile-hub-head-actions{display:flex;gap:8px;flex-wrap:wrap}
.profile-hub-meta{display:flex;gap:6px;flex-wrap:wrap}
.hub-chip{display:inline-flex;align-items:center;min-height:24px;padding:4px 8px;border:1px solid #343943;border-radius:999px;font-size:9px;color:#bbc1c9}

.profile-hub-tabs{position:sticky;top:0;z-index:20;display:flex;gap:6px;overflow:auto;padding:8px;margin:0 0 12px;background:rgba(10,11,15,.92);backdrop-filter:blur(12px);border:1px solid #262b33;border-radius:12px}
.profile-hub-tabs a{white-space:nowrap;padding:7px 10px;border-radius:9px;color:#aeb4bd;text-decoration:none;font-size:10px}
.profile-hub-tabs a:hover{background:#181b21;color:#fff}.hub-section{scroll-margin-top:74px}
.hub-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}
.hub-summary-card{padding:13px;border:1px solid #2d323a;border-radius:12px;background:#0d0f13}
.hub-summary-card span,.hub-summary-card small{display:block;color:#858c96;font-size:9px}.hub-summary-card strong{display:block;margin:4px 0;font-size:16px}
.hub-quick-form{display:grid;grid-template-columns:repeat(3,minmax(140px,1fr)) auto;gap:8px;align-items:end}.hub-quick-form label{font-size:9px;color:#949ba6}
.hub-edit-form textarea{min-height:100px}.hub-plan-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.hub-plan-row form{margin:0}
.hub-exact-renew{display:flex;gap:6px;align-items:center}.hub-exact-renew input{width:80px}
.hub-history,.hub-consent-history{display:grid;gap:7px;margin-top:14px}
.hub-history-row{display:grid;grid-template-columns:150px 1fr 2fr;gap:10px;align-items:start;padding:9px 10px;border:1px solid #2b3038;border-radius:10px;background:#0c0e12}
.hub-history-row span,.hub-history-row small{color:#858c96;font-size:9px}
.hub-legal-status{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:14px}
.hub-legal-status>div{padding:11px;border-radius:11px;border:1px solid #333842;background:#0d0f13}
.hub-legal-status span{display:block;font-size:9px;color:#8f96a0}.hub-legal-status b{display:block;margin-top:4px}
.hub-legal-status .ok{border-color:#315743}.hub-legal-status .ok b{color:#91d2ac}
.hub-legal-status .warn{border-color:#5d4a2f}.hub-legal-status .warn b{color:#dfbc73}
.hub-legal-status .bad{border-color:#66363a}.hub-legal-status .bad b{color:#e58d95}
@media(max-width:850px){
  .profile-hub-head{flex-direction:column}.hub-summary-grid,.hub-legal-status{grid-template-columns:1fr 1fr}
  .hub-quick-form{grid-template-columns:1fr 1fr}.hub-quick-form button{grid-column:1/-1}
  .hub-history-row{grid-template-columns:1fr}
}
@media(max-width:520px){
  .hub-summary-grid,.hub-legal-status,.hub-quick-form{grid-template-columns:1fr}
  .profile-hub-head-actions{width:100%}.profile-hub-head-actions .button{flex:1;text-align:center}
}

/* BLOCK 4 LEGAL SECURITY */
.legal-gate-note{margin-bottom:12px;padding:11px 12px;border:1px solid #5d4a2f;border-radius:10px;background:#18130d;color:#d8c59b;font-size:10px;line-height:1.5}

/* VERIFICATION MODES V2 */
.verification-choice{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.verification-option{display:flex!important;gap:10px;align-items:flex-start;padding:14px;border:1px solid #343943;border-radius:12px;background:#0d0f13;cursor:pointer}
.verification-option input{width:auto;margin-top:3px}.verification-option span{display:grid;gap:4px}.verification-option small{color:#8f96a0}
.verification-mode-box{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px;margin-bottom:12px;border:1px solid #343943;border-radius:12px;background:#0d0f13}
.verification-mode-box>div{display:grid;gap:3px}.verification-mode-box span,.verification-mode-box small{color:#9299a3;font-size:9px}
.verification-mode-box form{display:flex;gap:6px;align-items:center;margin:0}
@media(max-width:620px){.verification-choice{grid-template-columns:1fr}}

/* BLOCK 5 MULTIMEDIA */
.admin-media-item{position:relative}.admin-media-item .admin-media-meta small{padding:3px 7px;border:1px solid #353a43;border-radius:999px}
.admin-media-item.cover{box-shadow:0 0 0 1px rgba(211,155,191,.35)}.admin-media-actions{display:flex;gap:5px;flex-wrap:wrap}
.admin-media-upload-grid small{display:block;margin-top:4px;color:#858c96;font-size:9px}


/* ============================================================
   BLOCK 6 VISUAL IDENTITY — legacy foundation
   Dirección: ciruela / violeta oscuro + champagne / rosa viejo
   ============================================================ */
:root{
  --lux-bg-0:#08050b;
  --lux-bg-1:#120817;
  --lux-bg-2:#21102a;
  --lux-plum:#35143f;
  --lux-wine:#531c46;
  --lux-rose:#d28aa9;
  --lux-mauve:#b38bc5;
  --lux-champagne:#e8cf9a;
  --lux-gold:#c8a66b;
  --lux-text:#f8f3f7;
  --lux-soft:#d4c9d2;
  --lux-muted:#a89aa8;
  --lux-line:rgba(232,207,154,.18);
  --lux-panel:rgba(23,12,27,.82);
  --lux-panel-strong:rgba(18,9,22,.94);
  --lux-shadow:0 24px 70px rgba(0,0,0,.42);
  --lux-logo-font:"Segoe Script","Snell Roundhand","URW Chancery L","Brush Script MT",cursive;
}

html,body{
  background:
    radial-gradient(circle at 12% 5%,rgba(111,35,110,.20),transparent 31%),
    radial-gradient(circle at 88% 18%,rgba(157,54,104,.16),transparent 28%),
    radial-gradient(circle at 50% 88%,rgba(69,29,93,.16),transparent 34%),
    linear-gradient(145deg,var(--lux-bg-0) 0%,var(--lux-bg-1) 38%,#160a1d 68%,#09060d 100%)!important;
  background-attachment:fixed!important;
  color:var(--lux-text)!important;
}

/* subtle depth rather than flat black */
body:before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.48;
  background:
    linear-gradient(118deg,transparent 0 33%,rgba(210,138,169,.035) 45%,transparent 58%),
    radial-gradient(ellipse at 70% 26%,rgba(232,207,154,.045),transparent 37%);
  mix-blend-mode:screen;
}

.topbar{
  background:linear-gradient(180deg,rgba(12,6,15,.96),rgba(17,8,21,.90))!important;
  border-bottom:1px solid rgba(232,207,154,.15)!important;
  box-shadow:0 10px 36px rgba(0,0,0,.26)!important;
}

/* Signature-style logo, without an external font dependency */
.luxury-brand{
  gap:4px!important;
  min-height:42px;
  position:relative;
}
.luxury-brand .brand-gem{
  font-family:Georgia,serif!important;
  font-size:10px!important;
  font-weight:400!important;
  color:var(--lux-champagne)!important;
  margin-right:4px;
  transform:translateY(-7px);
}
.luxury-brand .brand-legacy,
.luxury-brand .brand-prive{
  font-family:var(--lux-logo-font)!important;
  font-style:italic!important;
  font-weight:400!important;
  line-height:.9!important;
  letter-spacing:-.045em!important;
  font-size:clamp(29px,3vw,41px)!important;
  color:transparent!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  filter:drop-shadow(0 5px 16px rgba(191,91,143,.14));
}
.luxury-brand .brand-legacy{
  background-image:linear-gradient(105deg,#f1d9b1 0%,#dca1ae 48%,#b78fc4 100%)!important;
}
.luxury-brand .brand-prive{
  margin-left:-3px;
  background-image:linear-gradient(100deg,#c38dbd 0%,#e5a0b3 42%,#f0d4a1 100%)!important;
}
nav a{color:#cfc2cd!important}
nav a:hover,nav a.active,.nav-register{color:var(--lux-champagne)!important}

/* Public hero */
.public-home .hero-vip{
  border:1px solid rgba(232,207,154,.18)!important;
  background:
    radial-gradient(circle at 78% 30%,rgba(167,69,133,.22),transparent 32%),
    radial-gradient(circle at 30% 68%,rgba(78,31,101,.24),transparent 38%),
    linear-gradient(115deg,rgba(9,5,13,.99),rgba(31,12,38,.94) 56%,rgba(18,8,23,.95))!important;
  box-shadow:var(--lux-shadow)!important;
}
.public-home .hero-vip:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(8,4,11,.08),transparent 45%,rgba(232,207,154,.035));
}
.public-home .hero-copy{z-index:2}
.public-home .hero-copy h1{
  color:#fff8fc!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-weight:400!important;
  letter-spacing:-.035em!important;
  text-shadow:0 8px 32px rgba(0,0,0,.45);
}
.public-home .hero-copy p{color:#d7cbd6!important;line-height:1.65}
.eyebrow{
  color:var(--lux-champagne)!important;
  letter-spacing:.23em!important;
  font-weight:600!important;
}

/* Buttons */
.button.pink,.owner-contact-button,.goldbtn{
  background:linear-gradient(112deg,#8c3d70 0%,#c46d95 42%,#d8aa87 100%)!important;
  border:1px solid rgba(241,211,169,.42)!important;
  color:#fff!important;
  box-shadow:0 10px 30px rgba(126,46,92,.24)!important;
}
.button.pink:hover,.owner-contact-button:hover,.goldbtn:hover{
  filter:brightness(1.08);
  transform:translateY(-1px);
}
.button.outline,.lightbtn{
  background:rgba(27,14,32,.72)!important;
  border:1px solid rgba(232,207,154,.22)!important;
  color:#eee4ec!important;
}

/* Search and public surfaces */
.public-home .search-card,
.public-home .owner-contact-card,
.public-home .promo-banner{
  background:linear-gradient(145deg,rgba(29,15,34,.94),rgba(14,8,18,.94))!important;
  border-color:rgba(232,207,154,.16)!important;
  box-shadow:0 16px 48px rgba(0,0,0,.34)!important;
}
.public-home .search-card input,
.public-home .search-card select{
  background:#130b18!important;
  color:#eee7ed!important;
  border-color:rgba(232,207,154,.18)!important;
}
.public-home .search-card label{color:#bfb2bd!important}

/* Profile cards: photo leads, text remains readable */
.public-home .profile-card{
  background:linear-gradient(165deg,rgba(30,15,35,.94),rgba(14,8,18,.97))!important;
  border:1px solid rgba(232,207,154,.14)!important;
  box-shadow:0 15px 42px rgba(0,0,0,.30)!important;
}
.public-home .profile-card:hover{
  transform:translateY(-4px);
  border-color:rgba(224,158,188,.34)!important;
  box-shadow:0 25px 60px rgba(0,0,0,.40)!important;
}
.public-home .profile-card.vip{
  border-color:rgba(232,207,154,.34)!important;
  box-shadow:0 18px 48px rgba(111,40,93,.25)!important;
}
.public-home .profile-art{
  min-height:250px;
  background:
    radial-gradient(circle at 30% 18%,rgba(232,207,154,.12),transparent 28%),
    linear-gradient(145deg,#2a1231,#100916 58%,#3b1738)!important;
}
.public-home .profile-cover{
  filter:saturate(.92) contrast(1.03);
}
.public-home .profile-art:after{
  content:"";
  position:absolute;
  inset:55% 0 0;
  pointer-events:none;
  background:linear-gradient(transparent,rgba(10,5,13,.60));
}
.public-home .profile-body{
  padding:18px 18px 17px!important;
}
.public-home .profile-title h3{
  color:#fff7fb!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:27px!important;
  font-weight:400!important;
  letter-spacing:-.025em!important;
}
.public-home .profile-title>span{
  color:#dfcfdc!important;
  font-size:14px;
}
.public-home .location{
  color:var(--lux-champagne)!important;
  font-size:12px!important;
  letter-spacing:.02em;
}
.public-home .profile-excerpt{
  color:#d4cbd3!important;
  font-size:14px!important;
  line-height:1.65!important;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
  min-height:68px;
}
.public-home .profile-connection{
  font-size:11px!important;
  margin:7px 0 4px!important;
}
.public-home .profile-connection.on{color:#9ed7b2!important}
.public-home .profile-connection.off{color:#968c98!important}
.public-home .card-footer{
  color:#b8acb7!important;
  border-color:rgba(232,207,154,.12)!important;
}
.public-home .card-footer a{
  color:#e3bfcc!important;
}
.public-home .profile-availability{color:#b6a9b4!important}

/* Harmonised badges */
.public-home .profile-badge,
.public-profile-page .profile-badge,
.public-home .plan-badge{
  border-radius:999px!important;
  border:1px solid rgba(232,207,154,.22)!important;
  background:rgba(19,9,23,.78)!important;
  color:#eadfe7!important;
  backdrop-filter:blur(10px);
  box-shadow:none!important;
}
.public-home .profile-badge.verified,
.public-profile-page .profile-badge.verified{color:#b9ddc5!important;border-color:rgba(122,190,148,.32)!important}
.public-home .profile-badge.new,
.public-profile-page .profile-badge.new{color:#efd6aa!important}

/* Full public profile */
.public-profile-page .profile-head h1{
  font-family:Georgia,"Times New Roman",serif!important;
  font-weight:400!important;
  color:#fff8fb!important;
}
.public-profile-page .profile-head p,
.public-profile-page .description,
.public-profile-page .panel p{color:#d1c7cf!important;line-height:1.7}
.public-profile-page .panel,
.public-profile-page .sticky-contact{
  background:linear-gradient(150deg,rgba(29,15,34,.92),rgba(13,8,17,.95))!important;
  border:1px solid rgba(232,207,154,.16)!important;
  box-shadow:0 15px 46px rgba(0,0,0,.28)!important;
}
.public-profile-page .panel h2{
  color:#fff4f9!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-weight:400!important;
}
.public-profile-page .media-grid img,
.public-profile-page .media-grid video{
  border-radius:16px;
  box-shadow:0 16px 46px rgba(0,0,0,.32);
}

/* Footer */
.legal-footer{
  background:linear-gradient(180deg,rgba(13,7,16,.62),rgba(8,5,11,.96))!important;
  border-top:1px solid rgba(232,207,154,.12)!important;
}
.legal-footer a{color:#a99ca7!important}
.legal-footer a:hover{color:var(--lux-champagne)!important}

/* Age gate follows the new identity */
.age-gate{
  background:rgba(7,4,10,.88)!important;
}
.age-card{
  background:
    radial-gradient(circle at 50% 0,rgba(166,75,132,.20),transparent 34%),
    linear-gradient(150deg,#211026,#100915)!important;
  border:1px solid rgba(232,207,154,.28)!important;
  box-shadow:0 35px 110px rgba(0,0,0,.58)!important;
}
.age-card h1{color:#fff6fb!important;font-family:Georgia,"Times New Roman",serif!important;font-weight:400!important}
.age-card p{color:#cfc3cd!important}

/* Admin remains functional and restrained; only background/palette are harmonised */
.dashboard .panel,.admin-page .panel,.dashboard .stats>div,.sidebar{
  background:linear-gradient(145deg,rgba(24,14,28,.95),rgba(13,9,17,.97))!important;
  border-color:rgba(232,207,154,.13)!important;
}
.dashboard input,.dashboard select,.dashboard textarea,
.admin-page input,.admin-page select,.admin-page textarea{
  background:#120b16!important;
  color:#f1e9ef!important;
  border-color:rgba(232,207,154,.16)!important;
}
.dashboard p,.dashboard small,.admin-page p,.admin-page small{color:#aaa0aa!important}

/* Responsive readability */
@media(max-width:720px){
  .luxury-brand .brand-legacy,.luxury-brand .brand-prive{font-size:31px!important}
  .public-home .profile-art{min-height:230px}
  .public-home .profile-excerpt{font-size:13.5px!important}
}


/* ============================================================
   BLOCK 7 CONTACT SCROLL
   ============================================================ */

.public-home .hero-copy{max-width:690px!important}
.public-home .owner-contact-card{z-index:3}

/* Desktop contact rail follows the viewport while staying inside its column. */
.public-profile-page .profile-layout{
  align-items:start!important;
}
.public-profile-page .profile-floating-contact{
  position:sticky!important;
  top:92px!important;
  align-self:start!important;
  height:max-content!important;
  z-index:20;
}
.public-profile-page .contact-rail-card{
  position:relative!important;
  top:auto!important;
  margin:0!important;
  max-height:calc(100vh - 112px);
  overflow:auto;
  scrollbar-width:thin;
}
.public-profile-page .contact-bubble{
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.public-profile-page .contact-bubble:hover{
  transform:translateY(-2px);
  border-color:rgba(232,207,154,.38)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.24)!important;
}

/* On phones, sticky sidebars are awkward: use a bottom contact dock. */
.mobile-contact-dock{display:none}
@media(max-width:900px){
  .public-profile-page .profile-floating-contact{
    position:static!important;
    top:auto!important;
  }
  .public-profile-page .contact-rail-card{max-height:none;overflow:visible}
  .mobile-contact-dock{
    position:fixed;
    display:flex;
    left:12px;right:12px;bottom:12px;
    z-index:90;
    gap:8px;
    padding:8px;
    border:1px solid rgba(232,207,154,.20);
    border-radius:18px;
    background:rgba(15,8,19,.92);
    backdrop-filter:blur(16px);
    box-shadow:0 18px 50px rgba(0,0,0,.44);
  }
  .mobile-contact-dock:empty{display:none}
  .mobile-contact-dock a{
    flex:1;
    min-height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
    border-radius:12px;
    color:#fff;
    font-weight:700;
    background:linear-gradient(115deg,#8d3d70,#c56d96 55%,#c99779);
    border:1px solid rgba(239,211,174,.25);
  }
  .public-profile-page{padding-bottom:78px!important}
}
@media(max-width:600px){
}


/* ============================================================
   BLOCK 8 RESPONSIVE POLISH
   ============================================================ */
*,*:before,*:after{box-sizing:border-box}
html{overflow-x:hidden}
body{min-width:0;overflow-x:hidden}
img,video{max-width:100%;height:auto}
input,select,textarea,button{max-width:100%}

/* Keep long labels, aliases, emails and URLs from breaking layouts */
.profile-card,.panel,.admin-profile-row,.hub-card,.stat-card{min-width:0}
.profile-card h3,.profile-card p,.panel p,.panel small,.admin-profile-row span,.admin-profile-row strong{
  overflow-wrap:anywhere;
}

/* Public grids scale smoothly instead of jumping between oversized cards */
.public-home .profile-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,245px),1fr))!important;
  gap:clamp(13px,2vw,22px)!important;
}
.public-home .search-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))!important;
}
.public-home .hero-vip{
  min-height:clamp(370px,53vw,570px)!important;
}
.public-home .hero-copy{
  padding:clamp(28px,5vw,68px)!important;
}
.public-home .hero-copy h1{
  font-size:clamp(38px,7vw,78px)!important;
  line-height:.96!important;
}
.public-home .hero-copy p{
  max-width:640px;
  font-size:clamp(14px,1.6vw,17px)!important;
}
.public-home .profile-art{
  aspect-ratio:4/5;
  min-height:0!important;
}
.public-home .profile-cover{
  width:100%;height:100%;object-fit:cover;
}
.public-home .profile-card .profile-body{min-width:0}
.public-home .card-footer{gap:8px;flex-wrap:wrap}

/* Profile page remains readable at intermediate tablet widths */
.public-profile-page .profile-layout{
  grid-template-columns:minmax(0,1fr) minmax(250px,330px)!important;
  gap:clamp(18px,3vw,36px)!important;
}
.public-profile-page .profile-main{min-width:0}
.public-profile-page .media-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))!important;
}
.public-profile-page .media-grid img,
.public-profile-page .media-grid video{
  width:100%;aspect-ratio:4/5;object-fit:cover;
}

/* Forms: no microscopic controls, better touch targets */
.form-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr))!important;
}
input,select,textarea{
  min-height:42px;
}
textarea{min-height:100px}
button,.button,.tiny{
  touch-action:manipulation;
}
.button{min-height:42px;display:inline-flex;align-items:center;justify-content:center}
.tiny{min-height:34px}

/* Admin: tables/rows may scroll rather than stretching the whole page */
.dashboard,.admin-page,.control-center{min-width:0}
.dashboard .panel,.admin-page .panel,.control-center .panel{min-width:0}
.admin-profile-list,.table-wrap,.admin-table-wrap{
  max-width:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}
.admin-profile-row{
  min-width:0!important;
}
.admin-media-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))!important;
}
.admin-media-item img,.admin-media-item video{
  width:100%;aspect-ratio:4/5;object-fit:cover;
}

/* Prevent fixed/floating UI from colliding with footer/content */
.mobile-contact-dock{
  padding-bottom:max(8px,env(safe-area-inset-bottom));
}
.age-card{
  width:min(92vw,520px)!important;
  max-height:calc(100dvh - 28px);
  overflow:auto;
}

/* Tablet */
@media(max-width:1024px){
  .topbar{padding-left:18px!important;padding-right:18px!important}
  .public-home,.public-profile-page{padding-left:18px!important;padding-right:18px!important}
  .dashboard,.admin-page,.control-center{padding-left:14px!important;padding-right:14px!important}
  .public-profile-page .profile-layout{
    grid-template-columns:minmax(0,1fr) 280px!important;
  }
}

/* Mobile navigation + single-column public experience */
@media(max-width:760px){
  .topbar{
    min-height:auto!important;
    padding:10px 12px!important;
    gap:8px!important;
    flex-wrap:wrap!important;
  }
  .topbar nav{
    width:100%;
    display:flex!important;
    gap:6px!important;
    overflow-x:auto;
    padding:3px 0 1px;
    scrollbar-width:none;
  }
  .topbar nav::-webkit-scrollbar{display:none}
  .topbar nav a{
    flex:0 0 auto;
    white-space:nowrap;
    padding:8px 10px!important;
  }
  .luxury-brand{max-width:100%}
  .luxury-brand .brand-legacy,.luxury-brand .brand-prive{font-size:29px!important}

  .public-home,.public-profile-page{
    padding-left:12px!important;
    padding-right:12px!important;
  }
  .public-home .hero-vip{
    min-height:440px!important;
    border-radius:18px!important;
  }
  .public-home .hero-copy{
    padding:28px 20px!important;
    align-self:flex-end;
  }
  .public-home .hero-copy h1{
    font-size:clamp(39px,13vw,58px)!important;
  }
  .public-home .hero-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%;
  }
  .public-home .hero-actions .button{width:100%}
  .public-home .profile-grid{grid-template-columns:1fr!important}
  .public-home .profile-art{aspect-ratio:5/6}
  .public-home .profile-excerpt{min-height:0!important}
  .public-home .search-card{padding:15px!important}
  .public-home .search-grid{grid-template-columns:1fr!important}

  .public-profile-page .profile-layout{
    grid-template-columns:1fr!important;
  }
  .public-profile-page .profile-side{width:100%}
  .public-profile-page .media-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .public-profile-page .profile-head{
    display:grid!important;
    gap:8px!important;
  }

  /* Admin stacks rather than becoming a tiny desktop page */
  .dashboard,.admin-page,.control-center{
    padding-left:10px!important;padding-right:10px!important;
  }
  .dashboard .stats,.admin-page .stats{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .form-grid,.automation-grid,.hub-grid{
    grid-template-columns:1fr!important;
  }
  .admin-profile-row{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    padding:12px!important;
  }
  .admin-profile-row .actions,.admin-media-actions{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:6px!important;
  }
  .admin-profile-row .actions form{flex:0 0 auto}
  .sidebar{
    position:static!important;
    width:100%!important;
    max-height:none!important;
  }
}

/* Small phones */
@media(max-width:430px){
  .public-home .hero-vip{min-height:420px!important}
  .public-home .hero-copy{padding:24px 16px!important}
  .public-home .hero-copy h1{font-size:42px!important}
  .public-profile-page .media-grid{grid-template-columns:1fr!important}
  .dashboard .stats,.admin-page .stats{grid-template-columns:1fr!important}
  .button{width:100%}
  .admin-media-actions .tiny,.admin-profile-row .actions .tiny{width:auto}
  .mobile-contact-dock{left:8px!important;right:8px!important;bottom:8px!important}
}

/* Reduced motion */
@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{
    scroll-behavior:auto!important;
    transition-duration:.01ms!important;
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
  }
}

/* BLOQUE FUNCIONAL */
.profile-management-toolbar{display:grid;gap:10px}
.profile-filter-row{display:grid;grid-template-columns:minmax(220px,1.6fr) repeat(3,minmax(145px,.7fr));gap:8px}
.profile-filter-summary{display:flex;align-items:center;gap:8px;color:#aaa0aa;font-size:11px}.profile-filter-summary .tiny{margin-left:auto}
.compact-profile-list{display:grid!important;grid-template-columns:1fr!important;gap:7px!important}
.admin-profile-card.compact{padding:0!important;overflow:hidden}.compact-row-main{min-height:58px;padding:9px 11px!important}
.compact-details{display:none!important;padding:10px 12px!important;border-top:1px solid rgba(232,207,154,.11)}
.compact-details.open{display:block!important}.compact-settings-form{display:grid!important;grid-template-columns:repeat(4,minmax(120px,1fr));gap:7px;align-items:end}
.compact-secondary-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.bulk-profile-bar{border-top:1px solid rgba(232,207,154,.10);padding-top:9px}
.admin-profile-card[hidden]{display:none!important}
@media(max-width:900px){.profile-filter-row{grid-template-columns:1fr 1fr}.compact-settings-form{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.profile-filter-row,.compact-settings-form{grid-template-columns:1fr}.bulk-profile-bar,.bulk-controls{display:grid!important;grid-template-columns:1fr!important}}

/* BLOCK 10 FINAL AUDIT */
.flash-wrap{max-width:min(420px,calc(100vw - 24px))}
.flash{overflow-wrap:anywhere}
@media(max-width:560px){
  .flash-wrap{left:12px!important;right:12px!important;top:72px!important}
}

.legal-testing-notice{padding:14px 16px;border:1px solid rgba(211,171,92,.35);border-radius:14px;background:rgba(211,171,92,.08)}
.seo-search-intent{opacity:.92}


/* National location architecture */
.brand-dynamic{letter-spacing:.01em}.location-admin-shell{display:block;max-width:1280px;margin:0 auto}.location-admin-content{width:100%}.location-default-form,.location-toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.location-default-form select,.location-toolbar input{min-width:260px}.location-toolbar{justify-content:space-between;margin:10px 0 18px}.province-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.province-admin-card{display:flex;justify-content:space-between;gap:14px;align-items:center;border:1px solid rgba(255,255,255,.10);border-radius:16px;padding:16px;background:rgba(255,255,255,.025)}.province-admin-card h3{margin:7px 0 4px}.province-admin-card p{margin:0 0 7px;color:var(--muted,#aaa);font-size:.88rem}.province-state{font-size:.68rem;font-weight:800;letter-spacing:.08em;padding:4px 7px;border-radius:999px}.province-state.on{background:rgba(73,190,120,.16);color:#7ee2a4}.province-state.off{background:rgba(255,255,255,.07);color:#aaa}.public-search-form select[name="province"]{font-weight:700}@media(max-width:900px){.province-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.province-admin-grid{grid-template-columns:1fr}.province-admin-card{align-items:flex-start}.location-toolbar input{min-width:100%;width:100%}}

/* ============================================================
   ELARYVE — NATIONAL PRODUCTION LAYER
   Neutral visual identity, location-first navigation and scalable UI.
   ============================================================ */
:root{
  --pv-bg:#09080d;--pv-bg2:#100c14;--pv-card:#151019;--pv-card2:#1b1320;
  --pv-gold:#e5c47f;--pv-gold2:#b99453;--pv-rose:#d95487;--pv-text:#f6f0f4;
  --pv-muted:#afa4ae;--pv-line:rgba(229,196,127,.16);--pv-shadow:0 28px 70px rgba(0,0,0,.34)
}
body{background:radial-gradient(circle at 82% -10%,rgba(139,67,126,.13),transparent 27%),radial-gradient(circle at 6% 18%,rgba(210,162,91,.07),transparent 28%),var(--pv-bg)!important;color:var(--pv-text)}
.topbar{background:rgba(9,8,13,.88)!important;border-bottom:1px solid var(--pv-line)!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.luxury-brand{display:flex!important;align-items:center!important;gap:10px!important;text-decoration:none!important;font-style:normal!important}
.luxury-brand .brand-gem{width:32px;height:32px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(145deg,#f0d59d,#a77c3f);color:#100b10;font-family:Georgia,serif;font-size:19px;font-weight:700;box-shadow:0 8px 24px rgba(212,169,91,.16)}
.luxury-brand .brand-prive{font-family:Georgia,"Times New Roman",serif!important;font-style:normal!important;font-size:27px!important;letter-spacing:.02em!important;margin:0!important;background:linear-gradient(100deg,#fff4d9,#dcb66f 60%,#e686ad)!important;-webkit-background-clip:text!important;background-clip:text!important;color:transparent!important;text-shadow:none!important}
.luxury-brand .brand-prive:after{display:none!important}
.topbar nav a{letter-spacing:.01em}
.footer-brand{color:var(--pv-gold);font-weight:700;margin-right:auto}
.legal-footer{gap:14px!important;align-items:center!important}

.national-home,.location-page{max-width:1380px;margin:0 auto;padding:28px clamp(16px,3vw,42px) 60px}
.national-hero,.location-hero{position:relative;overflow:hidden;min-height:520px;border:1px solid var(--pv-line);border-radius:32px;background:linear-gradient(125deg,#17101d 0%,#0d0a11 48%,#17101a 100%);box-shadow:var(--pv-shadow);display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,370px);gap:36px;align-items:center;padding:clamp(34px,6vw,82px);isolation:isolate}
.location-hero{min-height:360px;margin-bottom:22px;background-size:cover;background-position:center}
.national-hero:after,.location-hero:after{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(110deg,rgba(9,7,12,.1),rgba(9,7,12,.5))}
.national-hero-ambience{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.national-hero-ambience i{position:absolute;border:1px solid rgba(229,196,127,.13);border-radius:50%;filter:drop-shadow(0 0 35px rgba(204,91,144,.08))}
.national-hero-ambience i:nth-child(1){width:560px;height:560px;right:-140px;top:-180px}
.national-hero-ambience i:nth-child(2){width:380px;height:380px;right:-22px;top:-72px;border-color:rgba(217,84,135,.15)}
.national-hero-ambience i:nth-child(3){width:170px;height:170px;right:125px;top:34px;border-color:rgba(229,196,127,.2)}
.national-hero-ambience span{position:absolute;width:50%;height:100%;right:0;background:linear-gradient(135deg,transparent 20%,rgba(193,70,126,.06),transparent 72%),repeating-linear-gradient(90deg,transparent 0 48px,rgba(229,196,127,.025) 49px 50px)}
.national-hero-copy,.location-hero-copy{position:relative;z-index:2;max-width:760px}
.national-hero-copy h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(62px,9vw,126px);line-height:.83;margin:8px 0 18px;font-weight:400;letter-spacing:-.055em;background:linear-gradient(100deg,#fff,#e5c47f 70%,#df6b9a);-webkit-background-clip:text;background-clip:text;color:transparent}
.national-hero-copy h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(26px,3.5vw,48px);line-height:1.08;margin:0 0 18px;color:#f5eaf0}
.national-hero-copy>p,.location-hero-copy>p{color:var(--pv-muted);max-width:680px;font-size:17px;line-height:1.7}
.location-hero-copy h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(42px,6vw,74px);line-height:1;margin:8px 0 18px;font-weight:400;color:#fff4f8}
.location-result-count{display:inline-flex;margin-top:15px;padding:8px 12px;border-radius:999px;border:1px solid var(--pv-line);color:var(--pv-gold);background:rgba(10,7,12,.5)}
.home-location-picker{margin-top:30px;max-width:650px}.home-location-picker>label{display:block;margin-bottom:9px;color:#d9ccd4;font-weight:700}.home-location-picker>div{display:flex;gap:10px;padding:7px;border-radius:16px;background:rgba(7,5,9,.58);border:1px solid var(--pv-line)}.home-location-picker select{flex:1;min-width:0;background:#120d16!important;color:#fff!important;border:0!important;border-radius:11px!important;padding:0 14px!important}
.national-trust-card,.owner-contact-card{position:relative;z-index:2;background:linear-gradient(150deg,rgba(31,19,34,.88),rgba(13,10,16,.84))!important;border:1px solid rgba(229,196,127,.22)!important;border-radius:24px!important;padding:28px!important;box-shadow:0 20px 60px rgba(0,0,0,.28)!important;backdrop-filter:blur(12px)}
.location-hero>.owner-contact-card{position:relative!important;inset:auto!important;transform:none!important;width:100%!important;margin:0!important;justify-self:stretch;align-self:center}
.national-trust-card>span,.contact-kicker{color:var(--pv-gold);font-size:11px;font-weight:800;letter-spacing:.14em}.national-trust-card strong{display:block;font-family:Georgia,serif;font-size:34px;font-weight:400;margin:10px 0}.national-trust-card p{color:var(--pv-muted);line-height:1.6}.trust-points{display:flex;flex-wrap:wrap;gap:7px;margin-top:20px}.trust-points b{font-size:11px;padding:7px 9px;border-radius:999px;background:rgba(229,196,127,.07);border:1px solid var(--pv-line);color:#e9d9df}
.province-directory{padding-inline:0!important}.province-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.province-public-card{position:relative;text-decoration:none;color:var(--pv-text);padding:24px;min-height:160px;border-radius:20px;border:1px solid var(--pv-line);background:linear-gradient(145deg,rgba(27,19,32,.86),rgba(14,10,17,.94));transition:.2s ease;display:grid;grid-template-columns:1fr auto;align-content:start}.province-public-card:hover{transform:translateY(-3px);border-color:rgba(229,196,127,.36);box-shadow:0 18px 44px rgba(0,0,0,.24)}.province-public-card span{font-family:Georgia,serif;font-size:25px}.province-public-card strong{font-size:26px;color:var(--pv-gold)}.province-public-card small{grid-column:1/3;color:var(--pv-muted);margin-top:5px}.province-public-card i{grid-column:1/3;align-self:end;margin-top:28px;color:#e98bb0;font-style:normal;font-weight:700}
.national-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px}.national-principles article{padding:25px;border-top:1px solid var(--pv-line);background:linear-gradient(180deg,rgba(255,255,255,.015),transparent)}.national-principles article>span{color:var(--pv-gold);font-size:12px;letter-spacing:.15em}.national-principles h3{font-family:Georgia,serif;font-weight:400;font-size:25px;margin:9px 0}.national-principles p{color:var(--pv-muted);line-height:1.6}
.location-page .search-card{position:relative;z-index:3;margin-top:-48px!important;margin-left:24px!important;margin-right:24px!important;box-shadow:0 20px 55px rgba(0,0,0,.3)!important}.public-search-form select,.public-search-form input{min-height:44px}
.pagination{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;margin:26px auto;max-width:760px;padding:12px;border:1px solid var(--pv-line);border-radius:15px;background:rgba(20,14,24,.76)}.pagination a{color:var(--pv-gold);text-decoration:none;font-weight:700}.pagination a:last-child{text-align:right}.pagination strong{text-align:center;color:#d8cbd3;font-size:13px}.other-provinces{display:grid!important;grid-template-columns:minmax(200px,320px) 1fr!important;align-items:center!important;gap:24px!important}.province-link-cloud{display:flex;flex-wrap:wrap;gap:8px}.province-link-cloud a{padding:8px 11px;border-radius:999px;text-decoration:none;color:#ded1d8;border:1px solid var(--pv-line);background:rgba(255,255,255,.018)}.province-link-cloud a:hover{color:#fff;border-color:rgba(217,84,135,.36)}
.empty-location{text-align:center;padding:52px!important}.empty-location h2{font-family:Georgia,serif;font-size:34px;font-weight:400}.server-filter-form{align-items:end!important}.server-filter-form .button{min-height:42px;display:inline-flex;align-items:center;justify-content:center}.admin-pagination{margin:20px 0 0;max-width:none}.profile-filter-summary{color:var(--pv-muted)}
.security-checks{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;margin-bottom:18px}.security-check{display:flex;gap:12px;padding:15px;border:1px solid var(--pv-line);border-radius:14px;background:var(--pv-card)}.security-check>span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-weight:900}.security-check.ok>span{background:rgba(57,180,119,.13);color:#79dda8}.security-check.warn>span{background:rgba(229,196,127,.12);color:var(--pv-gold)}.security-check b,.security-check small{display:block}.security-check small{margin-top:4px}.totp-setup code{display:block;word-break:break-all;padding:12px;border:1px solid var(--pv-line);border-radius:10px;background:#0c0910;color:var(--pv-gold);font-size:16px;letter-spacing:.1em}.totp-setup textarea{width:100%;margin:10px 0 18px}.security-status.success{padding:12px 14px;border-radius:12px;background:rgba(57,180,119,.09);border:1px solid rgba(57,180,119,.22);color:#9be2b9;margin-bottom:16px}
.auth-card{max-width:560px;margin:7vh auto!important}.auth-card input{text-align:center;font-size:28px;letter-spacing:.24em}

@media(max-width:900px){.national-hero,.location-hero{grid-template-columns:1fr;min-height:auto;padding:42px 28px}.national-trust-card,.owner-contact-card{max-width:520px}.national-principles{grid-template-columns:1fr}.other-provinces{grid-template-columns:1fr!important}.location-page .search-card{margin:-22px 8px 0!important}.national-hero-copy h1{font-size:clamp(55px,17vw,90px)}}
@media(max-width:600px){.national-home,.location-page{padding:14px 12px 44px}.national-hero,.location-hero{border-radius:23px;padding:32px 20px}.home-location-picker>div{flex-direction:column}.province-card-grid{grid-template-columns:1fr}.pagination{grid-template-columns:1fr 1fr}.pagination strong{grid-column:1/3;grid-row:1}.pagination a{grid-row:2}.national-hero-copy h1{font-size:58px}.location-hero-copy h1{font-size:43px}.footer-brand{width:100%;margin:0 0 6px}.legal-footer{justify-content:flex-start!important}}

/* Decisiones de moderación: motivo visible y trazable */
.moderation-decision-actions,.decision-form{display:flex;gap:.55rem;align-items:center;flex-wrap:wrap}
.decision-form textarea,.moderation-row textarea{min-width:220px;max-width:420px;background:#0f0d14;color:#f5edf1;border:1px solid rgba(233,199,131,.28);border-radius:10px;padding:.55rem .65rem;resize:vertical}
@media (max-width:760px){.moderation-decision-actions,.decision-form{align-items:stretch;flex-direction:column}.decision-form textarea,.moderation-row textarea{min-width:0;width:100%;max-width:none}}

/* National location manager */
.city-manager-panel{scroll-margin-top:96px}.city-chip-grid{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1rem}.city-chip{display:inline-flex;align-items:center;gap:.55rem;padding:.55rem .75rem;border:1px solid var(--border);border-radius:999px;background:rgba(255,255,255,.035)}.city-chip button{border:0;background:transparent;color:inherit;font-size:1.15rem;cursor:pointer;line-height:1}.province-card-links{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:.55rem}.province-card-links a{font-size:.86rem}.muted{opacity:.72}

/* Legal R2 · cookie consent, legal update and compact compliance forms */
.cookie-consent{position:fixed;z-index:1200;left:18px;right:18px;bottom:18px;display:flex;gap:20px;align-items:center;justify-content:space-between;padding:18px 20px;border:1px solid rgba(232,207,154,.35);border-radius:18px;background:rgba(12,10,16,.96);box-shadow:0 24px 70px rgba(0,0,0,.48);backdrop-filter:blur(16px);color:#f6edf2}.cookie-consent strong{display:block;font-size:1.02rem;color:#f3d9a4}.cookie-consent p{margin:.35rem 0 0;max-width:720px;color:#cfc5ce}.cookie-consent-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.cookie-consent-actions form{margin:0}.cookie-consent-actions .button{min-width:112px;text-align:center}.cookie-policy-actions,.legal-update-links{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.cookie-policy-actions form{margin:0}.legal-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:18px 0}.legal-stats p{margin:0;padding:14px;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:rgba(255,255,255,.025)}.compact-legal-form{margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.08)}.compact-legal-form textarea{min-height:72px}.legal-row.privacy-row{align-items:flex-start}.report-actions select{width:100%;margin-bottom:8px}.legal-testing-notice{border-left:3px solid #d7b46a;padding:12px 14px;background:rgba(215,180,106,.08);border-radius:8px}.legal-version{margin-top:28px;padding-top:14px;border-top:1px solid rgba(255,255,255,.1);font-size:.88rem;color:#a99ca8}
@media(max-width:780px){.cookie-consent{flex-direction:column;align-items:stretch;left:10px;right:10px;bottom:10px}.cookie-consent-actions{display:grid;grid-template-columns:1fr 1fr}.cookie-consent-actions .button{width:100%;min-width:0}.cookie-consent-actions>a{grid-column:1/-1}}

/* ============================================================
   ELARYVE · PORTADA FINAL DE PUBLICACIÓN
   Inspirada en el diseño nocturno elegido por el propietario.
   Usa datos reales de la BD; no contiene cifras ni perfiles ficticios.
   ============================================================ */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.final-home{max-width:1536px!important;padding-top:0!important}
.final-home-hero{position:relative;min-height:480px;overflow:hidden;border-bottom:1px solid rgba(221,48,170,.28);background:radial-gradient(circle at 70% 20%,rgba(178,18,131,.22),transparent 30%),linear-gradient(105deg,#05060e 0%,#070816 47%,#120815 100%);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);align-items:stretch;isolation:isolate}
.final-home-hero:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 10% 50%,rgba(108,0,118,.13),transparent 33%),linear-gradient(90deg,rgba(3,4,10,.98) 0%,rgba(3,4,10,.84) 43%,rgba(3,4,10,.05) 75%)}
.final-hero-copy{position:relative;z-index:4;padding:58px clamp(26px,5vw,74px) 46px;max-width:740px;align-self:center}
.final-brand-kicker{color:#e83aaa!important;font-size:11px!important;letter-spacing:.2em!important;text-transform:uppercase;font-weight:800;margin:0 0 20px!important}
.final-hero-copy h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(48px,5.4vw,82px);font-weight:400;line-height:.98;letter-spacing:-.035em;color:#f6f3f7;margin:0 0 18px;max-width:760px}
.final-hero-copy h1::first-line{color:#f6f3f7}
.final-hero-text{max-width:590px!important;color:#bdb6c0!important;font-size:16px!important;line-height:1.55!important;margin:0 0 26px!important}
.final-hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.final-primary,.final-secondary{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:26px;padding:0 28px;border-radius:7px;text-decoration:none;font-weight:750;transition:.18s ease}
.final-primary{color:#fff;background:linear-gradient(100deg,#f20d91,#7a19c9);box-shadow:0 0 28px rgba(226,12,151,.28);border:1px solid rgba(255,58,191,.58)}
.final-primary:hover{transform:translateY(-2px);box-shadow:0 0 38px rgba(226,12,151,.38)}
.final-secondary{color:#f5eff5;border:1px solid rgba(255,255,255,.45);background:rgba(5,5,9,.48)}
.final-secondary span{font-size:11px;border:1px solid rgba(255,255,255,.5);border-radius:50%;width:20px;height:20px;display:grid;place-items:center}
.final-hero-model{position:absolute;right:22%;top:0;bottom:0;width:min(35vw,510px);z-index:1;overflow:hidden;filter:saturate(1.04) contrast(1.02)}
.final-hero-model:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#070816 0%,transparent 23%,transparent 83%,rgba(5,5,10,.58) 100%)}
.final-hero-model img{width:100%;height:100%;object-fit:cover;object-position:center 28%;display:block}
.final-province-finder{position:absolute;z-index:5;right:32px;top:50%;transform:translateY(-50%);width:min(310px,27vw);padding:20px;border-radius:10px;border:1px solid rgba(255,255,255,.24);background:rgba(9,8,14,.72);box-shadow:0 22px 70px rgba(0,0,0,.4);backdrop-filter:blur(12px)}
.final-finder-title{display:flex;gap:12px;align-items:center;color:#fff;margin-bottom:14px}.final-finder-title strong{font-size:15px;line-height:1.35}.final-pin{font-size:28px;color:#f42eaa}
.final-province-finder select{width:100%;height:46px;border:1px solid rgba(255,255,255,.25);border-radius:6px;background:#19171f;color:#f6f2f7;padding:0 12px;margin-bottom:10px}
.final-province-finder button{width:100%;height:46px;border:0;border-radius:6px;color:#fff;font-weight:800;background:linear-gradient(100deg,#ef0e91,#8d10bb);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:20px}
.final-province-finder small{display:block;text-align:center;color:#bdb7c1;margin-top:13px;font-size:11px}
.final-featured,.final-provinces{padding:25px clamp(14px,3vw,42px) 18px;background:#08080d;border-bottom:1px solid rgba(255,255,255,.06)}
.final-section-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:15px}.final-section-title>div{display:flex;align-items:center;gap:9px}.final-section-title h2{font:400 22px Georgia,serif;color:#f5edf4;margin:0}.final-section-title>a{color:#ec5cbd;text-decoration:none;font-size:12px}.final-section-note{font-size:11px;color:#a99fac}.final-diamond,.final-lightning{color:#f42eaa;font-size:24px}
.final-profile-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.final-profile-card{position:relative;overflow:hidden;min-width:0;border:1px solid rgba(234,41,171,.36);border-radius:9px;background:#101015}.final-profile-card a{display:block;color:inherit;text-decoration:none}.final-profile-image{height:186px;background:radial-gradient(circle at 50% 20%,#2d1e35,#0d0b10 68%);display:grid;place-items:center;overflow:hidden}.final-profile-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s ease}.final-profile-image>span{font:54px Georgia,serif;color:#df76b9}.final-profile-card:hover img{transform:scale(1.035)}
.final-profile-overlay{position:absolute;left:0;right:0;bottom:0;padding:28px 10px 9px;background:linear-gradient(transparent,rgba(6,6,9,.94) 48%)}.final-profile-overlay strong,.final-profile-overlay span,.final-profile-overlay small{display:block}.final-profile-overlay strong{font-size:14px;color:#fff}.final-profile-overlay span{font-size:11px;color:#d2cbd4;margin-top:2px}.final-profile-overlay small{font-size:10px;color:#61d889;margin-top:4px}
.final-empty-state{padding:28px;border:1px dashed rgba(255,255,255,.12);border-radius:9px;color:#9f97a2;text-align:center}
.final-province-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.final-province-tile{position:relative;overflow:hidden;min-height:136px;padding:74px 13px 13px;border-radius:8px;border:1px solid rgba(177,55,180,.34);text-decoration:none;color:#fff;background:linear-gradient(165deg,#17152a,#371035 68%,#9d0c6d);box-shadow:inset 0 -40px 55px rgba(109,0,85,.38)}.final-province-tile:nth-child(2n){background:linear-gradient(165deg,#15152a,#151a4b 55%,#9f0d65)}.final-province-tile:nth-child(3n){background:linear-gradient(165deg,#171326,#332246 55%,#a63565)}.final-city-glow{position:absolute;left:8%;right:8%;top:14px;height:56px;background:radial-gradient(ellipse at 50% 100%,rgba(248,168,48,.65),transparent 60%),repeating-linear-gradient(90deg,transparent 0 13px,rgba(255,255,255,.08) 14px 15px);opacity:.7;filter:blur(.2px)}.final-province-tile strong,.final-province-tile span{position:relative;z-index:2;display:block}.final-province-tile strong{font-size:14px}.final-province-tile span{font-size:10px;color:#e5b3d2;margin-top:3px}.final-province-tile i{position:absolute;right:12px;bottom:17px;color:#ff6ac6;font-style:normal;font-size:22px}.final-all-provinces{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}.final-all-provinces a{font-size:11px;color:#c9bec8;text-decoration:none;padding:6px 9px;border-radius:999px;border:1px solid rgba(255,255,255,.1)}
.final-trust-strip{display:grid;grid-template-columns:repeat(4,1fr);background:#07070b;border-top:1px solid rgba(233,40,168,.18);padding:18px clamp(14px,3vw,42px) 24px}.final-trust-strip article{display:flex;gap:13px;padding:6px 20px;border-right:1px solid rgba(255,255,255,.07)}.final-trust-strip article:last-child{border-right:0}.final-trust-strip article>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto;color:#ee38aa;border:1px solid rgba(238,56,170,.5)}.final-trust-strip strong{display:block;font-size:12px;color:#eee5ec}.final-trust-strip p{font-size:10px;line-height:1.45;color:#9c939e;margin:3px 0 0}
.nav-account{border:1px solid rgba(231,54,182,.58);border-radius:7px;padding:8px 16px!important;color:#efe8ef!important}.nav-account:hover{background:rgba(231,54,182,.08)}
@media(max-width:1180px){.final-profile-row{grid-template-columns:repeat(3,1fr)}.final-province-row{grid-template-columns:repeat(3,1fr)}.final-home-hero{grid-template-columns:1fr}.final-hero-model{right:0;width:48%;opacity:.78}.final-province-finder{right:22px;width:280px}.final-hero-copy{padding-right:340px}}
@media(max-width:820px){.final-home{padding-left:0!important;padding-right:0!important}.final-home-hero{min-height:640px}.final-hero-copy{padding:38px 20px 270px;max-width:none}.final-hero-copy h1{font-size:clamp(43px,10vw,65px)}.final-hero-model{right:0;left:44%;width:56%;top:210px;height:430px;opacity:.72}.final-province-finder{left:20px;right:20px;bottom:20px;top:auto;transform:none;width:auto;max-width:390px}.final-profile-row,.final-province-row{grid-template-columns:repeat(2,1fr)}.final-trust-strip{grid-template-columns:1fr 1fr}.final-trust-strip article:nth-child(2){border-right:0}.final-trust-strip article{border-bottom:1px solid rgba(255,255,255,.05)}}
@media(max-width:520px){.final-home-hero{min-height:720px}.final-hero-copy{padding:30px 16px 300px}.final-hero-actions{flex-direction:column;align-items:stretch}.final-primary,.final-secondary{width:100%}.final-hero-model{left:34%;width:66%;top:235px;height:440px}.final-province-finder{left:14px;right:14px;bottom:14px}.final-profile-row,.final-province-row{grid-template-columns:1fr 1fr}.final-profile-image{height:170px}.final-featured,.final-provinces{padding-left:12px;padding-right:12px}.final-section-title{align-items:flex-start}.final-trust-strip{grid-template-columns:1fr}.final-trust-strip article{border-right:0}.topbar nav.mobile-open{background:#08080d!important}}


/* 2026-08-23 · Manual-first UX y normalización de controles */
.owner-contact-actions{display:flex;gap:9px;flex-wrap:wrap;align-items:center;margin-top:10px}
.owner-contact-secondary{display:inline-flex;align-items:center;justify-content:center;padding:10px 13px;border-radius:999px;border:1px solid rgba(229,196,127,.28);color:#e7d6dd;text-decoration:none;font-weight:700;font-size:12px;background:rgba(255,255,255,.025)}
.profile-contact-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.profile-contact-actions h2{font-size:24px!important;margin:3px 0 4px!important}.profile-contact-actions small{color:var(--pv-muted,#aaa)}
.profile-contact-action-buttons{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.profile-contact-action-buttons .button{width:auto!important;min-height:38px!important;padding:8px 12px!important}
.profile-contact-warning{width:100%;margin:0;color:#d8b26a}
@media(min-width:431px){
  .form-grid>.button:not(.wide):not(.full),.form-grid>button.button:not(.wide):not(.full){width:auto!important;justify-self:start!important;min-width:0!important;padding:9px 14px!important}
  .profile-hub-head-actions .button,.hub-plan-row .button,.search-actions .button{width:auto!important;min-width:0!important}
  .owner-contact-button{width:auto!important;min-height:40px!important;padding:10px 15px!important}
}
@media(max-width:650px){.profile-contact-actions{align-items:stretch}.profile-contact-action-buttons{display:grid;grid-template-columns:1fr 1fr;width:100%}.profile-contact-action-buttons .button{width:100%!important}.owner-contact-actions{display:grid;grid-template-columns:1fr}.owner-contact-actions>*{width:100%!important}}

/* 2026-08-23 · Estabilidad visual: evita botones estirados por las rejillas */
.form-grid,
.hub-quick-form,
.compact-settings-form,
.admin-media-upload-grid form{
  align-items:start!important;
}
.form-grid > button,
.form-grid > .button,
.hub-quick-form > button,
.hub-quick-form > .button,
.compact-settings-form > button,
.compact-settings-form > .button,
.admin-media-upload-grid form > button,
.admin-media-upload-grid form > .button{
  align-self:start!important;
  justify-self:start!important;
  width:auto!important;
  height:auto!important;
  min-height:40px!important;
  padding:9px 14px!important;
  line-height:1.2!important;
}
.form-grid > .wide.button,
.form-grid > button.wide,
.form-grid > .full.button,
.form-grid > button.full{
  grid-column:1/-1!important;
  width:auto!important;
}

/* Captación manual visible en portada */
.home-advertiser-cta{
  margin:0;
  padding:30px clamp(18px,4vw,56px);
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(230px,.7fr);
  gap:24px;
  align-items:center;
  background:linear-gradient(115deg,#0d0910,#160914 58%,#250d20);
  border-top:1px solid rgba(238,56,170,.24);
  border-bottom:1px solid rgba(238,56,170,.18);
}
.home-advertiser-copy h2{margin:3px 0 8px;color:#fff;font:500 clamp(26px,3vw,38px) Georgia,serif}
.home-advertiser-copy>p:not(.eyebrow){max-width:760px;margin:0;color:#c9bec8;line-height:1.6}
.home-advertiser-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.home-advertiser-actions .button{width:auto!important;min-height:40px!important;padding:10px 16px!important}
.home-advertiser-note{padding:18px;border:1px solid rgba(229,196,127,.2);border-radius:12px;background:rgba(255,255,255,.025)}
.home-advertiser-note strong,.home-advertiser-note span{display:block}.home-advertiser-note strong{color:#ead094;margin-bottom:5px}.home-advertiser-note span{color:#a99fac;font-size:12px;line-height:1.5}
@media(max-width:760px){
  .home-advertiser-cta{grid-template-columns:1fr;padding:24px 16px}
  .home-advertiser-actions{display:grid;grid-template-columns:1fr}
  .home-advertiser-actions .button{width:100%!important}
}

/* Las fichas ya no tienen control de conexión: las rejillas quedan en 2 campos + acción. */
.hub-quick-form,
.compact-settings-form{
  grid-template-columns:repeat(2,minmax(150px,1fr)) auto!important;
}
@media(max-width:700px){
  .hub-quick-form,
  .compact-settings-form{grid-template-columns:1fr!important}
}


/* 2026-08-23 · Navegación responsive canónica.
   Un único comportamiento en móvil/tablet evita reglas históricas contradictorias. */
@media (max-width:900px){
  .topbar{position:sticky!important;top:0!important;z-index:2000!important;min-height:64px!important;padding:10px 14px!important;gap:10px!important;flex-wrap:nowrap!important}
  .mobile-menu-btn{display:grid!important;place-items:center!important;flex:0 0 42px!important;width:42px!important;height:42px!important;margin-left:auto!important;border:1px solid #3a3d46!important;border-radius:12px!important;background:#111318!important;color:#fff!important;font-size:21px!important;cursor:pointer!important}
  .topbar nav{display:none!important;position:absolute!important;top:calc(100% + 6px)!important;left:12px!important;right:12px!important;width:auto!important;max-height:calc(100vh - 86px)!important;overflow-y:auto!important;overflow-x:hidden!important;padding:10px!important;background:#0d0f13!important;border:1px solid #30343c!important;border-radius:16px!important;box-shadow:0 18px 45px rgba(0,0,0,.5)!important}
  .topbar nav.mobile-open{display:flex!important;flex-direction:column!important;gap:4px!important}
  .topbar nav a{display:block!important;flex:none!important;width:100%!important;white-space:normal!important;padding:11px 13px!important;border-radius:10px!important}
  .luxury-brand{min-width:0!important;max-width:calc(100% - 56px)!important}
}
@media (min-width:901px){
  .mobile-menu-btn{display:none!important}
  .topbar nav{display:flex!important}
}


/* 2026-08-23 · Cierre de regresiones responsive detectadas en prueba visual */
/* Checkboxes/radios nunca heredan el ancho 100% de los campos de texto. */
.form-grid input[type="checkbox"],.form-grid input[type="radio"],
input[type="checkbox"],input[type="radio"]{
  width:auto!important;min-width:0!important;min-height:0!important;height:auto!important;
  padding:0!important;display:inline-block!important;vertical-align:middle!important;
}
.form-grid label>input[type="checkbox"],.form-grid label>input[type="radio"]{margin:0 7px 0 0!important}

/* Las columnas flex/grid administrativas pueden encogerse sin empujar la página. */
.dashboard{grid-template-columns:240px minmax(0,1fr)!important}
.dash-content,.dash-head>div,.panel-head>div,.automation-section,.automation-save,.automation-grid,.automation-grid>label{min-width:0!important}
.dash-head>.button,.panel-head>.button{
  flex:0 0 auto!important;align-self:flex-start!important;width:auto!important;height:auto!important;
  min-height:42px!important;padding:9px 14px!important;white-space:nowrap!important;line-height:1.25!important;
}
.panel-head>form{flex:0 0 auto!important;min-width:0!important}

/* El centro de control no deja que el contenido mínimo ensanche la rejilla. */
.automation-form{grid-template-columns:minmax(0,1fr)!important}
.automation-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.automation-grid .button,.automation-save .button{max-width:100%!important;white-space:normal!important}

/* Los filtros de experiencia se envuelven en móvil; no quedan controles fuera de pantalla. */
@media(max-width:520px){
  .experience-filter-strip{width:calc(100% - 24px)!important;flex-wrap:wrap!important;overflow-x:visible!important;gap:7px!important}
  .experience-filter-strip .xp-filter{flex:1 1 calc(50% - 7px)!important;min-width:0!important;white-space:normal!important;text-align:center!important}
}

/* Cabeceras administrativas: botón normal en tablet, apilado limpio en móvil. */
@media(max-width:600px){
  .dash-head,.panel-head{flex-direction:column!important;align-items:stretch!important;gap:10px!important}
  .dash-head>.button,.panel-head>.button,.panel-head>form,.panel-head>form>.button{
    width:100%!important;max-width:100%!important;white-space:normal!important;min-height:42px!important;height:auto!important;
  }
  .automation-section{padding:14px!important}
  .automation-grid{grid-template-columns:minmax(0,1fr)!important}
  .automation-save{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:8px!important}
  .automation-save .button{width:100%!important;min-width:0!important}
}


/* 2026-08-23 · Ajustes finales de ancho tipográfico y gestión */
.profile-filter-row{grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,.7fr))!important;max-width:100%!important}
.profile-filter-row>*,.profile-filter-row input,.profile-filter-row select,.bulk-profile-bar,.bulk-left,.bulk-controls{min-width:0!important;max-width:100%!important}
.profile-filter-row input,.profile-filter-row select{width:100%!important}

@media(max-width:900px){
  .profile-filter-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
}
@media(max-width:600px){
  .profile-filter-row{grid-template-columns:minmax(0,1fr)!important}
  .dash-head h1{font-size:clamp(28px,9vw,34px)!important;line-height:1.08!important;overflow-wrap:anywhere!important;word-break:normal!important}
  .panel h2,.automation-section-head h2{font-size:clamp(22px,7.5vw,28px)!important;line-height:1.1!important;overflow-wrap:anywhere!important}
  .automation-section-head{display:grid!important;grid-template-columns:34px minmax(0,1fr)!important;gap:10px!important}
  .automation-section-head>div{min-width:0!important}
}


/* 2026-08-23 · R3 legibilidad de lanzamiento
   Evita microtexto difícil de leer sin agrandar botones ni romper la densidad del panel. */
.public-search-form label,
.compact-settings-form label,
.hub-quick-form label{font-size:12px!important;line-height:1.35!important}
.analytics-kpis small,.bar-value,.bar-col small,.rank-list small,.analytics-table th,
.estimate-badge,.finance-plan-list small,.button.small,.card-badges span,
.owner-kpi-card span,.crm-summary small,.timeline-row time,.profile-badge,
.referral-link-box,.cover-badge,.pending-media-info span,.quick-settings-form select,
.compact-plan,.compact-status,.compact-meta,.hub-chip,.profile-hub-tabs a,
.hub-summary-card span,.hub-summary-card small,.hub-history-row span,.hub-history-row small,
.hub-legal-status span,.final-profile-overlay small,.final-province-tile span,
.final-trust-strip p{font-size:11px!important;line-height:1.35!important}
.final-section-note,.final-all-provinces a,.final-province-finder small{font-size:12px!important;line-height:1.4!important}
@media(max-width:720px){
  .public-search-form label{font-size:12px!important}
}

/* R3 · suelo mínimo de legibilidad para textos auxiliares visibles. */
small{font-size:11px!important;line-height:1.4!important}

/* R3 · ancla controles flotantes de las tarjetas a su propia tarjeta. */
.profile-card{position:relative!important}

/* R3 · respeta el atributo HTML hidden aunque un componente use display:flex/grid. */
[hidden]{display:none!important}

/* R3 · enlaces legales de registro: cada título queda íntegro al saltar de línea. */
.registration-v2 label.full a{white-space:nowrap}

/* R3 · claridad visual del panel de anunciante y formularios oscuros */
.profile-mini{display:flex!important;align-items:center!important;gap:10px!important;margin-bottom:12px!important;min-width:0!important}
.profile-mini>.avatar{flex:0 0 auto!important}
.profile-mini>div:last-child{min-width:0!important}
.profile-mini b,.profile-mini small{display:block!important;max-width:100%!important;overflow-wrap:anywhere!important}
.profile-mini small{margin-top:2px!important;color:#9f96a1!important}
.registration-v2 .form-grid label,.dashboard .form-grid label,.admin-page .form-grid label{color:#c9bec8!important}
.registration-v2 .form-grid label small,.dashboard .form-grid label small,.admin-page .form-grid label small{color:#9f96a1!important}

/* R3 · los cobros no muestran controles de pasarela inexistente */
.automation-static-note{grid-column:1/-1;padding:14px;border:1px solid rgba(229,196,127,.22);border-radius:11px;background:rgba(229,196,127,.045);color:#d6c7d2}
.automation-static-note b,.automation-static-note small{display:block}.automation-static-note small{margin-top:5px;color:#a99fac!important;line-height:1.5!important}

/* R3.4 · gestión completa de banners */
.banner-global-warning{display:flex;flex-direction:column;gap:5px;margin:14px 0 20px;padding:14px 16px;border:1px solid #735f35;border-radius:14px;background:rgba(160,119,39,.10)}
.banner-global-warning span{font-size:13px;line-height:1.45;color:#b8bbc3}
.banner-list{display:grid;gap:14px;margin-top:22px}.banner-admin-card{border-top:1px solid #2d3038;padding-top:4px}.banner-row-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.banner-edit-panel{margin:0 0 12px;border:1px solid #2d3038;border-radius:14px;background:rgba(255,255,255,.015);overflow:hidden}.banner-edit-panel summary{cursor:pointer;padding:12px 14px;font-weight:700}.banner-edit-panel[open] summary{border-bottom:1px solid #2d3038}.banner-edit-panel form{padding:16px}.banner-remove-image{align-self:end;display:flex!important;gap:8px!important;align-items:center!important}.banner-remove-image input{width:auto!important}
@media(max-width:700px){.banner-admin-row{align-items:flex-start;flex-direction:column}.banner-row-actions{width:100%;justify-content:flex-start}.banner-admin-row img{width:76px;height:58px}.banner-edit-panel form{padding:12px}}

/* R3.7 · alta administrativa unificada */
.quick-create-intro{display:flex;flex-direction:column;gap:5px;margin:0 0 18px;padding:14px 16px;border:1px solid rgba(229,196,127,.28);border-radius:14px;background:rgba(229,196,127,.06)}
.quick-create-intro strong{color:#ead099;font-size:15px}.quick-create-intro span{color:#aaa2ad;font-size:13px;line-height:1.5}
.quick-create-title{margin:24px 0 12px!important;font-size:16px!important;line-height:1.2!important;color:#ead099!important;font-family:Inter,system-ui,sans-serif!important}
.wide-field{grid-column:1/-1}.quick-create-upload{padding:14px;border:1px solid #2d3038;border-radius:14px;background:rgba(255,255,255,.015)}
.quick-create-upload label{display:flex;flex-direction:column;gap:8px;font-weight:700;color:#c9bec8}.quick-create-upload input[type=file]{width:100%}.quick-create-upload small{color:#9f96a1;line-height:1.45}
.verification-fast-box{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px;border:1px solid #38313b;border-radius:16px;background:rgba(255,255,255,.018)}
.verification-fast-box>label{display:flex;flex-direction:column;gap:6px;color:#c9bec8;font-size:12px;font-weight:700}.verification-fast-box>label small{color:#9f96a1;font-weight:400;line-height:1.45}
.complete-verification-check{grid-column:1/-1!important;display:flex!important;flex-direction:row!important;align-items:flex-start!important;gap:11px!important;padding:14px!important;border:1px solid rgba(229,196,127,.32)!important;border-radius:14px!important;background:rgba(229,196,127,.07)!important;cursor:pointer}
.complete-verification-check input{width:auto!important;margin-top:3px!important;flex:0 0 auto}.complete-verification-check span{display:flex;flex-direction:column;gap:4px}.complete-verification-check b{color:#f1d8a3;font-size:14px}.complete-verification-check small{color:#b5acb8!important}
.advanced-verification{grid-column:1/-1;border:1px solid #30343d;border-radius:12px;padding:11px 13px}.advanced-verification summary{cursor:pointer;color:#b9b1bd;font-weight:700;font-size:13px}.verification-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 14px;margin-top:12px}.verification-check-grid label{display:flex;align-items:center;gap:7px;color:#c9bec8;font-size:12px}.verification-check-grid input{width:auto!important;margin:0!important}
.quick-create-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.quick-create-help{margin:10px 0 0;color:#9f96a1;font-size:12px;line-height:1.5}
@media(max-width:760px){.verification-fast-box,.verification-check-grid{grid-template-columns:1fr}.wide-field{grid-column:auto}.quick-create-actions .button{flex:1 1 180px}}


/* R3.8 · Centro de control simplificado para operación no técnica */
.simple-control-center{max-width:1180px}
.control-shortcuts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:14px 0 18px}
.control-shortcuts a{display:flex;gap:10px;align-items:center;min-width:0;padding:13px;border:1px solid #30343d;border-radius:15px;background:#0d0f13;color:#d9dde3;text-decoration:none}
.control-shortcuts a:hover{border-color:#6c5932;background:#15130e}.control-shortcuts b{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:50%;background:#19160f;border:1px solid #66542f;color:#e3c170}.control-shortcuts span{display:grid;gap:3px;min-width:0}.control-shortcuts strong{font-size:11px}.control-shortcuts small{color:#8f959e;font-size:9px;line-height:1.35}
.simple-help{margin-bottom:16px}.simple-control-form .automation-section{scroll-margin-top:16px}.simple-control-form label small{display:block;margin-top:5px;color:#858c96;font-weight:500;line-height:1.4}.control-advanced{margin-top:14px;padding:12px 14px;border:1px solid #30343d;border-radius:13px;background:#0c0e12}.control-advanced summary{cursor:pointer;font-weight:900;color:#d9dde3}.control-advanced[open] summary{margin-bottom:14px}.control-advanced .button{margin-top:12px}
.appearance-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:12px}.appearance-card{display:grid;gap:10px;padding:16px;border:1px solid #30343d;border-radius:15px;background:#0d0f13}.appearance-card h3,.appearance-card p{margin:0}.appearance-card p{color:#949aa3;font-size:11px}.appearance-card select,.appearance-card input[type=file],.theme-hours-row input{width:100%;min-height:43px;border:1px solid #343943;border-radius:11px;background:#090b0e;color:#eef0f3;padding:9px}.theme-hours-row{display:grid;grid-template-columns:82px auto minmax(0,1fr);gap:8px;align-items:center}.theme-hours-row span{color:#9298a1;font-size:11px}.theme-quick-card>small{color:#858c96;line-height:1.45}.theme-advanced{margin-top:14px}.theme-schedule-list{display:grid;gap:8px;margin-top:14px}
/* R3.5 banner quick UI moved into the stylesheet that is actually loaded */
.banner-quick-publish{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border:1px solid rgba(230,190,112,.35);border-radius:16px;background:rgba(230,190,112,.07)}.banner-quick-publish>div:first-child{display:flex;flex-direction:column;gap:4px}.banner-quick-publish small{opacity:.76}.banner-quick-controls,.banner-publish-hours{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.banner-quick-controls input{width:92px}.banner-publish-hours input{width:68px;min-width:68px;padding:7px 8px}.banner-publish-hours span{font-size:.85rem;opacity:.7}.banner-advanced-schedule{border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:12px 14px}.banner-advanced-schedule summary{cursor:pointer;font-weight:700}.banner-advanced-schedule .form-grid{margin-top:14px}.tiny.publish{font-weight:800}
@media(max-width:1000px){.control-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}.appearance-grid{grid-template-columns:1fr}}
@media(max-width:620px){.control-shortcuts{grid-template-columns:1fr}.theme-hours-row{grid-template-columns:80px 1fr}.theme-hours-row .button{grid-column:1/-1}.banner-quick-publish{align-items:stretch;flex-direction:column}.banner-quick-controls,.banner-publish-hours{width:100%}.banner-quick-controls .button,.banner-publish-hours .publish{flex:1}}


/* R3.9 · moderación IA local */
.ai-review-badge,.ai-clean-badge{display:block;margin-top:6px;padding:5px 8px;border-radius:8px;font-size:11px;line-height:1.35;font-weight:700;max-width:320px}
.ai-review-badge{background:rgba(255,170,0,.12);border:1px solid rgba(255,170,0,.35)}
.ai-review-badge.warning{background:rgba(255,90,90,.10);border-color:rgba(255,90,90,.30)}
.ai-clean-badge{background:rgba(70,190,120,.10);border:1px solid rgba(70,190,120,.28)}


/* ============================================================
   R3.11 · Pulido final de uso y consistencia
   ============================================================ */
:root{--public-profile-card-width:280px}

/* Las tarjetas públicas conservan un ancho visual estable: un único perfil
   ya no se estira para rellenar toda una fila. */
.public-home .profile-grid{
  grid-template-columns:repeat(auto-fill,minmax(min(100%,245px),var(--public-profile-card-width)))!important;
  justify-content:start!important;
  align-items:stretch!important;
}
.public-home .profile-card{width:100%;max-width:var(--public-profile-card-width);height:100%}
.public-home .profile-body{display:flex;flex-direction:column;min-height:208px}
.public-home .card-footer{margin-top:auto}

/* La portada nacional usa la misma idea: tarjetas previsibles, no elásticas. */
.final-profile-row{
  grid-template-columns:repeat(auto-fill,minmax(160px,186px))!important;
  justify-content:start!important;
}
.final-profile-card{width:100%;max-width:186px}

/* Estado explícito para filtros rápidos sin coincidencias. */
.xp-filter-empty{margin:12px 0 20px;padding:18px;border:1px dashed rgba(232,207,154,.22);border-radius:14px;background:rgba(20,12,24,.7);display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.xp-filter-empty strong{color:#fff}.xp-filter-empty span{color:#bfb2bd;flex:1 1 260px}.xp-filter-empty .button{min-width:110px}

/* Administración organizada por tareas: los accesos de uso diario dominan y
   las herramientas ocasionales quedan agrupadas. */
.admin-task-launcher{max-width:1440px;margin:16px auto 12px;padding:16px;border:1px solid rgba(255,255,255,.09);border-radius:18px;background:rgba(16,12,20,.88);box-shadow:0 18px 45px rgba(0,0,0,.2)}
.admin-task-launcher-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}
.admin-task-launcher-head h2{margin:2px 0 0}.admin-task-launcher-head .eyebrow{margin:0}
.admin-task-actions{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.admin-task-actions>a{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:9px;align-items:center;padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(255,255,255,.025);color:inherit;text-decoration:none;min-width:0}
.admin-task-actions>a:hover{border-color:rgba(232,207,154,.28);background:rgba(255,255,255,.045)}
.admin-task-actions b{grid-row:1/3;font-size:21px;color:var(--lux-champagne,#e8cf9a)}
.admin-task-actions span{font-weight:800;overflow-wrap:anywhere}.admin-task-actions small{color:#aaa;overflow-wrap:anywhere}
.admin-more-tools{margin-top:10px}.admin-more-tools>summary{cursor:pointer;display:inline-flex;align-items:center;min-height:38px;padding:7px 10px;border-radius:10px;color:#cfc2cd;font-weight:700}.admin-more-tools>summary:hover{background:rgba(255,255,255,.04)}
.admin-more-tools-grid{display:flex;flex-wrap:wrap;gap:7px;padding-top:8px}.admin-more-tools-grid a{padding:8px 10px;border:1px solid rgba(255,255,255,.08);border-radius:10px;color:#d7cbd6;text-decoration:none;font-size:.88rem}
.admin-section-index{position:sticky;top:88px;align-self:start}

/* Targets de navegación no quedan ocultos bajo cabeceras al saltar por anclas. */
#crear,#perfiles,#altas-pendientes,#cambios,#media,#denuncias{scroll-margin-top:92px}

@media(max-width:1050px){
  .admin-task-actions{grid-template-columns:repeat(3,minmax(0,1fr))}
  .admin-section-index{position:static}
}
@media(max-width:760px){
  :root{--public-profile-card-width:100%}
  .public-home .profile-grid{grid-template-columns:1fr!important}
  .public-home .profile-card{max-width:none}
  .final-profile-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .final-profile-card{max-width:none}
  .admin-task-launcher{margin:10px 10px 8px;padding:12px}
  .admin-task-launcher-head{align-items:flex-start;flex-direction:column}.admin-task-launcher-head .button{width:100%}
  .admin-task-actions{grid-template-columns:1fr 1fr}
}
@media(max-width:480px){
  .admin-task-actions{grid-template-columns:1fr}
  .xp-filter-empty{align-items:stretch}.xp-filter-empty .button{width:100%}
}

/* ============================================================
   R3.12 · Legibilidad del Centro de control
   Mantiene la navegación de R3.11; solo mejora jerarquía, aire y tamaño de texto.
   ============================================================ */
.simple-control-center .simple-status-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
  margin:20px 0 22px!important;
}
.simple-control-center .auto-status-card{
  min-height:116px;
  padding:18px 20px!important;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.simple-control-center .auto-status-card small{
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.075em!important;
  line-height:1.35!important;
}
.simple-control-center .auto-status-card strong{
  margin:8px 0!important;
  font-size:21px!important;
  line-height:1.15!important;
}
.simple-control-center .auto-status-card span{
  font-size:12px!important;
  line-height:1.45!important;
}
.simple-control-center .control-shortcuts{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
  margin:18px 0 22px!important;
}
.simple-control-center .control-shortcuts a{
  min-height:72px;
  padding:15px 16px!important;
  gap:12px!important;
}
.simple-control-center .control-shortcuts b{
  flex-basis:34px!important;
  height:34px!important;
}
.simple-control-center .control-shortcuts strong{
  font-size:13px!important;
  font-weight:700!important;
  line-height:1.3!important;
}
.simple-control-center .control-shortcuts small{
  font-size:11px!important;
  line-height:1.45!important;
}
.simple-control-center .automation-warning{
  padding:14px 16px!important;
  line-height:1.5!important;
  font-size:12px!important;
}
.simple-control-center .automation-section{
  padding:22px!important;
  margin-bottom:16px!important;
}
.simple-control-center .automation-section-head{
  gap:14px!important;
  margin-bottom:18px!important;
}
.simple-control-center .automation-section-head>span{
  font-size:11px!important;
  font-weight:700!important;
}
.simple-control-center .automation-section-head p{
  font-size:12.5px!important;
  line-height:1.45!important;
}
.simple-control-center .automation-grid{
  gap:14px 16px!important;
}
.simple-control-center .automation-grid label,
.simple-control-center .form-grid label,
.simple-control-center .appearance-card label{
  font-size:12.5px!important;
  font-weight:650!important;
  line-height:1.35!important;
}
.simple-control-center .automation-grid label small,
.simple-control-center .form-grid label small,
.simple-control-center .appearance-card small,
.simple-control-center .theme-hours-row span,
.simple-control-center .banner-quick-publish small{
  font-size:11.5px!important;
  font-weight:500!important;
  line-height:1.5!important;
}
.simple-control-center select,
.simple-control-center input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.simple-control-center textarea{
  font-size:13.5px!important;
  line-height:1.4!important;
}
.simple-control-center .control-advanced{
  padding:14px 16px!important;
}
.simple-control-center .control-advanced summary{
  font-size:12.5px!important;
  font-weight:700!important;
  line-height:1.4!important;
}
.simple-control-center .appearance-grid{gap:16px!important}
.simple-control-center .appearance-card{padding:18px!important;gap:12px!important}
.simple-control-center .appearance-card p{font-size:12px!important;line-height:1.5!important}
.simple-control-center .banner-list{gap:18px!important}

@media(max-width:900px){
  .simple-control-center .simple-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .simple-control-center .control-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:620px){
  .simple-control-center .simple-status-grid,
  .simple-control-center .control-shortcuts{grid-template-columns:minmax(0,1fr)!important}
  .simple-control-center .auto-status-card{min-height:0;padding:16px 17px!important}
  .simple-control-center .control-shortcuts a{min-height:64px}
  .simple-control-center .automation-section{padding:16px!important}
  .simple-control-center .dash-head h1{font-size:clamp(30px,9.5vw,38px)!important;line-height:1.08!important}
}

/* R3.12.1 · Avisos flash autocerrables */
.flash{display:flex;align-items:flex-start;gap:10px;max-width:100%;transition:opacity .24s ease,transform .24s ease;will-change:opacity,transform}
.flash-message{flex:1;min-width:0;line-height:1.35}
.flash-close{flex:0 0 auto;width:28px;height:28px;margin:-5px -8px -5px 0;border:0;border-radius:999px;background:transparent;color:inherit;font:700 20px/1 system-ui,sans-serif;cursor:pointer;opacity:.62;display:grid;place-items:center}
.flash-close:hover,.flash-close:focus-visible{opacity:1;background:rgba(0,0,0,.06);outline:2px solid currentColor;outline-offset:1px}
.flash-leaving{opacity:0!important;transform:translateY(-8px)!important;pointer-events:none}
@media(prefers-reduced-motion:reduce){.flash{transition:none}.flash-leaving{transform:none!important}}


/* R3.12.2 · estados vacíos de filtros solo visibles cuando JS los activa */
.xp-filter-empty.hidden{display:none!important}

/* R3.13 · SEO provincial de producción */
.province-role-notice{margin:18px auto 22px;max-width:1180px;padding:16px 20px;border:1px solid rgba(229,196,127,.22);border-radius:16px;background:rgba(19,16,23,.82);box-shadow:0 14px 34px rgba(0,0,0,.16)}
.province-role-notice strong{display:block;color:#e5c47f;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px}
.province-role-notice p{margin:0;color:#c8c1ca;line-height:1.6;font-size:.94rem}
.home-seo-context{max-width:1180px;margin:28px auto;padding:24px}.home-seo-context h2{margin-top:0}.home-seo-context p{margin-bottom:0;line-height:1.65}
@media(max-width:600px){.province-role-notice{margin:14px 12px 18px;padding:14px 16px}.province-role-notice p{font-size:.9rem}.home-seo-context{margin:18px 12px;padding:18px}}


/* ============================================================
   R3.13.1 · Fotografías públicas más grandes + visor ampliado
   ============================================================ */
:root{--public-profile-card-width:310px}
.public-home .profile-grid{
  grid-template-columns:repeat(auto-fill,minmax(min(100%,275px),var(--public-profile-card-width)))!important;
}
.public-home .profile-card{max-width:var(--public-profile-card-width)!important}
.final-profile-row{grid-template-columns:repeat(auto-fill,minmax(185px,220px))!important}
.final-profile-card{max-width:220px!important}
.final-profile-image{height:230px!important}

.public-profile-page .profile-photo-panel{padding:clamp(16px,2.6vw,28px)!important}
.public-profile-page .profile-gallery-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:16px}
.public-profile-page .profile-gallery-head span{color:#a99faa;font-size:.82rem}
.public-profile-page .profile-photo-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))!important;
  gap:16px!important;
}
.public-profile-page .profile-photo-grid figure{margin:0;min-width:0}
.public-profile-page .profile-photo-zoom{
  position:relative;display:block;width:100%;padding:0;border:0;border-radius:18px;overflow:hidden;
  background:#0b090d;cursor:zoom-in;color:inherit;text-align:inherit;
}
.public-profile-page .profile-photo-zoom img{
  display:block;width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:18px!important;
  transition:transform .22s ease,filter .22s ease;
}
.public-profile-page .photo-zoom-hint{
  position:absolute;right:10px;bottom:10px;padding:7px 10px;border-radius:999px;
  background:rgba(8,7,10,.78);border:1px solid rgba(255,255,255,.18);color:#fff;
  font-size:.75rem;font-weight:800;letter-spacing:.02em;backdrop-filter:blur(8px);
}
@media(hover:hover) and (pointer:fine){
  .public-profile-page .profile-photo-zoom:hover img{transform:scale(1.025);filter:brightness(.9)}
}
.public-profile-page .profile-photo-zoom:focus-visible{outline:3px solid var(--lux-champagne,#e8cf9a);outline-offset:3px}

.photo-lightbox{width:min(94vw,1200px);max-width:none;border:0;padding:0;background:transparent;overflow:visible}
.photo-lightbox::backdrop{background:rgba(4,3,6,.92);backdrop-filter:blur(8px)}
.photo-lightbox-shell{position:relative;display:grid;place-items:center;min-height:120px}
.photo-lightbox img{display:block;max-width:min(90vw,1120px);max-height:calc(100vh - 72px);width:auto;height:auto;object-fit:contain;border-radius:14px;box-shadow:0 24px 80px rgba(0,0,0,.65);background:#09080b}
.photo-lightbox-close,.photo-lightbox-nav{
  position:absolute;z-index:2;display:grid;place-items:center;width:46px;height:46px;padding:0;border-radius:50%;
  border:1px solid rgba(255,255,255,.25);background:rgba(10,8,12,.80);color:#fff;cursor:pointer;font-size:30px;line-height:1;
  backdrop-filter:blur(9px)
}
.photo-lightbox-close{right:10px;top:10px;font-size:28px}
.photo-lightbox-nav{top:50%;transform:translateY(-50%);font-size:40px}
.photo-lightbox-nav.previous{left:10px}.photo-lightbox-nav.next{right:10px}
.photo-lightbox-count{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);padding:6px 10px;border-radius:999px;background:rgba(10,8,12,.78);border:1px solid rgba(255,255,255,.16);color:#fff;font-size:.78rem;font-weight:800;backdrop-filter:blur(8px)}
.photo-lightbox-close:focus-visible,.photo-lightbox-nav:focus-visible{outline:3px solid #e8cf9a;outline-offset:2px}

@media(max-width:760px){
  :root{--public-profile-card-width:100%}
  .final-profile-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .final-profile-card{max-width:none!important}
  .final-profile-image{height:auto!important;aspect-ratio:4/5}
  .public-profile-page .profile-photo-grid{grid-template-columns:1fr!important;gap:14px!important}
  .public-profile-page .profile-gallery-head{align-items:flex-start;flex-direction:column;gap:4px}
  .photo-lightbox{width:100%;margin:auto}
  .photo-lightbox img{max-width:94vw;max-height:calc(100vh - 100px);border-radius:10px}
  .photo-lightbox-nav{width:42px;height:42px}
  .photo-lightbox-nav.previous{left:6px}.photo-lightbox-nav.next{right:6px}.photo-lightbox-close{right:6px;top:6px}
}
@media(max-width:430px){
  .photo-zoom-hint{font-size:.72rem!important}
}
