/* PikaMath: the mint, blue, pink and plum palette of the family app icon. */
:root{
  --bg:#f2fbff;--ink:#17355b;--text:#314c6b;--muted:#62778d;
  --green:#087c94;--green-dark:#066179;--border:#dceaf4;
  --mint:#dff8ed;--peach:#fff0f5;--lilac:#eee7fc;--sky:#e1f5ff;
  --shadow:0 8px 26px #3e6c9b0d;
  font-family:"Trebuchet MS","Segoe UI",Arial,sans-serif;
  background:var(--bg);
}
body{
  background:radial-gradient(ellipse at 5% 0%,#fce7f283,transparent 36rem),
    radial-gradient(ellipse at 100% 30%,#dcf8edaa,transparent 38rem),var(--bg);
  min-height:100vh;
}
h1,h2,h3{font-family:"Trebuchet MS","Segoe UI",sans-serif;color:var(--ink)}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #a23d99;outline-offset:4px}
.site-header{
  min-height:88px;margin:14px auto 22px;padding:14px 25px;gap:22px;
  background:#ffffffed;border:2px solid #fff;border-radius:25px;
  box-shadow:0 5px 24px #4c7b9b0b;max-width:calc(1232px - 28px);
}
.brand{font-size:28px;letter-spacing:-1.2px;font-weight:800;color:#17355b;gap:10px}
.brand-accent{color:#007f9a;font-weight:800}
.brand .pika-app-icon{width:54px;height:54px;border-radius:14px;filter:drop-shadow(0 3px 3px #4385ad12)}
.main-nav{gap:6px}
.main-nav button{font-size:12px;color:#4d6680;border-radius:14px;padding:12px 14px}
.main-nav button.active{background:linear-gradient(115deg,#def9ef,#def3ff);color:#09627b;box-shadow:inset 0 0 0 1px #c5e9ed}
.main-nav button:hover{background:#edf7fc;color:#17355b}
.profile-button{color:#526580}
.avatar{background:linear-gradient(135deg,#f6def4,#e8e2ff);color:#774d89;border-color:white;box-shadow:0 0 0 1px #e7dcf2}
.home-main,.inner-main,.exam-main{max-width:1180px}
.hero{
  min-height:387px;padding:39px 43px;isolation:isolate;
  border:3px solid white;border-radius:30px;
  background:linear-gradient(115deg,#e4f8ff 0%,#e4fbf2 57%,#ede5ff 100%);
  box-shadow:0 10px 30px #528aab0c;
}
.hero:before{content:"";position:absolute;z-index:-1;width:410px;height:410px;border-radius:50%;background:#ffffff70;right:-50px;top:-110px}
.hero:after{content:"";position:absolute;z-index:-1;width:180px;height:180px;border-radius:50%;background:#fbd9ef50;left:-80px;bottom:-100px}
.hero-copy{width:57%;z-index:2}
.eyebrow{color:#586a91;font-size:10px;letter-spacing:1.4px;font-weight:800}
.hero .eyebrow{display:inline-flex;padding:8px 11px;border:1px solid #ffffffd9;border-radius:30px;background:#ffffffa8;color:#5d548a;letter-spacing:1.05px;font-size:8.5px;margin-bottom:18px;max-width:100%;line-height:1.6}
.hero h1{color:#17355b;font-size:52px;line-height:1.13;letter-spacing:-1.9px;max-width:620px}
.hero h1 span{color:#067f9a;white-space:normal;text-shadow:0 2px 0 #ffffffb3}
.hero h1 span:after{display:none}
.hero p{color:#4b6b82;font-size:14px;margin-top:20px}
.hero-note{color:#5c6f86;font-size:10.5px;margin-top:20px;gap:8px}
.mini-stars{color:#b54b9a;font-size:15px}
.hero-stamp{display:none}
.family-hero-art{position:absolute;right:34px;bottom:28px;width:32%;max-width:330px;z-index:1}
.family-hero-art img{display:block;width:100%;height:auto;aspect-ratio:1;border-radius:26%;transform:rotate(3deg);filter:drop-shadow(0 14px 14px #5864a222)}
.math-bubble{position:absolute;display:grid;place-items:center;width:48px;height:48px;border:3px solid white;border-radius:18px;color:white;font-size:34px;font-weight:800;line-height:1;box-shadow:0 5px 0 #5283a012,0 7px 13px #486d9514}
.bubble-plus{background:linear-gradient(#f988c8,#df509f);left:-17px;top:14px;transform:rotate(-12deg)}
.bubble-times{background:linear-gradient(#8d88fb,#6f60d7);right:-15px;top:50px;transform:rotate(13deg)}
.bubble-star{background:linear-gradient(#ffd873,#efad35);left:1px;bottom:7px;width:39px;height:39px;font-size:25px;transform:rotate(-9deg)}
.welcome-strip{margin-top:20px;padding:21px 24px;background:#ffffffdb;border:2px solid white;border-radius:23px;box-shadow:var(--shadow)}
.wave{color:#b17d12;background:#fff3c9;border-radius:15px}
.greeting strong{color:#2a4768;font-weight:800}
.greeting>span>span,.welcome-stats{color:#60778d}
.welcome-stats strong{color:#087b94;font-size:23px}
.stat-divider{background:#dceaf4}
.paper-section{padding-top:32px}
.section-heading h2{color:#17355b;font-size:29px;letter-spacing:-1px}
.section-heading p{color:#62778d}
.subdued{color:#805d9a;letter-spacing:1.65px}
.count-pill{background:#e0f7f2;border:1px solid #c9eee3;color:#187266;border-radius:10px;font-weight:800}
.library-controls{gap:16px;margin-bottom:24px}
.library-controls label{color:#3b5776;font-weight:700}
.library-controls input,.library-controls select{background:#fff;border:2px solid #dbe9f4;border-radius:14px;color:#2d4c6e;min-height:47px;padding:11px 14px;box-shadow:0 3px 10px #4f85aa05}
.library-controls input::placeholder{color:#758b9f}
.library-pagination{color:#60778d}
.paper-grid{gap:20px}
.paper-card{border:3px solid white;border-radius:24px;background:white;box-shadow:0 6px 23px #48779a10}
.paper-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #48779a1b}
.paper-card-top{height:142px;padding:15px 15px}
.paper-card.mint .paper-card-top{background:linear-gradient(135deg,#ddf8e9,#c8f1ec)}
.paper-card.peach .paper-card-top{background:linear-gradient(135deg,#ffebf4,#f9dced)}
.paper-card.lilac .paper-card-top{background:linear-gradient(135deg,#efe7ff,#e3ddff)}
.paper-card.sky .paper-card-top{background:linear-gradient(135deg,#e1f6ff,#cceafa)}
.paper-label,.paper-card:nth-child(2) .paper-label,.paper-card:nth-child(3) .paper-label,.paper-card:nth-child(4) .paper-label{display:inline-block;padding:5px 8px;border-radius:99px;background:#ffffffbd;color:#4e647e;letter-spacing:1px;font-size:8px;font-weight:800}
.paper-card .paper-art{width:78px;height:78px;top:53px;right:calc(50% - 39px);padding:7px;background:#ffffffa8;border:2px solid white;border-radius:21px;filter:drop-shadow(0 4px 2px #5876a010) saturate(1.15)}
.paper-card-body{background:#fff;padding:19px 16px 17px}
.paper-tags>span{background:#edf5fb;color:#536e87;border-radius:6px;font-size:8px}
.paper-tags>span.completed-tag{color:#28785f;background:#e2f8ed}
.paper-card h3{color:#213f65;font-size:17px;white-space:normal;line-height:1.35}
.paper-subtitle,.paper-meta{color:#657b90}
.btn{border-radius:13px;font-weight:800;min-height:44px}
.btn.primary{background:linear-gradient(135deg,#087c9a,#077885);color:white;box-shadow:0 4px 0 #0f5c7820;border-color:#08768b}
.btn.primary:hover{background:linear-gradient(135deg,#076883,#076576);box-shadow:0 5px 12px #087c9428}
.btn.secondary{background:#fff;color:#32617e;border:1.5px solid #d4e5f0}
.btn.secondary:hover{background:#eaf7fc;border-color:#b9dcea}
.paper-card-actions .btn{border-radius:11px;min-height:41px;font-size:11px;gap:5px;padding:10px 11px}
.pdf-icon,.download-link{border-color:#dce8f4;background:#f4f9ff;color:#567d9b;border-radius:12px}
.pdf-icon:hover,.download-link:hover{color:#08778f;background:#e1f6fb}
.text-button{color:#156e8a}
.resume-info,.best-result{color:#08798c}
.tiny-track{background:#e2eef5}
.tiny-track i{background:#4fb7ba}
.parent-banner{background:linear-gradient(110deg,#f6eafd,#fceef6);border:2px solid white;border-radius:23px;padding:23px 25px;box-shadow:var(--shadow)}
.parent-badge{background:#eedcf7;color:#925898}
.parent-banner h3{color:#5c477c}
.parent-banner p{color:#79678c}
.site-footer{color:#60778d}
.site-footer>span:first-child{color:#64788b}
.site-footer>span:first-child>span{color:#ab62a0}
.page-intro h1,.exam-title h1{color:#17355b}
.page-intro p,.exam-title .eyebrow{color:#647b91}
.heading-heart{color:#d979b2}
.progress-summary>div,.history-row,.original-card,.question-card,.question-map,.review-card{background:#fff;border:2px solid #fff;border-radius:23px;box-shadow:var(--shadow)}
.progress-summary>div{border-color:#e1ecf8}
.summary-symbol{color:#5b6394;border:2px solid white;border-radius:17px}
.progress-summary strong{color:#176b87}
.progress-summary>div>span:last-child,.history-description>span,.history-score small{color:#687e94}
.history-row{border-color:#e3edf6;border-radius:17px}
.history-row:hover{background:#f7fcff;border-color:#badce8}
.history-icon{color:#53789d}
.history-description strong,.history-score{color:#274b73}
.empty-state{background:linear-gradient(135deg,#eaf9fc,#f3eafd);border:2px dashed #d4cbe9;border-radius:25px}
.empty-art{color:#e1a62d}
.empty-state p{color:#63778f}
.parent-info>div{background:linear-gradient(135deg,#e4f9f3,#e6f6ff);border:2px solid white;border-radius:23px}
.parent-info>div:last-child{background:linear-gradient(135deg,#f3e8fc,#ffeef5)}
.parent-info svg{color:#6b63a3}
.parent-info p{color:#5f7691}
.original-card{border-color:#e6edf6}
.original-cover.mint{background:linear-gradient(135deg,#e2f9ed,#d8f3f0)}
.original-cover.peach{background:linear-gradient(135deg,#ffedf5,#f9e1f2)}
.original-cover.lilac{background:linear-gradient(135deg,#f0e8ff,#e5e1fc)}
.original-cover.sky{background:linear-gradient(135deg,#e7f7ff,#d8eefc)}
.original-cover>strong{color:#294c70}
.original-cover>span:last-child,.original-details>.muted{color:#64798f}
.pdf-label{background:#ffffffb8;color:#516784;border-radius:99px}
.original-page-thumb{border-radius:9px;box-shadow:0 3px 10px #4d719020}
.original-details{background:white}
.source-notes,.small-empty{background:#f2f8fd;border-color:#dae8f5;color:#5d7390;border-radius:17px}
.source-notes summary{color:#506685}
.save-indicator,.no-rush{color:#627b92}
.exam-title .eyebrow{color:#78568d}
.exam-progress>div:first-child{color:#627b92}
.progress-track{background:#deebf4}
.progress-track>i{background:linear-gradient(90deg,#80cfbc,#56b9d5);border-radius:99px}
.question-card{border-color:#e0edf6;border-radius:27px}
.question-kicker{color:#657f97}
.question-chip{background:#e8e4fb;color:#6d508e;border-radius:11px;font-weight:800}
.question-card h2,.review-question h3{color:#213f65}
.question-number{background:linear-gradient(135deg,#fff2c9,#ffe6b2);color:#8d681c;box-shadow:0 3px 0 #dfb34812;border:1px solid #fff4d4;border-radius:13px}
.question-context{background:#edf8fd;border:1px solid #d9edf7;color:#345677;border-radius:17px}
.question-image-link{background:white;border:1.5px solid #e1ecf6;border-radius:19px}
.question-image-link>span{color:#667f98}
.answer-field>label{color:#2b5274;font-weight:700}
.unit-hint,.input-unit{color:#657e98}
.answer-input{border:2px solid #d9e8f3;background:#fff;color:#213e60;border-radius:15px;min-height:55px}
.answer-input::placeholder{color:#788ca0;opacity:1}
.answer-input:focus{border-color:#1488a6;outline:3px solid #1786a61c;box-shadow:none}
.answer-option{background:white;border:2px solid #dce9f5;border-radius:15px;color:#345575;min-height:55px}
.answer-option:hover{background:#f2fbff;border-color:#afdae8}
.answer-option.chosen{background:#e0f7f8;border-color:#0e87a1;box-shadow:0 0 0 1px #0e87a1}
.option-letter{background:#f0eafa;color:#796090;border-radius:9px}
.chosen .option-letter{background:#087e99;color:#fff}
.option-check{color:#087d96}
.question-navigation{border-color:#e2edf6}
.question-navigation>span{color:#667e96}
.question-map{border-color:#e2edf7}
.question-map summary{color:#355b7c}
.question-dots button{background:#f0f6fc;color:#506f90;border:1px solid #dce8f5;border-radius:10px}
.question-dots button.answered{background:#dff7ed;color:#267764;border-color:#b9e7d5}
.question-dots button.current{background:#087e99;color:white;border-color:#087e99;box-shadow:0 3px 7px #087e9920}
.map-legend{color:#617a91}
.map-legend i{background:#dff7ed;border-color:#b9e7d5}
.map-legend span:last-child i{background:#087e99;border-color:#087e99}
.encouragement{background:linear-gradient(135deg,#fff1ce,#ffe9f3);border-radius:22px}
.encouragement h3{color:#85644c}
.encouragement p{color:#8c7062}
.modal-backdrop{background:#24325572;backdrop-filter:blur(5px)}
.modal{background:linear-gradient(155deg,#fff 65%,#f3faff);border:3px solid white;border-radius:28px;box-shadow:0 20px 80px #15375e30}
.modal-close{background:#edf4fb;color:#587694;border-radius:12px}
.modal-illustration{background:linear-gradient(135deg,#e1f7ef,#dfefff);color:#28849b;border:2px solid white;box-shadow:0 5px 12px #467e9d12;border-radius:20px}
.modal>p{color:#637a93}
.start-facts{background:#f1f8fe;border-radius:18px;border-color:#e1edf7}
.start-facts>span{color:#307494}
.start-facts small{color:#637c97}
.gentle-note{background:#fff5db;border-radius:15px}
.gentle-note svg{color:#d29a2c}
.gentle-note p{color:#806d49}
.language-choice{background:#fff;border:2px solid #dce9f4;border-radius:16px;color:#345575}
.language-choice:hover{background:#f0fbff;border-color:#acd9e6}
.language-choice.chosen{background:#e4f8f6;border-color:#1186a0;box-shadow:0 0 0 1px #1186a0}
.language-symbol{background:#f1eafb;color:#7b5d98;border-radius:12px}
.language-choice.chosen .language-symbol{background:#0b7f98;color:white}
.language-choice.chosen>svg{color:#0b7f98}
.language-picker legend{color:#345575}
.language-choice small,.language-picker>p{color:#637c94}
.profile-row{border-color:#e1eaf5;border-radius:15px}
.profile-row.selected{background:#e8f8f7;border-color:#94d0d4}
.profile-row svg{color:#168197}
.name-entry input,.parent-mark input,.drawing-panel textarea{background:#fff;color:#315575;border:2px solid #dce9f3;border-radius:12px}
.result-celebration{background:linear-gradient(130deg,#e2f8ff,#e6faef 50%,#f2e5fc);border:3px solid white;border-radius:29px;box-shadow:var(--shadow)}
.celebration-stars{color:#d69b24}
.result-celebration>p,.result-stats>span{color:#617d92}
.score-circle{background:conic-gradient(#54b5be var(--score),#dcecf5 0);box-shadow:0 7px 21px #4f94aa10}
.score-circle>div{background:#fff}
.score-circle strong,.result-stats strong{color:#087b96}
.score-circle small,.score-circle span{color:#617e93}
.pending-banner{background:#fff1ce;color:#84662b;border:1px solid #f7df9f;border-radius:14px}
.review-card{border-color:#e3edf7}
.review-answer{background:#eefaf3;border-color:#d7edde;border-radius:16px}
.review-answer.needs-practice{background:#fff8e9;border-color:#f2e1b6}
.review-answer.pending{background:#f4edfc;border-color:#e4d7f1}
.review-answer-heading>span{color:#397a64}
.needs-practice .review-answer-heading>span{color:#917034}
.pending .review-answer-heading>span{color:#7c5b99}
.answer-comparison p{color:#355574}
.explanation,.question-note{color:#637e94}
.question-note summary{color:#5b6e99}
.parent-mark{border-color:#d5e4ee;color:#617a92}
.sticky-parent-save{background:#fff;border:2px solid #daeaf5;color:#526e8b;border-radius:18px;box-shadow:0 6px 28px #3c6a9020}
.drawing-panel{background:#f2f8fe;border-color:#ddeaf5;border-radius:17px}
.drawing-toolbar{color:#617a94}
.drawing-canvas{border-color:#dbe8f3;border-radius:12px}
.image-viewer-backdrop{background:#1c2b467d;backdrop-filter:blur(5px)}
.image-viewer{background:#f8fcff;border:2px solid white;border-radius:23px}
.image-viewer-header,.image-viewer-footer{background:#fff;border-color:#deebf5}
.image-viewer-header h2{color:#315674}
.image-viewer-close,.image-viewer-zoom{background:#e7f6fd;color:#226e8d;border-color:#cce5f2;border-radius:12px}
.image-viewer-footer p{color:#617990}
.image-viewer-frame{background:#edf4fa}
.image-viewer-frame img{background:white}
.math-blank{background:#fff2c4;border-color:#ad7eaf;color:#7c5693;border-radius:.55em}
.loading-star{color:#6a70c9}
.loading p{color:#59748e}
.muted{color:#637d94}
#toast{background:#215876;color:#fff;border:1px solid #ffffff70;box-shadow:0 7px 30px #244b7425}
@media(max-width:1050px){
  .site-header{margin-left:16px;margin-right:16px;padding:13px 18px;gap:15px}
  .main-nav button{padding:11px 10px;font-size:11px}
  .brand{font-size:25px}.brand .pika-app-icon{width:48px;height:48px}
  .hero h1{font-size:46px}.hero-copy{width:60%}
  .family-hero-art{right:27px;width:32%;bottom:45px}
  .profile-name{max-width:100px}
}
@media(max-width:850px){
  .site-header{margin-bottom:18px;gap:10px;min-height:118px;flex-wrap:wrap;padding:13px 19px}
  .main-nav{width:100%;gap:7px}.main-nav button{font-size:12px;padding:11px;min-height:44px}
  .hero{padding:32px;min-height:360px}.hero h1{font-size:39px;letter-spacing:-1.3px}
  .hero .eyebrow{font-size:7px;letter-spacing:.7px;padding:7px 9px;gap:5px}
  .hero p{font-size:12px}.hero-note{font-size:9px;line-height:1.6}
  .family-hero-art{width:32%;right:25px;bottom:43px}
  .math-bubble{width:37px;height:37px;border-width:2px;border-radius:13px;font-size:27px}
  .bubble-star{width:30px;height:30px;font-size:20px}
  .welcome-stats strong{font-size:20px}.section-heading h2{font-size:27px}
  .paper-card-top{height:143px}.paper-card-body{padding:20px}
  .paper-card h3{font-size:20px}.paper-card-actions .btn{font-size:12px;min-height:44px}
  .progress-summary>div{border-radius:19px}.question-card{border-radius:23px}
}
@media(max-width:600px){
  body{background:radial-gradient(ellipse at 0 0,#fbeafa90,transparent 33rem),#f2fbff}
  .site-header{margin:10px 12px 18px;padding:12px 13px 10px;border-radius:22px;gap:8px;min-height:115px;max-width:none}
  .brand{font-size:25px;gap:8px;letter-spacing:-1px}.brand .pika-app-icon{width:45px;height:45px;border-radius:12px}
  .profile-name{max-width:74px;font-size:9px}.profile-button{gap:5px}.avatar{width:30px;height:30px}
  .main-nav{gap:4px}.main-nav button{font-size:10px;padding:10px 5px;gap:5px;border-radius:12px;min-height:43px}
  .main-nav svg{width:15px;height:15px}
  .home-main,.inner-main,.exam-main{padding-left:15px;padding-right:15px}
  .hero{display:flex;flex-direction:column;align-items:stretch;gap:20px;padding:24px 23px 24px;min-height:0;border-radius:27px;overflow:hidden}
  .hero-copy{width:100%}.hero h1{font-size:34px;letter-spacing:-1.4px;line-height:1.15}
  .hero .eyebrow{font-size:6.5px;letter-spacing:.55px;gap:5px;margin-bottom:17px;padding:7px 8px}
  .hero .eyebrow svg{width:13px;height:13px;flex-shrink:0}
  .hero p{font-size:12px;margin-top:15px;line-height:1.75}
  .hero-note{font-size:9px;gap:7px;margin-top:15px;line-height:1.6}.mini-stars{font-size:12px;white-space:nowrap}
  .family-hero-art{position:relative;right:auto;bottom:auto;width:190px;max-width:85%;margin:1px auto 4px}
  .family-hero-art img{border-radius:25%;filter:drop-shadow(0 9px 8px #5864a21a)}
  .bubble-plus{left:-13px;top:8px}.bubble-times{right:-12px;top:35px}.bubble-star{left:-3px;bottom:7px}
  .welcome-strip{margin-top:16px;padding:18px 15px;gap:15px;border-radius:22px}
  .greeting{gap:10px}.greeting strong{font-size:13px}.greeting>span>span{font-size:10px}
  .wave{width:35px;height:35px;font-size:25px;border-radius:13px}
  .welcome-stats{margin-left:45px;gap:15px}.welcome-stats strong{font-size:18px}.welcome-stats>span{font-size:9px}
  .paper-section{padding-top:28px}.section-heading h2{font-size:26px}.section-heading p{font-size:11px}
  .library-controls{gap:12px;margin-bottom:20px}.library-controls input,.library-controls select{min-height:46px;padding:11px 12px;font-size:12px;border-radius:13px}
  .paper-card{border-radius:21px;grid-template-columns:85px minmax(0,1fr);border-width:2px}
  .paper-card-top{height:auto;padding:14px 7px}.paper-card .paper-art{position:static;width:66px;height:70px;padding:6px;border-radius:17px}
  .paper-label,.paper-card:nth-child(2) .paper-label,.paper-card:nth-child(3) .paper-label,.paper-card:nth-child(4) .paper-label{font-size:5.5px;left:5px;right:5px;top:14px;letter-spacing:.65px;padding:4px 3px;line-height:1.5}
  .paper-card-body{padding:17px 13px}.paper-card h3{font-size:16px}.paper-tags>span{font-size:7px}.paper-subtitle{font-size:9px}
  .paper-meta{font-size:9px;gap:10px;flex-wrap:wrap;row-gap:5px;margin:13px 0}
  .paper-card-actions .btn{font-size:10px;padding:10px 10px;min-height:41px}.paper-card-actions{gap:6px}.pdf-icon{min-width:35px;min-height:41px}
  .parent-banner{padding:18px 16px;border-radius:21px;gap:12px}.parent-banner h3{font-size:12px}.parent-banner p{font-size:10px}
  .site-footer{font-size:9px;line-height:1.5;text-align:center}
  .progress-summary>div{padding:16px 6px;border-radius:18px}.progress-summary strong{font-size:24px}
  .page-intro h1{font-size:30px}.original-card{border-radius:18px}.parent-info>div{border-radius:20px}
  .exam-title h1{font-size:27px}.exam-main{padding-top:4px}.question-card{padding:22px 17px;border-radius:23px}
  .question-chip{font-size:9px}.question-card h2{font-size:19px}.question-number{min-width:32px;height:32px;font-size:13px;border-radius:10px}
  .question-context{padding:14px;font-size:13px;border-radius:15px}.question-image-link{border-radius:15px}
  .answer-input{font-size:17px;min-height:55px}.answer-field>label{font-size:12px}.answer-option{padding:12px;font-size:13px}
  .question-navigation .btn{padding:10px 11px;font-size:10px;min-height:44px}.question-map{border-radius:20px}
  .modal-backdrop{padding:12px}.modal{padding:28px 21px;border-radius:25px}.modal h2{font-size:25px}
  .modal-close{right:11px;top:11px}.language-choice{border-radius:14px}.language-choice strong{font-size:13px}
  .result-celebration{padding:25px 15px;border-radius:25px}.result-celebration h1{font-size:28px}
  .review-card{padding:18px 15px;border-radius:20px}.review-question h3{font-size:14px}
  .image-viewer{border-radius:19px}.image-viewer-header h2{font-size:13px}
}
@media(prefers-reduced-motion:reduce){.paper-card,.btn{transition:none}.paper-card:hover,.btn:active:not(:disabled){transform:none}}

/* Keep the quiz fitted to the viewport, including intrinsic canvas/grid sizes. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
.exam-layout>*,.question-fields,.answer-field,.drawing-panel,.library-controls label{min-width:0}
.question-card h2,.exam-title h1{overflow-wrap:anywhere}
.drawing-toolbar{gap:8px}
.question-original{margin-top:16px;max-width:100%;min-height:44px;text-align:left}
.question-original>span{min-width:0}
.pdf-return{margin-top:16px}

/* iOS zooms focused form controls with text smaller than 16px. */
@media(max-width:850px),(pointer:coarse){
  .library-controls input,.library-controls select,.drawing-panel textarea,.name-entry input,.parent-mark input{font-size:16px}
}

/* Selected Maths playground welcome design. */
.playground-welcome{
  position:relative;isolation:isolate;overflow:hidden;
  display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;
  gap:42px;padding:34px 54px;background:#fff;border:3px solid #fff;
  border-radius:29px;box-shadow:0 8px 27px #3b6f980e;
}
.playground-welcome:before{content:"";position:absolute;z-index:-1;width:230px;height:230px;border-radius:50%;background:#edf8ff;right:-150px;top:-145px}
.playground-copy{min-width:0}
.playground-kicker{font-size:10px;line-height:1.6;letter-spacing:1.6px;font-weight:800;text-transform:uppercase;color:#76568c;margin-bottom:12px}
.playground-welcome h1{font-size:43px;line-height:1.13;letter-spacing:-1.5px;margin:0;color:#17355b}
.playground-welcome h1 span{color:#087d98}
.playground-copy>p{font-size:14px;line-height:1.65;color:#4d6782;margin-top:14px}
.playground-activities{width:100%;max-width:390px;justify-self:center}
.playground-symbols{display:flex;justify-content:center;gap:15px;margin:0 0 19px}
.playground-symbol{display:grid;place-items:center;flex-shrink:0;width:54px;height:54px;border:3px solid white;border-radius:18px;font-size:36px;font-weight:800;line-height:1;box-shadow:0 4px 0 #54799a18,0 0 0 1px #e9eff7}
.playground-plus{background:linear-gradient(#ffe5f1,#f8d3e7);color:#c23a86;transform:rotate(-10deg)}
.playground-minus{background:linear-gradient(#fff6d8,#ffecaf);color:#a9771e;transform:rotate(5deg)}
.playground-times{background:linear-gradient(#efe9ff,#e1d7fd);color:#7655c0;transform:rotate(-5deg)}
.playground-divide{background:linear-gradient(#e8fcef,#d4f1df);color:#2f8b5b;transform:rotate(9deg)}
.playground-stats{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:18px;background:#edf9fb;border-radius:14px;padding:12px 14px;color:#4d6782;font-size:12px;line-height:1.5}
.playground-stats>span{white-space:nowrap}
.playground-stats strong{font-size:20px;font-weight:800;color:#087d98;margin-right:3px}
.playground-start{display:flex;width:100%;justify-content:space-between;min-height:46px;margin-top:14px;padding:12px 17px;font-size:13px}
.playground-start svg{transform:rotate(90deg)}
#maths-papers{scroll-margin-top:20px;outline:none}
#maths-papers:focus,#maths-papers:focus-visible{outline:none}
@media(max-width:1050px){
  .playground-welcome{padding:30px 34px;gap:26px}
  .playground-welcome h1{font-size:38px}
  .playground-symbols{gap:12px}
  .playground-symbol{width:48px;height:48px;border-radius:16px;font-size:32px}
}
@media(max-width:650px){
  .playground-welcome{display:block;max-width:470px;margin:0 auto;padding:25px 24px 23px;border-radius:26px;text-align:center}
  .playground-kicker{font-size:9px;letter-spacing:1.4px;margin-bottom:10px}
  .playground-welcome h1{font-size:clamp(27px,8.4vw,34px);line-height:1.13;letter-spacing:-1.05px}
  .playground-copy>p{font-size:12px;margin-top:11px;line-height:1.6}
  .playground-activities{margin:19px auto 0}
  .playground-symbols{gap:12px;margin-bottom:18px}
  .playground-symbol{width:46px;height:46px;border-radius:15px;font-size:31px}
  .playground-stats{gap:15px;padding:10px 9px;font-size:11px;border-radius:12px}
  .playground-stats strong{font-size:18px}
  .playground-start{margin-top:13px;min-height:45px;font-size:12px;padding:11px 15px}
}
@media(max-width:350px){
  .playground-welcome{padding:23px 18px 21px}
  .playground-symbols{gap:10px}
  .playground-symbol{width:42px;height:42px;font-size:29px;border-radius:14px}
  .playground-stats{gap:11px;font-size:10.5px;padding:10px 7px}
}
