/* ===== Snow楽 全站统一字体（中日双语） ===== */
body,
button,
input,
textarea,
select {
  font-family:
    "Noto Sans JP",
    "Noto Sans TC",
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    "Hiragino Kaku Gothic ProN",
    "Yu Gothic",
    Meiryo,
    "PingFang TC",
    "Microsoft JhengHei",
    sans-serif;
}
h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
  letter-spacing: 0.5px;
}

/* ===== 申请资料蓝色气泡标题 ===== */
.doc-bubble {
  display: inline-block;
  background: #1f66cc;
  color: #ffffff;
  padding: 18px 36px;
  border-radius: 18px;
  font-size: 20px;
  font-weight: 700;
  position: relative;
  margin: 40px 0 16px;
}
.doc-bubble::after {
  content: "";
  position: absolute;
  left: 28px;
  bottom: -14px;
  width: 0;
  height: 0;
  border-top: 14px solid #1f66cc;
  border-left: 14px solid transparent;
  border-right: 14px solid transparent;
}
.doc-bubble + ul { margin-left: 20px; }

/* ===== 下载按钮 ===== */
.sr-dl-wrap{
  display:flex;
  flex-direction:column;
  gap:18px;
  align-items:center;
  justify-content:center;
}
.sr-dl-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:280px;
  padding:18px 22px;
  border-radius:999px;
  text-decoration:none;
  font-weight:700;
  letter-spacing:.5px;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.sr-dl-btn:hover{
  transform: translateY(-3px);
  filter: brightness(1.08);
  box-shadow: 0 14px 30px rgba(0,0,0,.18);
}
.sr-dl-btn:active{ transform: translateY(-1px); }

/* ================= 月租 Step1 ================= */
.sr-monthly-wrap{ margin:16px 0 24px; }
.sr-monthly-card{
  padding:18px 18px 14px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.22);
  background:linear-gradient(135deg,#0b3a8d 0%,#0b67d1 42%,#2da4ff 100%);
  box-shadow:0 18px 40px rgba(3,27,78,.22), inset 0 1px 0 rgba(255,255,255,.18);
  position:relative;
  overflow:hidden;
}
.sr-monthly-card::before{
  content:"";
  position:absolute;
  inset:-40% -30% auto -30%;
  height:220px;
  background:radial-gradient(circle at 30% 40%, rgba(255,255,255,.22) 0%, rgba(255,255,255,.10) 28%, rgba(255,255,255,0) 62%);
  pointer-events:none;
  transform:rotate(-8deg);
  z-index:0;
}
.sr-monthly-card > *{ position:relative; z-index:1; }

.sr-monthly-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:14px;
  align-items:end;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.18);
  border-radius:14px;
  padding:14px;
  backdrop-filter:blur(8px);
}
.sr-field .sr-label{
  color:rgba(255,255,255,.95);
  font-weight:800;
  letter-spacing:.5px;
  margin-bottom:8px;
}
.sr-monthly-card .sr-input{
  width:100% !important;
  padding:12px 12px !important;
  border-radius:12px !important;
  border:1px solid rgba(15,62,140,.20) !important;
  background:rgba(255,255,255,.96) !important;
  color:#0b1b3a !important;
  box-shadow:0 10px 22px rgba(0,0,0,.08) !important;
  outline:none !important;
  -webkit-appearance:none !important;
  appearance:none !important;
}
.sr-monthly-card .sr-input:focus{
  border-color:rgba(45,164,255,.55) !important;
  box-shadow:0 0 0 4px rgba(45,164,255,.22), 0 10px 22px rgba(0,0,0,.10) !important;
}
.sr-monthly-note{
  margin-top:12px;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.20);
  background:rgba(255,255,255,.14);
  color:rgba(255,255,255,.95);
  font-size:14px;
  line-height:1.7;
  backdrop-filter:blur(8px);
}
.sr-note-title{ font-weight:900; margin-bottom:4px; }
.sr-note-sub{ opacity:.95; }
#srm-tip{ margin-top:6px; font-weight:900; }

.sr-monthly-btn{
  margin-top:14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 16px;
  border-radius:12px;
  border:0;
  background:#ffffff;
  color:#0b1b3a;
  font-weight:900;
  letter-spacing:.3px;
  cursor:pointer;
}
.sr-monthly-btn:hover{ filter:brightness(.98); }

