.frank-vis-ai-trigger{display:inline-flex!important;align-items:center;justify-content:center;width:34px;height:34px;margin-left:8px;border:1px solid #ddd;border-radius:50%;background:#fff;text-decoration:none;font-size:18px;vertical-align:middle}.frank-vis-ai-floating{position:fixed;right:16px;bottom:95px;z-index:99998;box-shadow:0 4px 14px rgba(0,0,0,.2)}.frank-vis-ai-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:999999;align-items:center;justify-content:center;padding:18px}.frank-vis-ai-modal.open{display:flex}.frank-vis-ai-box{background:#fff;border-radius:18px;width:min(920px,96vw);max-height:88vh;overflow:auto;padding:24px;position:relative;box-shadow:0 20px 60px rgba(0,0,0,.25)}.frank-vis-ai-close{position:absolute;right:18px;top:14px;border:0;background:#f5f5f5;border-radius:50%;width:34px;height:34px;font-size:24px;line-height:1;cursor:pointer}.frank-vis-ai-box h2{font-size:28px;margin:0 40px 8px 0}.frank-vis-ai-box p{font-size:16px;color:#666;margin:0 0 18px}.frank-vis-ai-upload{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:2px dashed #ddd;border-radius:14px;padding:28px;cursor:pointer;background:#fafafa}.frank-vis-ai-upload span{font-weight:700;font-size:20px}.frank-vis-ai-upload small{color:#777}.frank-vis-ai-loading,.frank-vis-ai-error,.frank-vis-ai-ok,.frank-vis-ai-empty,.frank-vis-ai-debug{margin:14px 0;padding:12px 14px;border-radius:10px}.frank-vis-ai-loading{background:#f5f5f5}.frank-vis-ai-error{background:#ffe8e8;color:#b00020}.frank-vis-ai-ok{background:#e9f8ef;color:#157347}.frank-vis-ai-empty{background:#f5f5f5}.frank-vis-ai-debug{background:#eef4ff}.frank-vis-ai-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:16px}.frank-vis-ai-item{border:1px solid #e5e5e5;border-radius:14px;padding:10px;text-decoration:none;color:#222;background:#fff;display:block}.frank-vis-ai-item img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:10px;background:#f5f5f5}.frank-vis-ai-title{display:block;font-weight:700;margin:8px 0 4px;line-height:1.25}.frank-vis-ai-price{display:block;color:#444}.frank-vis-ai-match{display:inline-block;background:#111;color:#fff;border-radius:20px;padding:5px 10px;font-size:12px;font-weight:700;margin-top:8px}.frank-vis-ai-item small{display:block;color:#888;margin-top:6px}@media(max-width:640px){.frank-vis-ai-box{padding:18px;width:94vw}.frank-vis-ai-grid{grid-template-columns:repeat(2,1fr);gap:10px}.frank-vis-ai-box h2{font-size:24px}.frank-vis-ai-upload{padding:22px 12px}}