/* qiming free flow v1: form action + sharper CTA/YiJi rendering */
.free-flow-box-v1{
  margin:18px 0 12px;
  padding:16px;
  border:1px solid rgba(201,148,57,.38);
  border-radius:18px;
  background:linear-gradient(135deg,#fffaf0,#fff3d7);
  box-shadow:0 14px 34px rgba(102,62,18,.10);
}
.free-flow-copy-v1{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;color:#3b210c;line-height:1.55;flex-wrap:wrap}
.free-flow-copy-v1 strong{font-size:18px;font-weight:950}
.free-flow-copy-v1 span{font-size:13px;color:#7a5427}
.free-flow-copy-v1 b{color:#8a4b00}
.free-flow-actions-v1{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.free-flow-status-v1{min-height:20px;margin-top:10px;color:#8a4b00;font-size:13px;font-weight:850;line-height:1.55}
.free-flow-generate-v1,.free-flow-secondary-v1{appearance:none;border:0;border-radius:999px;font-weight:950;cursor:pointer;letter-spacing:0}
.free-flow-generate-v1{min-height:48px;padding:13px 24px;background:linear-gradient(180deg,#ffe28a,#d89118);color:#271105;border:2px solid #8a4b12;box-shadow:0 12px 24px rgba(138,75,18,.20),inset 0 1px 0 rgba(255,255,255,.72);font-size:17px}
.free-flow-secondary-v1{min-height:42px;padding:10px 16px;background:#fffdf8;color:#6b431b;border:1px solid #ead3aa;font-size:14px}
.input-card[data-free-flow-mode="bazi"] .free-flow-secondary-v1[data-free-flow-mode="bazi"],.input-card[data-free-flow-mode="character"] .free-flow-secondary-v1[data-free-flow-mode="character"]{background:#2f1a0b;color:#fff4d0;border-color:#2f1a0b}
body.v8-app-ui .v8-action-row .v8-btn.primary,body.v81-reference-app .v8-action-row .v8-btn.primary,body.service-menu-layout .v8-action-row .v8-btn.primary{font-weight:950!important;text-shadow:none!important;-webkit-font-smoothing:antialiased!important;filter:none!important;background:linear-gradient(180deg,#ffe486 0%,#f4bd36 54%,#d28212 100%)!important;color:#241006!important;border-color:#7b3d0d!important;box-shadow:0 12px 26px rgba(95,46,10,.24),inset 0 1px 0 rgba(255,255,255,.76)!important}
.v8-btn.primary::after{font-weight:850!important;text-shadow:none!important;color:#4c2508!important}
body.v8-app-ui .v8-yiji-card b,body.v81-reference-app .v8-yiji-card b,body.service-menu-layout .v8-yiji-card b{text-shadow:none!important;box-shadow:none!important;-webkit-font-smoothing:antialiased!important;border:1px solid rgba(0,0,0,.06)!important}
.v8-yiji-card p{text-shadow:none!important;-webkit-font-smoothing:antialiased!important}
.v8-yiji-card .good b{background:#dff8e8!important;color:#08713b!important}
.v8-yiji-card .avoid b{background:#ffe3e0!important;color:#a51e18!important}
@media(max-width:680px){
  .free-flow-box-v1{margin:16px 0 10px;padding:14px;border-radius:16px}
  .free-flow-copy-v1{display:block}
  .free-flow-copy-v1 strong{display:block;font-size:17px;margin-bottom:4px}
  .free-flow-actions-v1{display:grid;grid-template-columns:1fr 1fr}
  .free-flow-generate-v1{grid-column:1/-1;width:100%;font-size:16px}
  .free-flow-secondary-v1{width:100%}
}

/* loading and optional-hour polish: 20260526 */
.free-flow-status-v1:not(:empty){
  display:block;
  padding:10px 12px;
  border-radius:12px;
  background:#fff8e7;
  border:1px solid rgba(201,148,57,.32);
  color:#68400f;
}
.free-flow-generate-v1:disabled,.advanced-btn:disabled,.baby-name-flow-btn:disabled{
  cursor:wait!important;
  opacity:.72!important;
  filter:saturate(.86)!important;
}
.advanced-busy-state{
  border-color:rgba(201,148,57,.35)!important;
  background:linear-gradient(135deg,#fffaf0,#fff4dc)!important;
}
.advanced-busy-state h3{
  color:#6b3b09!important;
}
.advanced-error-state{
  border-color:rgba(178,52,38,.28)!important;
  background:#fff4f1!important;
}

/* dynamic free report progress: 20260526 */
.free-flow-status-v1.is-busy{
  color:#59320b;
}
.free-flow-busy-head-v1{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
  margin-bottom:8px;
}
.free-flow-busy-head-v1 b{font-size:14px;color:#4b2607}
.free-flow-busy-head-v1 span{font-size:12px;color:#8a642e;white-space:nowrap}
.free-flow-progress-v1{
  height:8px;
  border-radius:999px;
  overflow:hidden;
  background:#f1dfbd;
  box-shadow:inset 0 1px 2px rgba(80,45,10,.16);
  margin:4px 0 8px;
}
.free-flow-progress-v1 span{
  display:block;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,#b66a16,#ffd978,#8f4f0e);
  transition:width .45s ease;
  background-size:180% 100%;
  animation:freeFlowProgressV1 1.2s linear infinite;
}
.free-flow-busy-line-v1{font-weight:900;color:#6c3d0f}
.free-flow-busy-note-v1{margin-top:6px;color:#8a4b12;font-size:12px;line-height:1.6}
.free-flow-error-v1{
  color:#9a261b;
  font-weight:900;
}
.free-flow-generate-v1.is-busy{
  background:linear-gradient(180deg,#ffe9a8,#d99a22)!important;
}
@keyframes freeFlowProgressV1{
  from{background-position:0 0}
  to{background-position:180% 0}
}
@media(max-width:680px){
  .free-flow-busy-head-v1{display:block}
  .free-flow-busy-head-v1 span{display:block;margin-top:2px}
}

/* unified dynamic generation progress  */
.qiming-progress-card{
  position:relative;
  border:1px solid rgba(201,148,57,.36)!important;
  border-radius:16px!important;
  background:
    radial-gradient(circle at 12% 0%,rgba(255,231,171,.75),transparent 34%),
    linear-gradient(135deg,#fffdf7,#fff2d4)!important;
  box-shadow:0 16px 34px rgba(80,45,10,.12)!important;
  padding:14px 15px!important;
  color:#3d2109!important;
  overflow:hidden;
}
.qiming-progress-card:before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(120deg,transparent,rgba(255,255,255,.48),transparent);
  transform:translateX(-100%);
  animation:qimingProgressSweepV28 2.4s ease-in-out infinite;
  pointer-events:none;
}
.qiming-progress-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:10px;position:relative}
.qiming-progress-title{font-weight:1000;color:#3f2108;font-size:15px;line-height:1.35}
.qiming-progress-time{font-size:12px;color:#7a5427;white-space:nowrap;font-weight:850}
.qiming-progress-track{height:9px;border-radius:999px;background:#efd8ad;overflow:hidden;box-shadow:inset 0 1px 3px rgba(80,45,10,.18);position:relative}
.qiming-progress-fill{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#8a4b12,#ffd978,#b66a16);background-size:180% 100%;transition:width .45s ease;animation:qimingProgressFillV28 1.1s linear infinite}
.qiming-progress-step{margin-top:9px;font-weight:950;color:#6a3a0d;line-height:1.55;position:relative}
.qiming-progress-detail{margin-top:4px;color:#806139;font-size:13px;line-height:1.65;position:relative}
.qiming-progress-note{margin-top:7px;padding:7px 9px;border-radius:10px;background:rgba(255,255,255,.58);color:#8a4b12;font-size:12px;line-height:1.55;position:relative}
.qiming-global-progress{position:fixed;left:50%;top:18px;transform:translateX(-50%);z-index:10020;width:min(390px,calc(100vw - 28px));pointer-events:none}
.qiming-global-progress .qiming-progress-card{backdrop-filter:blur(10px)}
#babyNameFlowStatus.baby-progress{border-color:rgba(201,148,57,.38)!important;background:#fff8e7!important;color:#3d2109!important;padding:0!important}
#babyNameFlowStatus.baby-progress .qiming-progress-card{border:0!important;box-shadow:none!important;margin:0!important}
.payment-status.payment-progress{border-color:rgba(201,148,57,.38)!important;background:#fff8e7!important;color:#3d2109!important;padding:0!important}
.payment-status.payment-progress .qiming-progress-card{border:0!important;box-shadow:none!important;margin:0!important}
.advanced-result.advanced-progress-state{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
.advanced-result.advanced-progress-state .qiming-progress-card{margin:0}
@keyframes qimingProgressFillV28{from{background-position:0 0}to{background-position:180% 0}}
@keyframes qimingProgressSweepV28{0%{transform:translateX(-100%)}48%,100%{transform:translateX(100%)}}
@media(max-width:680px){
  .qiming-progress-card{padding:12px!important;border-radius:14px!important}
  .qiming-progress-head{display:block}
  .qiming-progress-time{display:block;margin-top:3px}
  .qiming-global-progress{top:10px}
}