.sr-monthly-error{
  margin-top:10px;
  padding:10px 12px;
  border-radius:12px;
  background:rgba(0,0,0,.18);
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
  font-weight:700;
}

@media (max-width: 900px){
  .sr-monthly-card{ padding:14px 14px 12px; border-radius:16px; }
  .sr-monthly-grid{ grid-template-columns:1fr; gap:12px; padding:12px; }
}

/* ================= 月租 Step2（/monthly-rental-quote）================= */
#srq.srq-wrap{
  max-width: 1050px;
  margin: 0 auto;
  padding: 10px 18px 40px;
}
#srq .srq-title{
  font-size: 34px;
  font-weight: 900;
  margin: 10px 0 6px;
  letter-spacing: .5px;
}
#srq .srq-sub{
  margin: 0 0 18px;
  color: #5b6b86;
  font-weight: 600;
}

/* 摘要四格 */
#srq .srq-summary{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  background: #fff;
  border: 1px solid #e6eefc;
  border-radius: 16px;
  padding: 16px;
}
#srq .srq-card{
  background: #f7faff;
  border: 1px solid #e6eefc;
  border-radius: 14px;
  padding: 14px 14px;
}
#srq .srq-label{
  font-size: 13px;
  color: #6b7a95;
  font-weight: 800;
  margin-bottom: 6px;
}
#srq .srq-value{
  font-size: 18px;
  font-weight: 900;
  color: #0b1b3a;
  word-break: break-word;
}

/* 車型紅字（你說要醒目） */
#srq #srq-carType{
  color:#d60000;
}

/* 保險區 */
#srq .srq-ins{
  margin-top: 14px;
  background: #fff;
  border: 1px solid #e6eefc;
  border-radius: 16px;
  padding: 16px;
}
#srq .srq-ins-title{
  font-size: 16px;
  font-weight: 900;
  margin-bottom: 10px;
}
#srq .srq-radio{
  display: flex;
  gap: 10px;
  align-items: center;
  padding: 10px 12px;
  border: 1px solid #e6eefc;
  border-radius: 14px;
  background: #f7faff;
  margin-bottom: 10px;
  font-weight: 800;
}
#srq .srq-radio input{ transform: scale(1.05); }
#srq .srq-ins-note{
  color: #6b7a95;
  font-weight: 700;
  font-size: 13px;
  margin-top: 4px;
}

/* 金額藍條 */
#srq .srq-totalbar{
  margin-top: 14px;
  border-radius: 18px;
  padding: 16px 18px;
  background: linear-gradient(90deg, #0b4aa6, #1e88f5);
  color: #fff;
}
#srq .srq-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 0;
  border-bottom:1px solid rgba(255,255,255,.22);
  font-weight:900;
}
#srq .srq-row:last-child{ border-bottom:none; }
#srq .srq-row-strong{ font-size:18px; }
#srq .srq-row-right{
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

/* CF7 表單容器 */
#srq .srq-form{ margin-top: 18px; }

/* CF7：桌面兩列，手機一列 */
#srq .wpcf7 form{
  margin:0;
}
#srq .wpcf7 .sr-cf7-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:14px;
}
#srq .wpcf7 .sr-cf7-full{
  grid-column: 1 / -1;
}
#srq .wpcf7 label{
  display:block;
  font-weight:800;
  color:#0b1b3a;
  margin:0 0 6px;
}
#srq .wpcf7 input[type="text"],
#srq .wpcf7 input[type="tel"],
#srq .wpcf7 input[type="email"],
#srq .wpcf7 textarea{
  width:100%;
  border-radius:12px;
  border:1px solid #d9e4f6;
  background:#fff;
  padding:12px 12px;
  box-shadow:0 10px 22px rgba(0,0,0,.04);
}
#srq .wpcf7 textarea{ min-height:180px; resize:vertical; }

/* 送出按鈕 */
#srq .wpcf7 input[type="submit"]{
  width:100%;
  border:0;
  border-radius:14px;
  padding:16px 18px;
  font-weight:900;
  font-size:18px;
  background:#0b3a8d;
  color:#fff;
  cursor:pointer;
}
#srq .wpcf7 input[type="submit"]:hover{ filter:brightness(.98); }

@media (max-width: 1024px){
  #srq .srq-summary{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px){
  #srq .srq-summary{ grid-template-columns: 1fr; }
  #srq .wpcf7 .sr-cf7-grid{ grid-template-columns: 1fr; }
}
