:root{
  --bg:#f3fbfc;
  --surface:#fff;
  --surface-2:#f7fcfd;
  --ink:#10363d;
  --muted:#607c82;
  --line:#c9e2e6;
  --accent:#18c6d1;
  --accent-deep:#079da9;
  --accent-soft:#e8fbfc;
  --dark:#0d2d33;
  font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,system-ui,-apple-system,sans-serif
}
*{box-sizing:border-box}
html{background:var(--bg);color:var(--ink);scroll-behavior:smooth}
body{margin:0;min-height:100dvh;background:
  radial-gradient(circle at 12% 0%,rgba(24,198,209,.12),transparent 26%),
  linear-gradient(180deg,#fcffff 0,#f3fbfc 52%,#edf8f9 100%)}
button{font:inherit}
.hidden{display:none!important}
.pricing-shell{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:22px 0 70px}
.pricing-top-actions{display:flex;justify-content:flex-start;padding:0 0 10px}
.my-voicha-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:38px;
  padding:0 14px;
  border:1px solid #7fc5cd;
  background:#fff;
  color:#24545b;
  text-decoration:none;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em
}
.my-voicha-link:hover{background:#f6fdfd;border-color:var(--accent)}
.my-voicha-person{
  width:25px;
  height:25px;
  display:grid;
  place-items:center;
  flex:0 0 25px;
  border-radius:50%;
  background:#e7f9fa;
  border:1px solid #9edce1
}
.my-voicha-person svg{width:14px;height:14px;fill:#25727a}
.pricing-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:3px 0 22px}
.brand-link{display:block}.brand-link img{display:block;width:172px;height:auto}
.back-link{color:#426870;text-decoration:none;font-size:12px;font-weight:800}
.pricing-hero{padding:58px 54px;border:1px solid var(--line);background:
  radial-gradient(circle at 86% 20%,rgba(24,198,209,.15),transparent 30%),
  #fff;box-shadow:0 22px 70px rgba(26,91,99,.08)}
.eyebrow{margin:0 0 12px;color:var(--accent-deep);font:900 10px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.18em}
.pricing-hero h1,.section-heading h2{margin:0;letter-spacing:-.045em}
.pricing-hero h1{max-width:820px;font-size:clamp(38px,5vw,66px);line-height:1.08}
.hero-copy{max-width:760px;margin:23px 0 0;color:var(--muted);font-size:14px;line-height:1.95}
.free-pill{display:inline-flex;align-items:center;gap:13px;margin-top:28px;padding:11px 16px;border:1px solid #88d9df;background:var(--accent-soft)}
.free-pill span{color:var(--accent-deep);font:900 10px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.14em}
.free-pill strong{font-size:13px}
.usage-section,.plans-section,.credits-section,.faq-section{margin-top:32px;padding:46px;border:1px solid var(--line);background:var(--surface)}
.section-heading{margin-bottom:30px}
.section-heading.centered{text-align:center}
.section-heading h2{font-size:clamp(29px,4vw,44px);line-height:1.18}
.section-heading>p:last-child{max-width:760px;margin:14px 0 0;color:var(--muted);font-size:13px;line-height:1.85}
.section-heading.centered>p:last-child{margin-left:auto;margin-right:auto}
.usage-layout{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);gap:54px;align-items:center}
.phone-frame{position:relative;width:min(100%,350px);margin:0 auto;padding:11px;border:2px solid #16343a;border-radius:38px;background:#112a2f;box-shadow:0 30px 60px rgba(14,60,68,.18)}
.phone-speaker{position:absolute;z-index:2;top:7px;left:50%;width:65px;height:7px;border-radius:999px;background:#08191c;transform:translateX(-50%)}
.phone-screen{min-height:600px;padding:30px 16px 18px;border-radius:28px;background:linear-gradient(180deg,#f5feff,#eaf8fa);overflow:hidden}
.demo-status{display:flex;align-items:center;gap:9px;padding-bottom:13px;border-bottom:1px solid #cee6e9}
.demo-avatar{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:#fff;font-weight:900}
.demo-status strong{display:block;font-size:12px}.demo-status span{display:block;margin-top:2px;color:#789399;font-size:8px;letter-spacing:.12em}
.demo-status i{margin-left:auto;color:#20bd80;font-size:8px;font-style:normal}
.bubble{max-width:86%;margin-top:11px;padding:10px 12px;font-size:11px;line-height:1.65}
.bubble-user{margin-left:auto;background:#dfecef;color:#25474e}
.bubble-ai{margin-right:auto;background:#fff;border:1px solid #c4e7ea;color:#153e45;box-shadow:0 8px 18px rgba(25,102,111,.06)}
.demo-meter{margin-top:16px;padding:12px 13px;border:1px solid #81d7de;background:#f8ffff}
.demo-meter span{display:block;color:#708e94;font-size:9px}.demo-meter strong{display:block;margin-top:3px;color:var(--accent-deep);font-size:15px}
.demo-caption{margin:12px auto 0;text-align:center;color:#80969a;font-size:10px}
.usage-examples{display:grid;gap:11px}
.time-card{display:grid;grid-template-columns:92px 1fr;align-items:center;gap:18px;min-height:82px;padding:15px 20px;border:1px solid var(--line);background:#fff}
.time-card.featured{border-color:#6bd1d9;background:#f3feff;box-shadow:inset 4px 0 0 var(--accent)}
.time{font-size:27px;font-weight:300;color:#244e55}
.time-card strong{display:block;font-size:18px}.time-card small{display:block;margin-top:6px;color:var(--muted);font-size:11px}
.usage-tip{margin-top:3px;padding:20px 22px;background:var(--dark);color:#fff}
.usage-tip strong{display:block;font-size:13px}.usage-tip p{margin:7px 0 0;color:rgba(255,255,255,.76);font-size:11px;line-height:1.8}
.estimate-note{margin:24px 0 0;color:#7b9499;font-size:10px;text-align:center}
.plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.plan-card{position:relative;display:flex;flex-direction:column;min-height:485px;padding:27px 24px;border:1px solid var(--line);background:#fff}
.recommended-card{border:2px solid var(--accent);box-shadow:0 20px 45px rgba(24,198,209,.13)}
.recommended-badge{position:absolute;top:-13px;right:18px;padding:7px 12px;background:var(--accent);color:#003d42;font-size:10px;font-weight:900}
.plan-code{margin:0 0 8px;color:#789398;font:900 9px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.15em}
.plan-card h3{margin:0;font-size:25px}
.price{display:flex;align-items:flex-end;gap:8px;margin-top:16px}.price strong{font-size:45px;line-height:1;letter-spacing:-.04em}.price span{padding-bottom:4px;color:var(--muted);font-size:12px;font-weight:800}
.quota{margin:19px 0 0;color:var(--accent-deep);font-size:20px;font-weight:900}
.talk-time{margin-top:15px;padding:14px;border:1px solid #d3e8eb;background:#f8fcfd}
.talk-time span{display:block;color:#789296;font-size:9px}.talk-time strong{display:block;margin-top:4px;font-size:16px}
.plan-card ul{margin:18px 0 22px;padding-left:18px;color:var(--muted);font-size:11px;line-height:1.9}
.checkout-button{width:100%;min-height:48px;margin-top:auto;border:1px solid var(--accent);background:var(--accent);color:#003b40;font-weight:900;cursor:pointer}
.checkout-button:hover,.credit-button:hover{filter:brightness(.98);transform:translateY(-1px)}
.credit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.credit-card{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:21px;border:1px solid var(--line);background:#fbfefe}
.credit-card p{margin:0;font-size:18px;font-weight:900}.credit-card span{display:block;margin-top:5px;color:var(--muted);font-size:10px}.credit-card>strong{font-size:24px}
.credit-button{grid-column:1/-1;width:100%;min-height:48px;margin-top:auto;border:1px solid var(--accent);background:var(--accent);color:#003b40;font-weight:900;cursor:pointer}
.faq-list{display:grid;gap:9px}.faq-list details{padding:17px 19px;border:1px solid var(--line);background:#fbfefe}.faq-list summary{cursor:pointer;font-size:12px;font-weight:900}.faq-list p{margin:10px 0 0;color:var(--muted);font-size:11px;line-height:1.8}
.pricing-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:34px 6px 0;color:#789095}.pricing-footer img{width:150px}.pricing-footer p{margin:0;font-size:10px}
.checkout-modal{position:fixed;z-index:50;inset:0;display:grid;place-items:center;padding:20px;background:rgba(5,31,35,.54);backdrop-filter:blur(6px)}
.checkout-modal-card{position:relative;width:min(100%,440px);padding:30px;border:1px solid #8fd6dc;background:#fff;box-shadow:0 30px 70px rgba(0,0,0,.2)}
.checkout-modal-card h2{margin:0;font-size:24px}.checkout-modal-card>p:not(.eyebrow){margin:13px 0 0;color:var(--muted);font-size:12px;line-height:1.8}
.modal-close{position:absolute;right:12px;top:10px;border:0;background:transparent;color:#55747a;font-size:24px;cursor:pointer}
.modal-ok{width:100%;min-height:44px;margin-top:22px;border:0;background:var(--accent);color:#003c41;font-weight:900;cursor:pointer}
@media(max-width:900px){
  .pricing-shell{width:min(100% - 26px,780px)}
  .pricing-hero,.usage-section,.plans-section,.credits-section,.faq-section{padding:34px 28px}
  .usage-layout{grid-template-columns:1fr;gap:36px}
  .plan-grid,.credit-grid{grid-template-columns:1fr}
  .plan-card{min-height:auto}
}
@media(max-width:620px){
  .pricing-shell{width:100%;padding:14px 0 48px}
  .pricing-top-actions{padding:0 18px 10px}.pricing-header{padding:0 18px 16px}.brand-link img{width:145px}.back-link{font-size:10px}
  .pricing-hero,.usage-section,.plans-section,.credits-section,.faq-section{margin-top:18px;padding:30px 18px;border-left:0;border-right:0}
  .pricing-hero{margin-top:0}
  .pricing-hero h1{font-size:38px}.hero-copy{font-size:12px}
  .section-heading h2{font-size:30px}.section-heading>p:last-child{font-size:12px}
  .phone-frame{width:min(90vw,340px)}
  .phone-screen{min-height:575px}
  .time-card{grid-template-columns:76px 1fr;padding:13px 15px}.time{font-size:23px}.time-card strong{font-size:15px}
  .pricing-footer{padding:28px 18px 0;align-items:flex-start;flex-direction:column}.pricing-footer img{width:135px}
}
