
:root{--bg:#f8f6f0;--ink:#1c3328;--muted:#6b7c72;--deep:#174d36;--green:#2a7a58;--green2:#368c68;--gold:#d19a3c;--line:#e0e6e1;--card:#ffffff;--soft:#f2f7f3;--danger:#b34d3f;--shadow:0 12px 36px rgba(23,77,54,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(180deg,#fcfaf5 0,#f7f9f6 70%,#f0f5f1 100%);color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI","Noto Sans TC","PingFang TC",sans-serif;line-height:1.7}
button,input,textarea{font:inherit}button{cursor:pointer}a{color:var(--green);font-weight:800}.hidden{display:none!important}
.topbar{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:12px clamp(16px,4vw,54px);background:rgba(255,255,255,.94);backdrop-filter:blur(10px);color:var(--ink);box-shadow:0 2px 12px rgba(0,0,0,.05);border-bottom:1px solid var(--line)}
.brand-btn{border:0;background:transparent;color:var(--ink);display:flex;align-items:center;gap:11px;text-align:left}.brand-btn strong{display:block;font-size:18px;letter-spacing:.02em;color:var(--deep)}.brand-btn small{display:block;color:var(--muted)}.brand-mark{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:var(--green);color:#fff;font-weight:1000;font-size:18px}
.userbox{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.user-chip,.trial-chip{font-size:13px;padding:6px 12px;border-radius:999px;background:var(--soft);color:var(--muted);border:1px solid var(--line)}.trial-chip{background:rgba(209,154,60,.12);color:var(--gold);border-color:rgba(209,154,60,.2)}
.app-shell{max-width:1140px;margin:0 auto;padding:30px clamp(16px,4vw,40px) 80px}.view{animation:fade .22s ease}@keyframes fade{from{opacity:.3;transform:translateY(5px)}to{opacity:1;transform:none}}
.auth-shell{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr);gap:40px;align-items:center;min-height:60vh}.auth-copy{padding:26px 6px}.auth-copy h1,.stage-card h1,.result-shell h1,#expired-view h1{font-size:clamp(32px,5vw,56px);line-height:1.15;letter-spacing:-.02em;margin:.3em 0;color:var(--deep)}.auth-copy p{font-size:18px;max-width:700px;color:var(--muted)}
.card{background:var(--card);border:1px solid var(--line);border-radius:28px;padding:clamp(24px,5vw,48px);box-shadow:var(--shadow)}.narrow{max-width:640px;margin:30px auto}.login-card{max-width:480px;justify-self:end;width:100%}.eyebrow{font-size:13px;letter-spacing:.15em;text-transform:uppercase;color:var(--gold);font-weight:1000;margin:0 0 12px}.muted{color:var(--muted)}
.tabs{display:grid;grid-template-columns:1fr 1fr;margin:20px 0;background:var(--soft);padding:4px;border-radius:14px}.tab{border:0;background:transparent;padding:12px;border-radius:11px;font-weight:800;color:var(--muted);transition:all .2s}.tab.active{background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.06);color:var(--deep)}
label{display:block;font-weight:800;margin:16px 0 8px;color:var(--ink)}input{width:100%;border:1px solid var(--line);border-radius:14px;padding:14px 16px;background:#fff;color:var(--ink);outline:none;transition:border .2s}input:focus{border-color:var(--green);box-shadow:0 0 0 4px rgba(42,122,88,.1)}
.primary,.ghost,.link-btn{border:0;border-radius:14px;padding:14px 22px;font-weight:900;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.primary{background:var(--green);color:white;box-shadow:0 8px 24px rgba(42,122,88,.2)}.primary:hover{background:var(--green2);transform:translateY(-1px)}.primary:disabled,.ghost:disabled{opacity:.45;cursor:not-allowed}.ghost{background:var(--soft);color:var(--ink)}.full{width:100%;margin-top:12px}.big{padding:18px 28px;font-size:18px}.link-btn{background:transparent;color:var(--green);padding-left:0;text-decoration:underline;cursor:pointer}.message{min-height:30px;margin-top:12px;color:var(--danger);font-weight:700}.message.ok{color:var(--green)}
.setup-warning{background:#fff8e6;border:1px solid #f0d48a;color:#856404;padding:16px;border-radius:16px;margin-bottom:20px}
.quiz-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px}.remaining-box{min-width:90px;text-align:center;border-radius:18px;background:var(--soft);border:1px solid var(--line);padding:10px 14px}.remaining-box strong{display:block;font-size:24px;color:var(--deep)}.remaining-box span{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.progress-track{height:10px;background:var(--soft);border-radius:999px;overflow:hidden;margin:0 0 32px}.progress-track span{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--gold));width:0;transition:width .3s}
.question-card{padding:0 0 30px}.question-prompt{font-size:clamp(32px,6vw,54px);line-height:1.2;font-weight:1000;margin:16px 0;color:var(--deep)}.question-hint{color:var(--muted);font-size:17px}.answer-area{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:28px}.choice-btn{border:1px solid var(--line);background:#fff;border-radius:16px;padding:18px;text-align:left;font-weight:800;color:var(--ink);transition:all .2s}.choice-btn:hover{border-color:var(--green);background:var(--soft)}.choice-btn.selected{border-color:var(--green);background:var(--soft);box-shadow:0 0 0 2px rgba(42,122,88,.15)}
.quiz-actions{display:flex;gap:12px;margin-top:30px}.quiz-actions .primary{flex:2}.quiz-actions .ghost{flex:1}
.matching-board{display:grid;grid-template-columns:1fr 60px 1fr;gap:20px;align-items:start;margin-top:30px}.matching-arrow{display:grid;place-items:center;min-height:120px;font-size:32px;color:var(--gold)}.match-list{display:grid;gap:12px}.match-btn{border:1px solid var(--line);background:white;border-radius:16px;padding:16px;text-align:left;color:var(--ink);font-weight:800;transition:all .2s}.match-btn.selected{border-color:var(--gold);background:#fff9ed;box-shadow:0 0 0 3px rgba(209,154,60,.15)}.match-btn.paired{background:var(--soft);border-color:var(--green);opacity:.7}
.result-shell{display:grid;gap:24px}.score-hero{background:var(--card);border:2px solid var(--green);border-radius:32px;padding:40px;text-align:center}.score-hero .eyebrow{margin-bottom:20px}.score-number{font-size:clamp(60px,12vw,110px);line-height:1;font-weight:1000;color:var(--green);margin:10px 0}.score-caption{color:var(--muted);font-size:17px}.gate-score-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:24px auto;max-width:600px}.gate-score-card{background:var(--soft);border:1px solid var(--line);border-radius:20px;padding:20px}.gate-score-card span{display:block;color:var(--muted);font-weight:800;margin-bottom:8px;font-size:14px}.gate-score-card strong{display:block;font-size:clamp(28px,4vw,42px);line-height:1;color:var(--deep)}.insight-card,.market-card,.value-card,.price-card{background:var(--card);border:1px solid var(--line);border-radius:28px;padding:clamp(24px,4vw,40px)}.insight-card h2,.market-card h2,.value-card h2,.price-card h2{font-size:clamp(24px,3.5vw,36px);line-height:1.25;color:var(--deep);margin-top:0}.market-gap{font-size:clamp(26px,4vw,44px);line-height:1.25;font-weight:1000;color:var(--green);margin:24px 0}.knife{font-size:clamp(28px,4.5vw,52px);line-height:1.2;font-weight:1000;color:var(--deep);border-left:6px solid var(--gold);padding-left:24px;margin:32px 0}
.cta-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.cta-card{display:flex;flex-direction:column;justify-content:space-between;border:1px solid var(--line);border-radius:24px;padding:28px;background:white;transition:all .3s}.cta-card.featured{border-color:var(--green);box-shadow:0 12px 32px rgba(42,122,88,.12);transform:scale(1.02)}.price{font-size:38px;font-weight:1000;color:var(--green);margin:16px 0}.payment-note{margin:16px 0 0;color:var(--muted);font-size:14px}
.official-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.official-grid div{background:var(--soft);border-radius:18px;padding:18px}.official-grid strong{display:block;font-size:22px;color:var(--deep)}.official-grid span{font-size:14px;color:var(--muted)}
footer{display:flex;justify-content:center;gap:30px;flex-wrap:wrap;padding:40px 16px 60px;color:var(--muted);font-size:14px;border-top:1px solid var(--line)}
@media(max-width:820px){.auth-shell{grid-template-columns:1fr}.login-card{justify-self:stretch;max-width:none}.matching-board{grid-template-columns:1fr}.matching-arrow{min-height:auto;transform:rotate(90deg)}.choice-grid,.cta-grid,.official-grid,.gate-score-grid{grid-template-columns:1fr}.topbar{flex-direction:column;align-items:center;text-align:center}.userbox{justify-content:center}.app-shell{padding-top:20px}}
@media(max-width:520px){.card{border-radius:20px;padding:24px}.auth-copy h1{font-size:38px}.choice-btn{padding:14px}}
/* ============================================================
   WURA R2B 追加樣式 —— 貼到 public/styles.css 檔案「最後面」
   明亮白天球館風：暖白底、淺木質感、自然光、品牌綠識別
   ============================================================ */

.w-level{
  font-size:clamp(2rem,7vw,3rem);
  line-height:1.15;
  margin:.25em 0 .35em;
  color:#1f7a4d;
}
.w-table{
  display:grid;
  gap:.5rem;
  margin:1.25rem 0;
}
.w-row{
  display:flex;
  flex-direction:column;
  gap:.15rem;
  padding:.85rem 1rem;
  border:1px solid #e4e0d8;
  border-radius:.75rem;
  background:#fdfcfa;
}
.w-row strong{ color:#4a4640; }
.w-row span{ font-size:.9rem; color:#6d675f; }
.w-row.active{
  border-color:#1f7a4d;
  background:#f2faf5;
  box-shadow:0 2px 10px rgba(31,122,77,.10);
}
.w-row.active strong{ color:#1f7a4d; }

.section-divider{
  border:0;
  border-top:1px solid #e4e0d8;
  margin:2.5rem 0;
}

.benchmark-card{ background:#fbf9f5; }
.benchmark-inline{
  padding:.9rem 1.1rem;
  border-left:3px solid #1f7a4d;
  background:#f7f5f0;
  border-radius:.35rem;
  font-size:.95rem;
  line-height:1.7;
}

.cta-block{
  display:grid;
  gap:.75rem;
  margin:2rem 0 1rem;
}
.button-link{
  display:inline-block;
  text-align:center;
  text-decoration:none;
}
.big{
  padding:1.05rem 1.25rem;
  font-size:1.05rem;
  line-height:1.45;
}
.full{ width:100%; }

.knife{
  font-size:clamp(1.25rem,4.5vw,1.75rem);
  font-weight:700;
  line-height:1.45;
  color:#2b2823;
  margin:1.25rem 0;
}
.market-gap{ color:#1f7a4d; }

.official-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:.65rem;
  margin:1.1rem 0;
}
.official-grid > div{
  padding:.8rem .9rem;
  border-radius:.7rem;
  background:#fdfcfa;
  border:1px solid #e9e5dd;
}
.official-grid strong{ display:block; color:#2b2823; }
.official-grid span{ font-size:.85rem; color:#6d675f; }

/* 手機優先：廣告流量以手機為主 */
@media (max-width:640px){
  .w-level{ font-size:2.1rem; }
  .big{ padding:1rem; font-size:1rem; }
  .official-grid{ grid-template-columns:1fr 1fr; }
}
/* P0 版追加：作答頁引導語（只在第一題顯示） */
.quiz-intro{
  margin:.25rem 0 1rem;
  padding:.75rem .95rem;
  background:#f7f5f0;
  border-left:3px solid #1f7a4d;
  border-radius:.35rem;
  font-size:.93rem;
  line-height:1.75;
  color:#4a4640;
}
.quiz-intro.hidden{display:none}
/* P0 版追加：作答頁引導語（只在第一題顯示） */
.quiz-intro{
  margin:.25rem 0 1rem;
  padding:.75rem .95rem;
  background:#f7f5f0;
  border-left:3px solid #1f7a4d;
  border-radius:.35rem;
  font-size:.93rem;
  line-height:1.75;
  color:#4a4640;
}
.quiz-intro.hidden{display:none}
/* P0 版追加：作答頁引導語（只在第一題顯示） */
.quiz-intro{
  margin:.25rem 0 1rem;
  padding:.75rem .95rem;
  background:#f7f5f0;
  border-left:3px solid #1f7a4d;
  border-radius:.35rem;
  font-size:.93rem;
  line-height:1.75;
  color:#4a4640;
}
.quiz-intro.hidden{display:none}

/* 第二顆 CTA：與第一顆等高等寬的綠框按鈕，必須清楚可見 */
.cta-second{
  display:inline-block;
  width:100%;
  text-align:center;
  text-decoration:none;
  background:#ffffff;
  color:#1f7a4d;
  border:2px solid #1f7a4d;
  border-radius:.6rem;
  font-weight:700;
  cursor:pointer;
}
.cta-second:hover{ background:#f2faf5; }

/* ============================================================
   WURA P1 V3 追加樣式
   ============================================================ */

.warmup-orange {
  background-color: #E07B2C !important;
  color: #FFFFFF !important;
  border: none !important;
  box-shadow: 0 4px 14px rgba(224, 123, 44, 0.3) !important;
}
.warmup-orange:hover {
  background-color: #C66A23 !important;
}

.brand-green-outline {
  background-color: #FFFFFF !important;
  color: #1E5B45 !important;
  border: 2px solid #1E5B45 !important;
}
.brand-green-outline:hover {
  background-color: #F0F7F4 !important;
}

.wrong-words {
  font-weight: 700;
  color: #E07B2C;
  margin-top: 1rem;
}
.wrong-more {
  font-size: 0.9rem;
  color: var(--muted);
}
.wrong-none {
  font-weight: 700;
  color: var(--green);
}

.bridge-card p {
  margin-bottom: 1.25rem;
  font-size: 1.05rem;
  line-height: 1.8;
}

#p1-2-answer-area {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-top: 24px;
}

@media (max-width: 600px) {
  #p1-2-answer-area {
    grid-template-columns: 1fr;
  }
}
