.asset_detail_main {display:block; width:100%; max-width:1120px; margin:0 auto; padding:36px 32px 56px;}
.asset_detail_breadcrumb {margin-bottom:24px; font-size:12px; line-height:1.7; color:var(--muted); overflow-wrap:anywhere;}
.asset_detail_breadcrumb a {text-underline-offset:3px;}
.asset_detail_breadcrumb > span[aria-hidden] {padding:0 9px; opacity:.6;}
.asset_detail_layout {display:grid; grid-template-columns:minmax(0,7fr) minmax(0,3fr); gap:24px; align-items:start;}
.asset_detail_content, .asset_detail_sidebar {min-width:0;}
.asset_detail_box {padding:26px; margin-bottom:22px; border:1px solid var(--line); border-radius:18px; background:#fff; overflow-wrap:anywhere; box-shadow:0 4px 20px rgba(32,59,53,.025);}
.asset_detail_box h1 {font-size:clamp(26px,3vw,36px); line-height:1.18; letter-spacing:-1px;}
.asset_detail_box h2 {font-size:20px; line-height:1.4; letter-spacing:-.4px;}
.asset_section_heading {display:flex; align-items:center; gap:10px;}
.asset_section_heading > svg {flex-shrink:0; color:var(--green); stroke-linecap:round; stroke-linejoin:round;}
.asset_section_heading > span {min-width:0;}
.asset_identity {display:grid; grid-template-columns:minmax(0,34%) minmax(0,1fr); gap:26px; align-items:center;}
.asset_identity_image, .asset_identity_text {min-width:0;}
.asset_detail_primary {display:block; width:100%; height:auto; aspect-ratio:1; object-fit:cover; border-radius:14px; border:1px solid var(--line);}
.asset_image_placeholder {display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; width:100%; aspect-ratio:1; padding:12px; border-radius:14px; background:#edf2ec; color:var(--muted); font-size:12px; text-align:center;}
.asset_type_badge {display:table; max-width:100%; margin:13px 0 20px; padding:6px 10px; border-radius:7px; background:#edf3ed; color:var(--green); font-size:12px; line-height:1.5;}
.asset_detail_button {display:inline-flex; align-items:center; justify-content:center; gap:8px; max-width:100%; min-height:44px; padding:10px 14px; border:1px solid var(--line); border-radius:9px; background:#fff; color:var(--ink); font:inherit; font-size:13px; font-weight:600; line-height:1.4; text-decoration:none; cursor:pointer;}
.asset_detail_button:hover {background:#f1f5ef; border-color:#b8c9bf;}
.asset_website_button {margin-top:12px; background:var(--green); border-color:var(--green); color:#fff;}
.asset_type_badge + .asset_website_button {margin-top:0;}
.asset_website_button:hover {background:#183f34; border-color:#183f34;}
.asset_identity_contact {margin-top:20px; font-size:13px; line-height:1.6;}
.asset_identity_contact > span {display:block; margin-bottom:3px; font-size:11px; color:var(--muted);}
.asset_identity_contact a {text-underline-offset:4px;}
.asset_identity_contact p {margin:0;}
.asset_detail_description {margin-top:18px; font-size:15px; line-height:1.8;}
.asset_detail_description p {margin:0 0 16px;}
.asset_detail_description > :last-child {margin-bottom:0;}
.asset_detail_description h2 {margin:26px 0 12px; font-size:22px;}
.asset_detail_description ul, .asset_detail_description ol {padding-left:24px; margin:0 0 18px;}
.asset_detail_description a {text-underline-offset:3px;}
.asset_detail_stats {display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:22px 14px; margin:22px 0 0;}
.asset_detail_stats dt {font-size:12px; color:var(--muted); margin-bottom:8px;}
.asset_detail_stats dd {margin:0; line-height:1.4;}
.asset_stat_number dd {font-size:28px; font-weight:700; letter-spacing:-1px;}
.asset_stat_empty {display:block; margin-top:3px; font-size:11px; color:var(--muted);}
.asset_stat_updated {grid-column:1/-1; border-top:1px solid var(--line); padding-top:18px; font-size:14px;}
.asset_stat_updated time span {display:block; margin-top:3px; color:var(--muted); font-size:12px;}
.asset_detail_sidebar .btn {margin-top:22px; font-size:13px;}
.asset_detail_photos {display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:20px;}
.asset_detail_photos img {display:block; width:100%; height:auto; aspect-ratio:1; object-fit:cover; border-radius:10px;}
.asset_share_intro {margin:10px 0 20px; color:var(--muted); font-size:13px; line-height:1.65;}
.asset_share label {font-size:11px; font-weight:400; color:var(--muted);}
.asset_share_url_wrap {position:relative;}
.asset_share_url {width:100%; min-width:0; min-height:46px; padding:10px 48px 10px 12px; border:1px solid var(--line); border-radius:8px; background:#f7f9f5; color:var(--ink); font:inherit; font-size:12px;}
.asset_copy_icon {position:absolute; top:1px; right:1px; display:flex; align-items:center; justify-content:center; width:44px; height:44px; padding:0; border:0; border-left:1px solid var(--line); border-radius:0 7px 7px 0; background:#edf3ed; color:var(--green); cursor:pointer;}
.asset_copy_icon:hover {background:#dfe9df;}
.asset_copy_icon:focus-visible {outline:3px solid #86ad97; outline-offset:2px;}
.asset_share_actions {display:flex; flex-wrap:nowrap; gap:8px; margin-top:12px;}
.asset_share_actions .asset_detail_button {flex:1 1 0; min-width:0; padding:10px 6px; gap:5px; font-size:12px;}
.asset_share_actions svg {flex-shrink:0; stroke-linecap:round; stroke-linejoin:round;}
.asset_qr_panel {margin-top:20px; text-align:center;}
#asset_qr_code {display:inline-block; max-width:100%; padding:16px; border:1px solid var(--line); border-radius:12px; background:#fff;}
#asset_qr_code img, #asset_qr_code canvas {max-width:100%; height:auto;}
.asset_qr_panel p {margin:9px 0 0; color:var(--muted); font-size:11px;}
.asset_share_message {margin:14px 0 0; color:var(--green); font-size:12px; line-height:1.6;}
.asset_share_message.is_error {color:#9f3438;}
#asset_share_slot {min-width:0;}
.asset_share_floating {display:none;}
.asset_share_modal {width:calc(100% - 32px); max-width:420px; max-height:85vh; max-height:85dvh; padding:0; border:1px solid var(--line); border-radius:18px; background:#fff; color:var(--ink); overflow:auto; box-shadow:0 16px 60px rgba(0,0,0,.2);}
.asset_share_modal:not([open]) {display:none;}
.asset_share_modal::backdrop {background:rgba(0,0,0,.5);}
.asset_share_modal .asset_share {margin:0; padding:26px; border:0; border-radius:0; box-shadow:none;}
.asset_share_modal h2 {padding-right:40px;}
.asset_share_close {position:absolute; top:12px; right:12px; display:flex; align-items:center; justify-content:center; width:44px; height:44px; padding:0; border:0; border-radius:50%; background:#edf3ed; color:var(--ink); cursor:pointer;}
.asset_share_close:hover {background:#dfe9df;}
body.asset_share_is_open {overflow:hidden;}
.asset_share_floating:focus-visible, .asset_share_close:focus-visible {outline:3px solid #86ad97; outline-offset:3px;}
.asset_whatsapp {position:fixed; left:max(20px, env(safe-area-inset-left, 0px)); bottom:calc(20px + env(safe-area-inset-bottom, 0px)); z-index:100; display:inline-flex; align-items:center; gap:10px; min-height:52px; max-width:calc(100vw - 40px); padding:13px 20px; border:1px solid rgba(255,255,255,.2); border-radius:30px; background:#187b48; color:#fff; box-shadow:0 6px 22px rgba(18,76,45,.22); font-size:14px; font-weight:600; line-height:1.4; text-decoration:none;}
.asset_whatsapp svg {flex-shrink:0;}
.asset_whatsapp:hover {background:#11643a;}
.asset_detail_main.has_whatsapp + .footer {padding-bottom:calc(96px + env(safe-area-inset-bottom, 0px));}
.asset_detail_button:focus-visible, .asset_whatsapp:focus-visible, .asset_share_url:focus-visible, .asset_detail_photos a:focus-visible {outline:3px solid #86ad97; outline-offset:3px;}
@media (max-width:800px) {
    .asset_detail_layout {grid-template-columns:minmax(0,1fr); gap:0;}
    .asset_detail_main {padding:26px 20px 36px;}
    .asset_detail_sidebar {display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:20px; align-items:start;}
    .asset_identity {grid-template-columns:minmax(0,30%) minmax(0,1fr);}
    .asset_share_floating {position:fixed; right:max(16px, env(safe-area-inset-right, 0px)); bottom:calc(16px + env(safe-area-inset-bottom, 0px)); z-index:101; display:flex; align-items:center; justify-content:center; width:48px; height:48px; padding:0; border:1px solid var(--line); border-radius:50%; background:#fff; color:var(--green); box-shadow:0 6px 22px rgba(18,76,45,.18); cursor:pointer;}
    .asset_share_floating:hover {background:#edf3ed;}
    .asset_detail_main.has_mobile_share + .footer {padding-bottom:calc(96px + env(safe-area-inset-bottom, 0px));}
    .has_mobile_share .asset_whatsapp {max-width:calc(100vw - 96px);}
}
@media (max-width:540px) {
    .asset_detail_main {padding:22px 16px 28px;}
    .asset_detail_box {padding:22px; border-radius:14px; margin-bottom:16px;}
    .asset_identity {grid-template-columns:100px minmax(0,1fr); gap:14px; align-items:start; padding:16px;}
    .asset_identity_image {width:100px; height:100px;}
    .asset_identity .asset_detail_primary, .asset_identity .asset_image_placeholder {width:100px; height:100px; border-radius:10px;}
    .asset_detail_box h1 {font-size:29px;}
    .asset_identity h1 {font-size:20px; line-height:1.3; letter-spacing:-.3px;}
    .asset_identity .asset_type_badge {margin:8px 0 12px; padding:4px 7px; font-size:11px;}
    .asset_identity .asset_website_button {padding:8px 10px; font-size:12px;}
    .asset_identity .asset_website_button svg {flex-shrink:0;}
    .asset_identity_contact {margin-top:12px; font-size:12px;}
    .asset_detail_sidebar {display:block;}
    .asset_detail_photos {grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px;}
    .asset_whatsapp {left:16px; bottom:calc(16px + env(safe-area-inset-bottom, 0px)); min-height:48px; padding:12px 18px; font-size:13px;}
}
