@import"https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap";*,*:before,*:after{box-sizing:border-box}*{margin:0}body{line-height:1.2;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}#root{isolation:isolate}html{font-size:62.5%}body{height:100dvh;font-family:Noto Sans JP,sans-serif;font-size:1.6rem;background:#95f1d9}.wrapper{min-height:100dvh;min-width:630px;background:#95f1d9;display:grid;place-items:center;position:relative;width:100vw}@media (min-resolution: 2dppx),(min-device-pixel-ratio: 2){.main-container{background-image:url(/assets/images/mock-exam-v2/background@2x.png)}}.main-container{position:fixed;top:0;right:0;bottom:0;left:0;background-image:url(/assets/images/mock-exam-v2/background.png);background-size:cover;background-position:center}.mike-image{position:absolute;left:50%;top:calc(50% - 300px);transform:translate(-50%);height:140px;width:176px}.card-container{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:560px;height:372px;padding:32px 32px 16px;border-radius:16px;background:#fff;display:flex;flex-direction:column;gap:24px;z-index:1}.card-header{background:#212121;color:#fff;text-align:center;font-size:36px;font-weight:700;line-height:1;padding:7px 0 9px;border-radius:8px}.card-content{display:flex;flex-direction:column;gap:16px}.row-reading-listening{display:flex;border-radius:8px;border:1px solid #dddde5}.row-reading-listening .section-score{flex:1;padding:16px;align-items:center;justify-content:space-between;display:flex;gap:8px}.row-reading-listening .section-score .header{display:flex;flex-direction:column;align-items:center;gap:4px}.row-reading-listening .section-score .icon{display:inline-block;width:40px;height:40px;background:#a2a2aa;-webkit-mask-size:contain;mask-size:contain}.row-reading-listening .section-score .icon.listening{-webkit-mask-image:url(/assets/icons/study_audio.svg);mask-image:url(/assets/icons/study_audio.svg)}.row-reading-listening .section-score .icon.reading{-webkit-mask-image:url(/assets/icons/menu_book_inactive.svg);mask-image:url(/assets/icons/menu_book_inactive.svg)}.row-reading-listening .section-score .name{color:#a2a2aa;font-size:20px;font-weight:700;line-height:1;text-align:center}.row-reading-listening .section-score .score{text-align:center;font-size:56px;font-weight:700;line-height:1;margin-top:-4px}.row-reading-listening .vertical-separator{width:1px;height:auto;background:#dddde5;margin:16px 0}.row-total-score{display:grid;grid-template-columns:1fr 1fr;align-items:center}.row-total-score .section-total{display:flex;flex-direction:column;text-align:right;gap:8px}.row-total-score .title{color:#a2a2aa;font-size:40px;font-weight:700;line-height:1}.row-total-score .title-toeic{text-align:center;padding:16px}.row-total-score .sub-title{color:#a2a2aa;font-weight:700}.row-total-score .score{text-align:right;font-size:104px;font-weight:700;line-height:1;flex:1}.row-total-score .score .percentage{font-size:56px}.card-footer{display:flex;gap:8px;justify-content:space-between;align-items:center}.card-footer .row-date{font-size:14px}.row-date{color:#70707a;text-align:right;line-height:1}.disclaimer{color:#a2a2aa;font-size:12px}.share-button{position:absolute;bottom:-88px;left:50%;transform:translate(-50%);height:48px;padding:0 20px;border:none;border-radius:100px;background:linear-gradient(276deg,#ff4c56 25%,#f11515);box-shadow:0 2px 16px #0000003d;color:#fff;font-size:18px;font-weight:700;cursor:pointer;overflow:hidden;isolation:isolate;display:grid;place-items:center;text-decoration:none}.share-button:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(271deg,#fa8189 25%,#ed5152);opacity:0;z-index:-1;transition:opacity .3s cubic-bezier(.16,1,.3,1)}.share-button:hover:after{opacity:1}
@media (max-width: 630px) {
  .wrapper{
    min-width: 0;     /* ←これが必要 */
    width: 100%;
    overflow-x: hidden;
  }

  .card-container{
    width: min(560px, calc(100% - 32px)); /* 100vwより100%が安全 */
    height: auto;
  }

  /* 以下はあなたが入れた調整（そのままでOK） */
  .row-reading-listening .section-score{
    min-width: 0;
    flex-direction: column;
    justify-content: center;
    padding: 12px 8px;
    gap: 8px;
  }
  .row-reading-listening .section-score .icon{ width: 32px; height: 32px; }
  .row-reading-listening .section-score .name{ font-size: 16px; }
  .row-reading-listening .section-score .score{ font-size: 44px; margin-top: 0; }
  .row-reading-listening .vertical-separator{ margin: 12px 0; }

  .card-header{
    white-space: nowrap;                 /* ★折り返し禁止 */
    font-size: clamp(18px, 5.2vw, 30px); /* 24pxだと端末によってはまだ溢れる */
    padding: 10px 10px;
    letter-spacing: -0.02em;             /* 任意：少し詰めるとさらに安定 */
  }

  .share-button{
    white-space: nowrap;
    font-size: 16px;
    padding: 0 18px;
  }

  .row-total-score{
    grid-template-columns: 1fr auto; /* ★右列を内容幅に */
    column-gap: 12px;
  }

  .row-total-score .score{
    font-size: clamp(76px, 22vw, 96px); /* ★104px固定をやめる */
    padding-right: 10px;               /* ★右余白を明示的に確保 */
  }

  .row-total-score .title{
    font-size: clamp(28px, 8vw, 36px); /* 左の “Total Score” も少し縮めてバランス */
  }
}
