/* v1.3.0: retain the existing product cards; scope additions to this feature. */
.bp-ic img { width:100%; height:100%; object-fit:contain; border-radius:6px; display:block; }
.bp-card[data-product-id="enterprise-ai"] { cursor:pointer; }
.bp-card:focus-visible { outline:2px solid var(--gold); outline-offset:4px; }
.bp-card[data-product-id="xtime"] .stat,.bp-card[data-product-id="monezi"] .stat { letter-spacing:.06em; white-space:nowrap; }
.resource-dialog { position:fixed; inset:0; margin:auto; width:min(540px,calc(100vw - 36px)); max-height:calc(100dvh - 40px); overflow:auto; border:1px solid rgba(255,245,230,.18); border-radius:20px; padding:42px; color:var(--ink); background:radial-gradient(100% 100% at 0 0,rgba(232,192,137,.10),transparent 64%),#090b0e; box-shadow:var(--shadow-xl); font-family:var(--font-zh); font-weight:300; }
.resource-dialog::backdrop { background:rgba(2,4,7,.75); backdrop-filter:blur(8px); }
.resource-dialog [hidden] { display:none!important; }
.resource-close { position:absolute; right:19px; top:16px; border:0; background:none; color:var(--ink-mute); font-size:26px; line-height:1; cursor:pointer; padding:6px; }
.resource-mark { width:76px; height:76px; border:1px solid rgba(232,192,137,.24); border-radius:50%; display:grid; place-items:center; margin-bottom:26px; background:radial-gradient(circle at 50% 42%,rgba(232,192,137,.12),rgba(232,192,137,.02)); }
.resource-mark .bp-service-icon { position:static; width:53px; height:53px; transform:none; }
.resource-title { font-size:24px; font-weight:400; line-height:1.4; margin:0 0 12px; }
.resource-sub { font-size:13px; color:var(--ink-mute); margin:0 0 30px; }
.resource-file { display:flex; align-items:center; gap:14px; padding:19px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); margin-bottom:26px; }
.resource-file svg { width:28px; height:34px; flex-shrink:0; stroke:var(--gold-soft); fill:none; stroke-width:1.5; }
.resource-file-name { font-size:14px; font-weight:400; overflow-wrap:anywhere; }
.resource-file-meta { font:11px var(--font-mono); color:var(--ink-faint); margin-top:5px; letter-spacing:.06em; }
.resource-label { display:block; color:var(--ink-soft); font-size:14px; margin-bottom:12px; }
.resource-input { display:block; width:100%; height:49px; border:1px solid rgba(255,245,230,.15); border-radius:9px; background:rgba(0,0,0,.24); padding:0 15px; color:var(--ink); font:400 16px var(--font-mono); letter-spacing:.13em; outline:none; }
.resource-input:focus { border-color:var(--gold-soft); box-shadow:0 0 0 3px rgba(232,192,137,.05); }
.resource-input::placeholder { font:300 13px var(--font-zh); letter-spacing:0; color:var(--ink-faint); }
.resource-submit { display:flex; justify-content:center; align-items:center; gap:16px; width:100%; min-height:47px; padding:10px 18px; border:1px solid rgba(232,192,137,.38); border-radius:999px; background:linear-gradient(145deg,rgba(232,192,137,.16),rgba(232,192,137,.04)); color:var(--gold-bright); font:400 13px var(--font-zh); cursor:pointer; transition:background .2s; }
.resource-submit:hover { background:rgba(232,192,137,.2); }
.resource-submit:disabled { opacity:.55; cursor:wait; }
.resource-error { font-size:12px; color:#e6ad98; min-height:25px; margin:8px 0 10px; }
.resource-success { font-size:13px; color:var(--gold); margin-bottom:20px; }
.resource-note { font-size:13px; color:var(--ink-mute); line-height:1.9; margin:0 0 22px; }
body.resource-modal-open { overflow:hidden; }
@media(max-width:560px) { .resource-dialog { padding:30px 25px; } .resource-title { font-size:22px; } }
