/*
 * 배때지 V2 · AI 검수센터 (/v2/bbs/board.php)
 * - V2 shop 셸(.v2live-shell) 안에서 동작. 카드 그리드는 .v2live-products/.v2live-card
 *   (shop-final.css)를 그대로 상속 → max-width·여백·gap·이미지비율·2/3/4열 완전 동일.
 * - 이 파일은 AI 대시보드 전용 요소(HERO/링/뱃지/체크/상세 리포트/라이트박스)만 추가.
 */

:root{
    --aic:#4f6ef7; --aic-dark:#2f49c9; --aic-ok:#17a06b; --aic-exch:#f59e0b;
    --aic-ink:#141824; --aic-sub:#6b7488; --aic-line:#e6e9f0;
}

@keyframes aicPulse{0%{transform:scale(.7);opacity:1;}70%{transform:scale(2.2);opacity:0;}100%{opacity:0;}}
.aic-pulse{position:relative;display:inline-block;width:7px;height:7px;border-radius:50%;background:#61f0c9;margin-right:3px;}
.aic-pulse::after{content:"";position:absolute;inset:0;border-radius:50%;background:#61f0c9;animation:aicPulse 1.8s infinite;}

/* ===================== HERO ===================== */
.aic-hero{
    position:relative;overflow:hidden;margin:8px 8px 4px;padding:22px 18px;border-radius:18px;color:#fff;
    background:radial-gradient(120% 140% at 100% 0%, rgba(97,240,201,.26), transparent 46%),linear-gradient(120deg,#1b2560,#34409e 58%,#4f6ef7);
    box-shadow:0 12px 34px rgba(30,45,120,.26);
}
.aic-hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:24px 24px;opacity:.5;pointer-events:none;}
.aic-hero-left{position:relative;z-index:1;}
.aic-hero-tag{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border-radius:999px;background:rgba(255,255,255,.14);font-size:10.5px;font-weight:800;letter-spacing:.12em;}
.aic-hero h1{margin:11px 0 7px;font-size:22px;line-height:1.25;font-weight:800;}
.aic-hero h1 b{color:#8ff0d6;}
.aic-hero p{margin:0;font-size:12.5px;line-height:1.7;color:rgba(255,255,255,.85);}

.aic-hero-metrics{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:16px;}
.aic-metric{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:12px;text-align:center;}
.aic-metric strong{display:block;font-size:20px;font-weight:800;}
.aic-metric em{display:block;margin-top:3px;font-size:11px;font-style:normal;color:rgba(255,255,255,.8);}
.aic-metric-rate{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;}
.aic-ring{width:64px;height:64px;border-radius:50%;background:conic-gradient(#8ff0d6 calc(var(--rate,0)*1%), rgba(255,255,255,.18) 0);display:flex;align-items:center;justify-content:center;}
.aic-ring span{width:50px;height:50px;border-radius:50%;background:#141a44;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:800;}
.aic-ring span small{font-size:9px;opacity:.8;}

/* ===================== 카테고리 ===================== */
.aic-cats{display:flex;gap:7px;overflow-x:auto;padding:14px 8px 6px;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
.aic-cats::-webkit-scrollbar{display:none;}
.aic-cat{flex:0 0 auto;padding:8px 15px;border:1px solid var(--aic-line);border-radius:999px;background:#fff;font-size:12.5px;font-weight:700;color:#555;text-decoration:none;white-space:nowrap;}
.aic-cat.active{background:#141824;border-color:#141824;color:#fff;}

/* 검색 (summary 우측) */
.v2live-summary .aic-search{display:flex;align-items:center;gap:4px;}
.aic-search input{height:34px;padding:0 10px;border:1px solid var(--aic-line);border-radius:9px;font-size:12.5px;width:130px;}
.aic-search button{height:34px;width:38px;border:0;border-radius:9px;background:var(--aic);color:#fff;cursor:pointer;font-size:13px;}

/* ===================== 카드 오버레이 (shop 카드 규격 위) ===================== */
.aic-products .v2live-card-image{position:relative;}
.aic-badge{position:absolute;top:8px;left:8px;z-index:2;display:inline-flex;align-items:center;gap:3px;padding:4px 9px;border-radius:999px;font-size:10.5px;font-weight:800;color:#fff;box-shadow:0 2px 8px rgba(0,0,0,.18);}
.aic-badge i{font-style:normal;}
.aic-badge.is-done{background:linear-gradient(180deg,#1fbf80,#12a06a);}
.aic-badge.is-wait{background:linear-gradient(180deg,#7a83f0,#5563e0);}
.aic-badge.is-exchange{background:linear-gradient(180deg,#fbb040,#f2960c);}
.aic-badge.is-exchange-done{background:linear-gradient(180deg,#c99a3a,#a97f22);}
.aic-badge.is-etc{background:#6b7488;}
.aic-photocnt{position:absolute;bottom:8px;right:8px;z-index:2;padding:3px 8px;border-radius:999px;background:rgba(0,0,0,.55);color:#fff;font-size:10px;font-weight:700;}
@keyframes aicScan{0%{top:-20%;}100%{top:120%;}}
.aic-scan{position:absolute;inset:0;pointer-events:none;overflow:hidden;opacity:0;transition:opacity .3s;z-index:1;}
.aic-scan i{position:absolute;left:0;right:0;height:34%;background:linear-gradient(180deg,transparent,rgba(97,240,201,.35),transparent);animation:aicScan 2.4s linear infinite;}
.aic-card:hover .aic-scan{opacity:1;}
.aic-noimg{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:12px;color:#b3b9c6;background:#f1f3f7;}

/* --- 카드 정렬 통일: 모든 카드 동일 높이/정렬 (V2 SHOP 카드 기준) --- */
.aic-card .v2live-card-info{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;}
/* 브랜드: 고정 1줄 높이 */
.aic-card .v2live-card-brand{
    height:15px;line-height:15px;margin:0 0 3px;
    font-size:11px;font-weight:800;letter-spacing:.05em;color:var(--aic);text-transform:uppercase;
    overflow:hidden;white-space:nowrap;text-overflow:ellipsis;
}
/* 상품명: 정확히 2줄 고정(1줄이어도 2줄분 확보), 초과 말줄임 */
.aic-card-title{
    display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
    margin:0 0 7px!important;height:2.8em;min-height:2.8em;line-height:1.4;
    font-size:13px;font-weight:700;color:var(--aic-ink);word-break:break-word;
}
/* AI 검수 상태: 하단 고정(메타 바로 위) */
.aic-card-check{
    display:inline-flex;align-items:center;gap:5px;margin-top:auto;
    font-size:11px;font-weight:700;color:var(--aic-ok);
}
.aic-card-check b{width:14px;height:14px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--aic-ok);color:#fff;font-size:9px;}
/* 주문번호(좌) / 날짜(우) 한 줄 고정 */
.aic-card-meta{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:7px;padding-top:7px;border-top:1px solid #f2f4f8;}
.aic-card-order{font-size:10px;color:#9aa2b4;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.aic-card-date{font-size:10px;color:#b3b9c6;flex:0 0 auto;white-space:nowrap;}

/* 빈 상태 / 가드 */
.aic-empty,.aic-guard{margin:30px 10px;padding:60px 22px;text-align:center;border:1px dashed var(--aic-line);border-radius:18px;background:#fff;}
.aic-empty-ico,.aic-guard-ico{font-size:38px;}
.aic-empty strong,.aic-guard strong{display:block;margin:12px 0 6px;font-size:16px;color:var(--aic-ink);}
.aic-empty p,.aic-guard p{margin:0 0 14px;font-size:13px;color:var(--aic-sub);line-height:1.6;}
.aic-guard-btn{display:inline-block;padding:10px 22px;border-radius:999px;background:#141824;color:#fff;font-size:13px;font-weight:700;text-decoration:none;}

/* 정렬바 (V2 SHOP 스타일 · 탭형) */
.aic-sortbar{display:flex;gap:6px;overflow-x:auto;padding:6px 8px 2px;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
.aic-sortbar::-webkit-scrollbar{display:none;}
.aic-sort{flex:0 0 auto;padding:7px 13px;border-radius:999px;font-size:12.5px;font-weight:700;color:#8a90a0;text-decoration:none;white-space:nowrap;border:1px solid transparent;}
.aic-sort.active{color:var(--aic-dark);background:#eef1fe;border-color:#d6ddfb;}

/* 카드: 상품 연결상태 뱃지 (오류처럼 보이지 않게 중립적) */
.aic-link-badge{display:inline-flex;align-items:center;margin-top:5px;font-size:10.5px;font-weight:700;letter-spacing:-.01em;}
.aic-link-badge.is-linked{color:var(--aic-ok);}
.aic-link-badge.is-ended{color:#9aa2b4;}
.aic-link-badge.is-archive{color:#a7adba;}
.aic-link-badge.is-pending{color:#c98a2b;}

/* 무한스크롤 로딩 표시 */
.aic-loading{margin:18px 8px;padding:16px;text-align:center;font-size:12.5px;color:var(--aic-sub);}
#aicSentinel{width:100%;height:1px;}

/* 크롤러용 페이지 링크: 화면에는 숨김(숫자 페이지네이션 미표시), href 는 크롤 가능 */
.aic-seo-pg{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}

/* (구) 숫자 페이지네이션 — 무한스크롤로 대체, 미사용 */
.aic-pg{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:26px 8px 0;}
.aic-pg-btn{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 12px;border-radius:10px;border:1px solid var(--aic-line);background:#fff;color:var(--aic-ink);font-size:13px;font-weight:700;text-decoration:none;}
.aic-pg-btn.active{background:linear-gradient(180deg,#5a72f7,#3f56e6);border-color:#3f56e6;color:#fff;}
.aic-pg-dot{align-self:center;color:#b3b9c6;}

/* ===================== 상세 (검수 리포트) ===================== */
.aic-view{padding:0 8px;}
.aicv-hero{position:relative;overflow:hidden;margin:8px 0 14px;padding:20px 18px;border-radius:18px;color:#fff;
    background:linear-gradient(120deg,#1b2560,#34409e 60%,#4f6ef7);box-shadow:0 12px 34px rgba(30,45,120,.24);}
.aicv-hero.is-exchange,.aicv-hero.is-exchange-done{background:linear-gradient(120deg,#5a3410,#9a6410 60%,#f59e0b);}
.aicv-hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:24px 24px;opacity:.5;}
.aicv-back{position:relative;z-index:1;display:inline-block;color:rgba(255,255,255,.85);font-size:12.5px;font-weight:700;text-decoration:none;margin-bottom:9px;}
.aicv-tag{position:relative;z-index:1;display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:999px;background:rgba(255,255,255,.15);font-size:10px;font-weight:800;letter-spacing:.12em;}
.aicv-hero h1{position:relative;z-index:1;margin:11px 0 11px;font-size:20px;line-height:1.35;font-weight:800;word-break:break-word;}
.aicv-status{position:relative;z-index:1;display:inline-flex;align-items:center;gap:6px;padding:7px 15px;border-radius:999px;background:rgba(255,255,255,.16);font-size:13.5px;font-weight:800;}
.aicv-status i{font-style:normal;}

.aicv-grid{display:flex;flex-direction:column;gap:14px;}

.aicv-gallery{background:#fff;border:1px solid var(--aic-line);border-radius:16px;overflow:hidden;box-shadow:0 6px 24px rgba(28,40,80,.06);}
.aicv-stage{position:relative;}
.aicv-strip{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
.aicv-strip::-webkit-scrollbar{display:none;}
.aicv-slide{flex:0 0 100%;scroll-snap-align:center;border:0;padding:0;margin:0;background:#eef1f6;cursor:zoom-in;aspect-ratio:1/1;}
.aicv-slide img{width:100%;height:100%;object-fit:cover;display:block;}
.aicv-stage-tag{position:absolute;top:12px;left:12px;padding:5px 11px;border-radius:999px;background:rgba(20,26,68,.6);color:#8ff0d6;font-size:10px;font-weight:800;letter-spacing:.08em;}
.aicv-count{position:absolute;bottom:12px;right:12px;padding:4px 11px;border-radius:999px;background:rgba(0,0,0,.55);color:#fff;font-size:12px;font-weight:700;}
.aicv-thumbs{display:flex;gap:7px;overflow-x:auto;padding:10px 12px;scrollbar-width:none;}
.aicv-thumbs::-webkit-scrollbar{display:none;}
.aicv-thumb{flex:0 0 58px;width:58px;height:58px;padding:0;border:2px solid transparent;border-radius:10px;overflow:hidden;background:#eee;cursor:pointer;}
.aicv-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.aicv-thumb.active{border-color:var(--aic);}
.aicv-noimg{padding:60px 20px;text-align:center;color:#9aa2b4;font-size:13px;background:#fff;border:1px solid var(--aic-line);border-radius:16px;}

.aicv-side{display:flex;flex-direction:column;gap:13px;}
.aicv-card{background:#fff;border:1px solid var(--aic-line);border-radius:16px;box-shadow:0 6px 24px rgba(28,40,80,.06);padding:16px;}
.aicv-ai-head{display:flex;align-items:center;gap:14px;padding-bottom:12px;border-bottom:1px solid #f0f2f7;margin-bottom:12px;}
.aicv-ai-ring{flex:0 0 auto;width:68px;height:68px;border-radius:50%;background:conic-gradient(var(--aic) calc(var(--rate,0)*1%), #e8ecf5 0);display:flex;align-items:center;justify-content:center;}
.aicv-ai-ring span{width:52px;height:52px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:800;color:var(--aic-dark);}
.aicv-ai-ring span small{font-size:9px;}
.aicv-ai-verdict span{display:block;font-size:11.5px;color:var(--aic-sub);font-weight:700;}
.aicv-ai-verdict strong{display:block;margin-top:3px;font-size:18px;font-weight:800;}
.aicv-ai-verdict strong.is-done{color:var(--aic-ok);}
.aicv-ai-verdict strong.is-wait{color:var(--aic);}
.aicv-ai-verdict strong.is-exchange,.aicv-ai-verdict strong.is-exchange-done{color:var(--aic-exch);}
.aicv-checklist{list-style:none;margin:0;padding:0;}
.aicv-checklist li{display:flex;align-items:center;gap:8px;padding:7px 0;font-size:13px;font-weight:600;color:#4a5266;border-bottom:1px solid #f5f6fa;}
.aicv-checklist li:last-child{border-bottom:0;}
.aicv-checklist li b{width:20px;height:20px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-size:11px;color:#fff;background:var(--aic-ok);}
.aicv-checklist li.no b{background:#c3c9d6;}
.aicv-checklist li em{margin-left:auto;font-style:normal;font-size:12px;color:var(--aic);font-weight:800;}

.aicv-product-head,.aicv-confirm-head{font-size:13px;font-weight:800;color:var(--aic-ink);margin-bottom:12px;}
.aicv-product-body{display:flex;gap:12px;align-items:center;}
.aicv-product-thumb{flex:0 0 64px;width:64px;height:64px;border-radius:12px;overflow:hidden;background:#eef1f6;border:1px solid var(--aic-line);}
.aicv-product-thumb img{width:100%;height:100%;object-fit:cover;}
.aicv-product-brand{font-size:11px;font-weight:800;letter-spacing:.05em;color:var(--aic);text-transform:uppercase;}
.aicv-product-info strong{display:block;margin:3px 0;font-size:15px;font-weight:800;line-height:1.4;color:var(--aic-ink);}
.aicv-product-opt{font-size:12px;color:var(--aic-sub);}
.aicv-product-meta{margin:14px 0 0;}
.aicv-product-meta>div{display:flex;padding:8px 0;border-top:1px solid #f2f4f8;font-size:13px;}
.aicv-product-meta dt{flex:0 0 76px;color:var(--aic-sub);margin:0;}
.aicv-product-meta dd{margin:0;font-weight:700;color:var(--aic-ink);word-break:break-all;}
.aicv-product-link{display:inline-block;margin-top:12px;font-size:12.5px;font-weight:800;color:var(--aic);text-decoration:none;}

.aicv-confirm-desc{margin:0 0 12px;font-size:12px;color:var(--aic-sub);line-height:1.6;}
.aicv-btn{display:flex;width:100%;align-items:center;justify-content:center;height:50px;margin-top:8px;border:0;border-radius:12px;font-size:14px;font-weight:800;cursor:pointer;text-decoration:none;}
.aicv-btn.ok{background:linear-gradient(180deg,#5a72f7,#3f56e6);color:#fff;}
.aicv-btn.exchange{background:#fff;color:var(--aic-exch);border:1.5px solid var(--aic-exch);}
.aicv-btn.line{background:#fff;color:var(--aic-ink);border:1px solid var(--aic-line);width:auto;padding:0 24px;height:46px;margin:0 auto;}
.aicv-exform{margin-top:8px;}
.aicv-exform label{display:block;font-size:12.5px;font-weight:700;color:var(--aic-sub);margin:4px 0 6px;}
.aicv-exform textarea{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid var(--aic-line);border-radius:10px;font-size:13px;font-family:inherit;resize:vertical;}
.aicv-confirm.done{background:#f7f9fd;}
.aicv-memo{margin-top:10px;padding:10px 12px;background:#fff5e6;border:1px solid #ffe3b8;border-radius:10px;}
.aicv-memo span{display:block;font-size:12px;font-weight:800;color:#c47f13;margin-bottom:4px;}
.aicv-memo p{margin:0;font-size:13px;color:#7a4e10;line-height:1.6;}

.aicv-report{margin-top:16px;background:#fff;border:1px solid var(--aic-line);border-radius:16px;box-shadow:0 6px 24px rgba(28,40,80,.06);padding:18px;}
.aicv-report h2{margin:0 0 12px;font-size:15px;font-weight:800;color:var(--aic-ink);}
.aicv-report-block{padding:12px 0;border-top:1px solid #f2f4f8;}
.aicv-report-block:first-of-type{border-top:0;padding-top:0;}
.aicv-report-block h3{margin:0 0 6px;font-size:13px;font-weight:800;color:var(--aic-ink);}
.aicv-report-block p{margin:0;font-size:13px;line-height:1.7;color:#3f4658;}
.aicv-report-block.ex p{background:#fff5e6;border:1px solid #ffe3b8;border-radius:10px;padding:12px;color:#7a4e10;}
.aicv-actions{display:flex;justify-content:center;margin-top:18px;}

.aicv-lightbox{position:fixed;inset:0;z-index:9999;display:none;align-items:center;justify-content:center;background:rgba(8,12,28,.94);}
.aicv-lightbox.open{display:flex;}
.aicv-lightbox img{max-width:94vw;max-height:82vh;object-fit:contain;border-radius:6px;}
.aicv-lb-close,.aicv-lb-prev,.aicv-lb-next{position:absolute;background:rgba(255,255,255,.12);border:0;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;}
.aicv-lb-close{top:18px;right:18px;width:44px;height:44px;border-radius:50%;font-size:26px;}
.aicv-lb-prev,.aicv-lb-next{top:50%;transform:translateY(-50%);width:48px;height:64px;border-radius:12px;font-size:34px;}
.aicv-lb-prev{left:14px;}.aicv-lb-next{right:14px;}
.aicv-lb-count{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);color:#fff;font-size:13px;font-weight:700;background:rgba(0,0,0,.4);padding:5px 14px;border-radius:999px;}

/* ===== 태블릿+ : HERO 가로 배치 ===== */
@media (min-width:601px){
    .aic-hero{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:26px 26px;margin:12px 16px 6px;}
    .aic-hero-left{flex:1;}
    .aic-hero h1{font-size:26px;}
    .aic-hero-metrics{grid-template-columns:repeat(4,minmax(84px,1fr));margin-top:0;flex:0 0 auto;}
    .aic-cats{padding:16px 16px 6px;}
}
/* ===== PC : 상세 좌 이미지 / 우 결과 ===== */
@media (min-width:1024px){
    .aic-hero h1{font-size:30px;}
    .aicv-hero h1{font-size:25px;}
    .aicv-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(330px,1fr);gap:22px;align-items:start;}
    .aicv-gallery{position:sticky;top:16px;}
}
