/* CarClip TDI 車種別適合検索 / 車検証問い合わせ v1.2.0 */
.cc-tdi{max-width:960px;margin:0 auto;padding:0 12px 40px;box-sizing:border-box;color:#222;line-height:1.5}
.cc-tdi *{box-sizing:border-box}

/* ---- 検索フォーム ---- */
.cc-tdi__form{background:#f5f6f8;border:1px solid #e1e4ea;border-radius:10px;padding:14px 14px 10px;display:grid;grid-template-columns:1fr;gap:12px}
.cc-tdi__formtitle{margin:0;font-size:16px;font-weight:700;color:#1c3f95}
.cc-tdi__field label{display:block;font-size:13px;font-weight:700;margin:0 0 4px;color:#333}
.cc-tdi__field select{width:100%;font-size:17px;padding:12px 40px 12px 12px;border:1px solid #bfc4cc;border-radius:6px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%23444' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 14px center;-webkit-appearance:none;appearance:none;color:#222}
.cc-tdi__field select:disabled{background-color:#eef0f3;color:#999}
.cc-tdi__field select:focus{outline:2px solid #1c3f95;outline-offset:1px}
.cc-tdi__field--eng{border-top:1px dashed #cfd3da;padding-top:12px}
.cc-tdi__field--eng label{color:#c8102e}
.cc-tdi__req{font-weight:400;font-size:12px;margin-left:6px}
.cc-tdi__reset{justify-self:end;background:none;border:0;color:#1c3f95;text-decoration:underline;font-size:13px;cursor:pointer;padding:4px 0}

/* ---- ステータス ---- */
.cc-tdi__status{margin:18px 0 12px;font-size:15px;font-weight:700;padding:10px 12px;border-radius:8px;background:#f5f6f8}
.cc-tdi__status--loading{color:#666;font-weight:400}
.cc-tdi__status--loading::before{content:"";display:inline-block;width:14px;height:14px;margin:0 8px -2px 0;border:2px solid #bfc4cc;border-top-color:#1c3f95;border-radius:50%;animation:cc-spin .8s linear infinite}
@keyframes cc-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.cc-tdi__status--loading::before{animation:none}}
.cc-tdi__status--wait{background:transparent;padding-left:0;padding-right:0;color:#555;font-weight:400}
.cc-tdi__status--found{background:#fff3f4;border-left:4px solid #c8102e;font-size:16px;line-height:1.5}
.cc-tdi__status--found .cc-tdi__count{font-size:24px;color:#c8102e;margin:0 2px}
.cc-tdi__status--none{background:#fff8e5;border-left:4px solid #e6a100;font-weight:400}
.cc-tdi__status--error{background:#fdecee;border-left:4px solid #c8102e;color:#8d0b20;font-weight:400}
.cc-tdi__retry{background:#c8102e;color:#fff;border:0;border-radius:6px;padding:8px 14px;font-weight:700;font-size:14px;cursor:pointer;margin-left:6px}

/* ---- 結果カード ---- */
.cc-tdi__results{display:grid;grid-template-columns:1fr;gap:14px}
.cc-card{display:grid;grid-template-columns:104px 1fr;gap:12px;border:1px solid #e1e4ea;border-radius:10px;padding:12px;background:#fff}
.cc-card--bt{border-color:#b9c6ea}
.cc-card--nostock{opacity:.7}
.cc-card__img{display:block;aspect-ratio:1/1;background:#f2f2f2;border-radius:6px;overflow:hidden}
.cc-card__img img{width:100%;height:100%;object-fit:contain;display:block}
.cc-card__noimg{display:flex;width:100%;height:100%;align-items:center;justify-content:center;color:#aaa;font-weight:700}
.cc-card__body{min-width:0}
.cc-card__badges{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 6px}
.cc-card__badge{font-size:11px;padding:2px 8px;border-radius:999px;background:#f0f1f4;color:#666;font-weight:700}
.cc-card__badge--bt{background:#1c3f95;color:#fff}
.cc-card__badge--ng{background:#f3f3f3;color:#777}
.cc-card__title{margin:0 0 8px;font-size:14px;line-height:1.4;font-weight:700}
.cc-card__title a{color:#222;text-decoration:none}
.cc-card__power{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin:0 0 6px;font-size:15px}
.cc-card__ps{font-weight:700;color:#444;white-space:nowrap}
.cc-card__ps small{display:block;font-size:10px;font-weight:400;color:#888;line-height:1}
.cc-card__ps--after{color:#c8102e;font-size:22px}
.cc-card__arrow{color:#c8102e;font-weight:700;font-size:18px;align-self:center}
.cc-card__nm{flex-basis:100%;font-size:12px;color:#666}
.cc-card__price{margin:0 0 6px;font-size:22px;font-weight:700;color:#222}
.cc-card__price small{font-size:11px;font-weight:400;color:#666;margin-left:2px}
.cc-card__fit{margin:0 0 10px;font-size:12px;color:#555}
.cc-card__btn{display:block;text-align:center;background:#c8102e;color:#fff !important;text-decoration:none !important;font-weight:700;font-size:17px;padding:14px 18px;border-radius:8px;box-shadow:0 3px 0 #8d0b20}
.cc-card__btn:active{transform:translateY(2px);box-shadow:0 1px 0 #8d0b20}

/* ---- 型式が分からない方（車検証） ---- */
.cc-tdi__alt{margin:28px 0 0;padding:18px 14px;border:2px dashed #b9c6ea;border-radius:10px;text-align:center;background:#f7f9ff}
.cc-tdi__alttitle{margin:0 0 10px;font-size:15px;font-weight:700;color:#1c3f95}
.cc-tdi__altbtn{display:block;width:100%;border:0;cursor:pointer;font-family:inherit;background:#1c3f95;color:#fff !important;text-decoration:none !important;font-weight:700;font-size:18px;padding:16px 12px;border-radius:8px;box-shadow:0 3px 0 #122a66}
.cc-tdi__altbtn:active{transform:translateY(2px);box-shadow:0 1px 0 #122a66}
.cc-tdi__altbtn--sub{background:#fff;color:#1c3f95 !important;border:2px solid #1c3f95;box-shadow:none;margin-top:12px}
.cc-tdi__altnote{margin:10px 0 0;font-size:13px;color:#555;text-align:left}
.cc-tdi__foot{margin:24px 0 0;font-size:13px;color:#666}

/* ---- 車検証問い合わせフォーム ---- */
.cc-tdi--camera{max-width:680px}
.cc-tdi__lead{margin:0 0 18px;font-size:15px}
.cc-tdi__lead p{margin:0 0 8px}
.cc-tdi__leadnote{font-size:13px;color:#555;background:#f5f6f8;border-radius:6px;padding:8px 10px}
.cc-tdi__inq{display:block}
.cc-tdi__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.cc-tdi__fs{border:1px solid #e1e4ea;border-radius:10px;padding:14px;margin:0 0 16px;min-width:0}
.cc-tdi__fs legend{font-weight:700;font-size:15px;color:#1c3f95;padding:0 6px}
.cc-tdi__drop{display:block;text-align:center;border:2px dashed #1c3f95;border-radius:10px;padding:22px 12px;background:#f7f9ff;cursor:pointer}
.cc-tdi__drop:focus-within{outline:2px solid #1c3f95;outline-offset:2px}
.cc-tdi__drop input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
.cc-tdi__dropicon{display:block;font-size:34px;line-height:1;margin-bottom:6px}
.cc-tdi__droptxt{display:block;font-size:17px;font-weight:700;color:#1c3f95}
.cc-tdi__dropsub{display:block;font-size:12px;color:#666;margin-top:4px}
.cc-tdi__files{list-style:none;margin:10px 0 0;padding:0}
.cc-tdi__files li{display:grid;grid-template-columns:56px 1fr auto;gap:10px;align-items:center;padding:6px 0;border-bottom:1px solid #eee}
.cc-tdi__thumb{width:56px;height:56px;object-fit:cover;border-radius:6px;background:#eee;display:flex;align-items:center;justify-content:center;font-size:24px}
.cc-tdi__fname{font-size:13px;word-break:break-all}
.cc-tdi__fname small{color:#888;margin-left:4px}
.cc-tdi__fdel{background:none;border:1px solid #ccc;border-radius:50%;width:30px;height:30px;cursor:pointer;color:#666;font-size:14px}
.cc-tdi__hint{margin:10px 0 0;font-size:12px;color:#555}
.cc-tdi__row{margin:0 0 12px}
.cc-tdi__row:last-child{margin-bottom:0}
.cc-tdi__row label{display:block;font-size:13px;font-weight:700;margin:0 0 4px;color:#333}
.cc-tdi__must{display:inline-block;background:#c8102e;color:#fff;font-size:10px;font-weight:700;padding:1px 6px;border-radius:3px;margin-left:6px;vertical-align:middle}
.cc-tdi__row input,.cc-tdi__row textarea{width:100%;font-size:17px;padding:12px;border:1px solid #bfc4cc;border-radius:6px;background:#fff;color:#222}
.cc-tdi__row input:focus,.cc-tdi__row textarea:focus{outline:2px solid #1c3f95;outline-offset:1px}
.cc-tdi__inqmsg{margin:0 0 12px;padding:10px 12px;border-radius:8px;font-size:14px;font-weight:700}
.cc-tdi__inqmsg--ng{background:#fdecee;color:#8d0b20;border-left:4px solid #c8102e}
.cc-tdi__inqmsg--ok{background:#eaf7ee;color:#1e6b34;border-left:4px solid #2e9e50}
.cc-tdi__submit{display:block;width:100%;background:#c8102e;color:#fff;border:0;border-radius:8px;font-size:18px;font-weight:700;padding:16px 12px;cursor:pointer;box-shadow:0 3px 0 #8d0b20}
.cc-tdi__submit:disabled{opacity:.6;cursor:default;box-shadow:none}
.cc-tdi__agree{margin:10px 0 0;font-size:12px;color:#666;text-align:center}
.cc-tdi__done{border:2px solid #2e9e50;border-radius:10px;padding:20px 16px;background:#f3fbf5;text-align:center;font-size:15px}
.cc-tdi__done p{margin:0 0 8px}
.cc-tdi__donetitle{font-size:22px;font-weight:700;color:#1e6b34}

@media (min-width:640px){
	.cc-tdi__form{grid-template-columns:1fr 1fr;padding:20px}
	.cc-tdi__formtitle,.cc-tdi__field--eng,.cc-tdi__reset{grid-column:1/-1}
	.cc-tdi__results{grid-template-columns:1fr 1fr}
	.cc-card{grid-template-columns:130px 1fr}
	.cc-tdi__alt{padding:22px}
	.cc-tdi__altbtn{max-width:420px;margin:0 auto}
	.cc-tdi__altnote{text-align:center}
}

/* ---- 車検証OCR（v1.3.0） ---- */
.cc-tdi__scan{margin:0 0 22px}
.cc-tdi__drop--big{padding:30px 12px;border-width:3px;background:#eef3ff}
.cc-tdi__drop--big .cc-tdi__dropicon{font-size:44px}
.cc-tdi__drop--big .cc-tdi__droptxt{font-size:19px}
.cc-tdi__scan .cc-tdi__status{margin-top:14px}
.cc-tdi__read{margin:14px 0 0;border:1px solid #e1e4ea;border-radius:10px;padding:12px 14px;background:#fff}
.cc-tdi__readtitle{margin:0 0 8px;font-weight:700;font-size:14px;color:#1c3f95}
.cc-tdi__readlist{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;margin:0;font-size:14px}
.cc-tdi__readlist dt{color:#666;font-size:12px;padding-top:2px}
.cc-tdi__readlist dd{margin:0;font-weight:700;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.02em;word-break:break-all}
.cc-tdi__nodata{color:#b32d2e;font-weight:400;font-family:inherit}
.cc-tdi__scan .cc-tdi__results{margin-top:14px}
.cc-tdi__formhead{margin:0 0 12px;font-size:17px;font-weight:700;color:#1c3f95;border-left:4px solid #1c3f95;padding-left:10px}
.cc-tdi__row--2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cc-tdi__row--2 > div{min-width:0}
.cc-tdi__linkbtn{background:none;border:0;color:#1c3f95;text-decoration:underline;font-size:12px;font-weight:400;cursor:pointer;padding:0;margin-left:8px}
.cc-tdi__nohit{margin:14px 0 0;padding:18px 16px;border:2px solid #e6a100;border-radius:10px;background:#fff8e5;text-align:center;font-size:15px}
.cc-tdi__nohit p{margin:0 0 10px}
.cc-tdi__nohittitle{font-size:19px;font-weight:700;color:#8a5a00}
.cc-tdi__nohitsub{font-size:13px;color:#666}
.cc-tdi__nohit .cc-tdi__altbtn{margin-top:4px}
.cc-tdi__detail{margin:0 0 12px}
