*{box-sizing:border-box}html{min-height:100%;background:#f7f1eb}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:#241915;background:radial-gradient(circle at top,#fff7f1 0,#f7f1eb 38%,#f3ebe3 100%);line-height:1.45}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:rgba(255,250,246,.84);backdrop-filter:blur(14px);border-bottom:1px solid rgba(87,55,43,.10)}.logo{font-weight:800;letter-spacing:.2px;color:#2b1713;text-decoration:none}.nav{display:flex;align-items:center;gap:12px;font-size:14px}.nav a,.link-button{color:#5a3028;text-decoration:none;background:transparent;border:0;font:inherit;cursor:pointer;padding:0}.inline-form{display:inline}.wrap{width:min(1060px,100%);margin:0 auto;padding:22px 16px 80px}.card{background:rgba(255,255,255,.82);border:1px solid rgba(87,55,43,.10);border-radius:26px;padding:24px;box-shadow:0 18px 60px rgba(72,43,31,.08)}.hero{padding:34px 24px}.badge{display:inline-flex;align-items:center;gap:8px;border-radius:999px;background:#fff3ea;color:#8a4a3e;border:1px solid rgba(138,74,62,.18);padding:7px 12px;font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.08em}h1{font-size:clamp(30px,8vw,54px);line-height:1.03;margin:16px 0 12px;letter-spacing:-.04em}h2{font-size:22px;margin:0 0 10px;letter-spacing:-.02em}.sub{color:#6f5a52;font-size:17px;max-width:720px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 18px;border-radius:16px;border:1px solid #2a1713;background:#2a1713;color:#fff;text-decoration:none;font-weight:800;cursor:pointer;box-shadow:0 10px 26px rgba(42,23,19,.18)}.btn.secondary{background:#fff;color:#2a1713;border-color:rgba(42,23,19,.18);box-shadow:none}.btn.full{width:100%}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px}.auth-card{max-width:520px;margin:20px auto}.form{display:grid;gap:14px;margin-top:18px}.form label{display:grid;gap:7px;font-weight:750;color:#3b2720}.form input:not([type="checkbox"]){width:100%;min-height:50px;border-radius:16px;border:1px solid rgba(59,39,32,.18);background:#fff;padding:12px 14px;font:inherit;color:#2a1713;outline:none}.form input:focus{border-color:#8a4a3e;box-shadow:0 0 0 4px rgba(138,74,62,.11)}.check{display:flex!important;grid-template-columns:none!important;align-items:flex-start;gap:10px;font-weight:600!important;color:#5c4a43!important}.check input{margin-top:4px}.micro{font-size:14px;color:#6f5a52}.micro a,.doc a,.form a{color:#8a4a3e;font-weight:700}.alert{border-radius:18px;padding:14px 16px;margin:0 0 16px;border:1px solid rgba(59,39,32,.12);background:#fff;color:#3b2720}.alert ul{margin:8px 0 0;padding-left:18px}.alert.error{background:#fff0ef;border-color:#f0b4ae;color:#7b2119}.alert.success{background:#eefaf1;border-color:#b6e4c1;color:#155f2b}.alert.info{background:#eff6ff;border-color:#bfd7ff;color:#1a426e}.clean{padding-left:18px}.clean li{margin:7px 0}.doc{max-width:780px;margin:20px auto}.doc h1{font-size:38px}.doc h2{margin-top:24px}@media(max-width:760px){.topbar{padding:12px 14px}.nav{gap:10px;font-size:13px}.wrap{padding:16px 12px 90px}.card{border-radius:22px;padding:20px}.grid{grid-template-columns:1fr}.hero{padding:26px 20px}.actions{display:grid}.actions .btn{width:100%}h1{font-size:34px}.sub{font-size:16px}}/* Módulo 3 - Perfil, anuncios y moderación */
select,textarea,input[type="file"],input[type="search"]{width:100%;min-height:50px;border-radius:16px;border:1px solid rgba(59,39,32,.18);background:#fff;padding:12px 14px;font:inherit;color:#2a1713;outline:none}textarea{resize:vertical;line-height:1.5}.wide{max-width:820px}.compact h1{font-size:clamp(28px,7vw,46px)}.dashboard-grid{grid-template-columns:repeat(4,1fr)}.two{grid-template-columns:repeat(2,1fr)}.no-margin{margin-top:0}.soft{background:rgba(255,255,255,.62);box-shadow:none}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.tabs a{padding:10px 13px;border-radius:999px;text-decoration:none;color:#5a3028;border:1px solid rgba(90,48,40,.14);font-weight:800;font-size:13px}.tabs a.active{background:#2a1713;color:#fff}.list-grid{display:grid;gap:16px}.ad-card,.public-card{display:grid;grid-template-columns:170px 1fr;gap:18px;align-items:start}.ad-thumb{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:20px;background:#f1e6df;border:1px solid rgba(87,55,43,.10)}.ad-body h2{margin-top:4px}.ad-body h2 a{color:#2a1713;text-decoration:none}.small-actions{gap:8px}.small-actions .btn{min-height:42px;padding:10px 13px;border-radius:13px}.status-pill{display:inline-flex;border-radius:999px;background:#f4ede7;color:#604238;padding:6px 10px;font-size:12px;font-weight:800}.status-pill.approved{background:#eefaf1;color:#155f2b}.status-pill.pending_review{background:#fff8df;color:#785600}.status-pill.rejected,.status-pill.hidden_admin{background:#fff0ef;color:#7b2119}.status-pill.paused{background:#eff6ff;color:#1a426e}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}.photo-box{background:#fff;border:1px solid rgba(87,55,43,.10);border-radius:20px;padding:10px}.photo-box img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:14px}.danger,.danger-btn{color:#9b2118!important}.filter-form{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;gap:12px;align-items:end}.filter-form label{display:grid;gap:7px;font-weight:750;color:#3b2720}.detail-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:18px 0}.detail-gallery img{width:100%;max-height:620px;object-fit:cover;border-radius:22px;border:1px solid rgba(87,55,43,.10);background:#f1e6df}.safe-text{font-size:17px;line-height:1.65;color:#3b2720;background:rgba(255,255,255,.58);border:1px solid rgba(87,55,43,.10);border-radius:22px;padding:18px;margin:18px 0}.owner-box{margin-top:18px}.profile-preview{display:flex;justify-content:center;margin:16px 0}.profile-preview img{width:150px;height:150px;border-radius:50%;object-fit:cover;border:4px solid #fff;box-shadow:0 16px 35px rgba(72,43,31,.14)}.inline-check{align-self:end;min-height:50px;align-items:center!important}.disabled{opacity:.58;pointer-events:none}.warn{background:#fff8df;border-color:#f0d78b;color:#6b4c00}pre{white-space:pre-wrap;background:#251914;color:#fff;border-radius:16px;padding:14px;overflow:auto}@media(max-width:900px){.dashboard-grid{grid-template-columns:repeat(2,1fr)}.filter-form{grid-template-columns:1fr}.ad-card,.public-card{grid-template-columns:120px 1fr}.detail-gallery{grid-template-columns:1fr}}@media(max-width:620px){.dashboard-grid,.two,.photo-grid{grid-template-columns:1fr}.ad-card,.public-card{grid-template-columns:1fr}.ad-thumb{aspect-ratio:16/10}.detail-gallery img{max-height:520px}.topbar{align-items:flex-start}.nav{flex-wrap:wrap;justify-content:flex-end}}

/* Módulo 4 - Chat privado, bloqueos y reportes */
.message-card{display:flex;align-items:center;justify-content:space-between;gap:18px}.message-card.has-unread{border-color:rgba(138,74,62,.28);box-shadow:0 18px 60px rgba(138,74,62,.10)}.message-card h2 a{color:#2a1713;text-decoration:none}.chat-shell{padding:0;overflow:hidden}.chat-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:24px;border-bottom:1px solid rgba(87,55,43,.10)}.chat-header h1{font-size:clamp(28px,7vw,42px);margin:12px 0 8px}.chat-messages{height:min(62vh,680px);min-height:360px;overflow:auto;background:linear-gradient(180deg,rgba(255,250,246,.70),rgba(255,255,255,.45));padding:18px;display:flex;flex-direction:column;gap:10px}.bubble-row{display:flex}.bubble-row.mine{justify-content:flex-end}.bubble-row.theirs{justify-content:flex-start}.bubble{max-width:min(74%,620px);border-radius:22px;padding:12px 14px;border:1px solid rgba(87,55,43,.10);box-shadow:0 10px 26px rgba(72,43,31,.06)}.bubble-row.mine .bubble{background:#2a1713;color:#fff;border-bottom-right-radius:8px}.bubble-row.theirs .bubble{background:#fff;color:#2a1713;border-bottom-left-radius:8px}.bubble p{margin:0;white-space:normal;word-wrap:break-word}.bubble span{display:block;margin-top:7px;font-size:11px;opacity:.68}.chat-form{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;padding:16px;border-top:1px solid rgba(87,55,43,.10);background:rgba(255,255,255,.76)}.chat-form textarea{min-height:58px;max-height:150px}.chat-note{padding:0 18px 14px;margin:0}.chat-actions{margin:16px;padding:16px;display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap}.report-details{width:100%;max-width:520px}.report-details summary{cursor:pointer;font-weight:800;color:#5a3028;padding:12px 0}.compact-form{margin-top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.contact-form{display:inline-flex}.report-box{margin-top:16px}.small-safe{font-size:15px;padding:14px;margin:12px 0}.status-pill.reported{background:#fff8df;color:#785600}.status-pill.blocked,.status-pill.closed{background:#fff0ef;color:#7b2119}.status-pill.active{background:#eefaf1;color:#155f2b}@media(max-width:760px){.message-card{display:grid}.chat-header{display:grid}.chat-messages{height:58vh;min-height:340px;padding:12px}.bubble{max-width:88%;border-radius:18px}.chat-form{grid-template-columns:1fr;padding:12px}.chat-actions{margin:12px}.contact-form,.contact-form .btn{width:100%}}

/* Módulo 5 - Centro de seguridad */
.table-wrap{width:100%;overflow:auto;border-radius:18px;border:1px solid rgba(87,55,43,.10);background:#fff;margin-top:14px}.table{width:100%;border-collapse:collapse;min-width:760px}.table th,.table td{padding:12px 14px;border-bottom:1px solid rgba(87,55,43,.09);text-align:left;vertical-align:top;font-size:14px}.table th{background:#fff7f1;color:#5a3028;font-size:12px;text-transform:uppercase;letter-spacing:.06em}.table tr:last-child td{border-bottom:0}.mini-form{gap:8px;min-width:220px}.mini-form select,.mini-form input{min-height:42px;border-radius:12px;font-size:13px}.compact-form{grid-template-columns:repeat(3,1fr) auto;align-items:end}.compact-form .btn{min-height:50px}.card small{color:#6f5a52}.danger-zone{border-color:#f0b4ae;background:#fff7f6}.security-kbd{display:inline-block;border:1px solid rgba(87,55,43,.16);background:#fff;border-radius:8px;padding:2px 7px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}@media(max-width:760px){.compact-form{grid-template-columns:1fr}.table{min-width:680px}}
