:root{
  --q-purple:#7447ec;
  --q-purple-dark:#4d24c9;
  --q-navy:#172044;
  --q-muted:#626d8a;
  --q-line:#e8e6f0;
  --q-shadow:0 15px 38px rgba(55,42,97,.15);
}
*{box-sizing:border-box}
html,body{margin:0;background:#fbfcff!important;color:var(--q-navy);overflow-x:hidden}
button{font:inherit}
.shell[data-owner-locked-shell="true"]{min-height:100vh;background:linear-gradient(180deg,#fff 0,#faf8ff 56%,#fffdf8 100%)!important}
.shell[data-owner-locked-shell="true"] .skip{display:none!important}

/* HEADER */
.qira-header{position:sticky!important;top:0;z-index:90;width:100%;height:76px;min-height:76px!important;padding:9px 24px!important;display:flex!important;align-items:center!important;gap:14px!important;background:rgba(255,255,255,.98)!important;border:0!important;border-bottom:1px solid #ececf3!important;box-shadow:0 7px 22px rgba(53,43,91,.07)!important;backdrop-filter:blur(18px)}
.qira-brand{border:0;background:transparent;padding:0;display:grid;place-items:center;cursor:pointer;flex:0 0 auto}
.qira-brand img{width:142px;height:54px;object-fit:contain;display:block}
.qira-child-chip{height:52px;border:1px solid #e5e4ed;background:#fff;border-radius:28px;padding:5px 15px 5px 7px;display:flex;align-items:center;gap:10px;color:var(--q-navy);font-weight:850;box-shadow:0 6px 18px rgba(42,35,78,.06);white-space:nowrap}
.qira-child-avatar{width:39px;height:39px;border-radius:50%;display:grid;place-items:center;background:#eaf7ff;font-size:25px}
.qira-child-chip>span:last-child{font-size:19px;color:#1b2346}
.qira-child-chip-mobile{display:none}
.qira-child-chip-mobile img{width:38px;height:38px;object-fit:contain;border-radius:50%;background:#e8f9ff}
.qira-header-spacer{flex:1}
.qira-desktop-nav{display:flex;align-items:center;gap:4px;padding:4px 8px;border:1px solid #e9e8f1;border-radius:24px;background:#fff;box-shadow:0 6px 20px rgba(50,39,90,.05)}
.qira-nav-button{border:0;background:transparent;border-radius:17px;color:#555f7d;display:flex;align-items:center;justify-content:center;gap:4px;font-weight:850;cursor:pointer;transition:.15s ease}
.qira-desktop-nav .qira-nav-button{width:52px;height:52px;padding:5px}
.qira-desktop-nav .qira-nav-button span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.qira-nav-icon{width:40px;height:40px;object-fit:contain;display:block;filter:drop-shadow(0 5px 6px rgba(57,38,110,.16))}
.qira-nav-button.active{background:#f0eaff;box-shadow:inset 0 -3px 0 #7543ee}
.qira-nav-button:hover{background:#f4f0ff}
.qira-notification{position:relative;width:48px;height:48px;border:0;background:transparent;border-radius:15px;font-size:31px;color:#444c6c;display:grid;place-items:center}
.qira-notification i{position:absolute;width:9px;height:9px;border-radius:50%;background:#f03d54;right:8px;top:8px}
.qira-mascot-avatar{width:50px;height:50px;border:0;border-radius:50%;padding:2px;background:linear-gradient(135deg,#d8f9ff,#e8e2ff);display:grid;place-items:center;box-shadow:0 5px 16px rgba(45,54,99,.13)}
.qira-mascot-avatar img{width:46px;height:46px;object-fit:contain}
.qira-menu-button{width:50px;height:50px;border:0;border-radius:17px;background:#f1eaff;display:grid;place-content:center;gap:5px;padding:0;cursor:pointer;flex:0 0 auto}
.qira-menu-button span{width:24px;height:3px;border-radius:4px;background:#241951;display:block}

/* DESKTOP HOME: viewport-fit */
.shell[data-current-route="home"] .qira-home{width:100%!important;max-width:none!important;height:calc(100dvh - 76px);min-height:0!important;padding:14px 3.4vw 14px!important;display:grid!important;grid-template-rows:minmax(250px,1.75fr) minmax(220px,1.45fr) minmax(112px,.72fr);gap:12px;overflow:hidden}
.qira-hero{position:relative;min-height:0;display:grid;grid-template-columns:minmax(480px,1.04fr) minmax(480px,.96fr);align-items:center;border:1px solid #e7def9;border-radius:31px;overflow:hidden;background:radial-gradient(circle at 42% 105%,#eee5ff 0 13%,transparent 14%),radial-gradient(circle at 8% 10%,rgba(255,255,255,.95),transparent 35%),linear-gradient(135deg,#fbf9ff 0%,#f3ecff 53%,#fff 100%);box-shadow:var(--q-shadow)}
.qira-hero:before,.qira-hero:after{content:"";position:absolute;border-radius:48%;background:rgba(220,204,255,.27);filter:blur(.2px)}
.qira-hero:before{width:430px;height:210px;left:-90px;bottom:-130px;transform:rotate(12deg)}
.qira-hero:after{width:390px;height:180px;right:-70px;top:-110px}
.qira-hero-copy{position:relative;z-index:3;padding:22px clamp(28px,3.2vw,64px);align-self:center}
.qira-check-lockup{display:flex;align-items:flex-end;gap:11px;margin-bottom:9px;line-height:1}
.qira-check-lockup img{width:150px;height:64px;object-fit:contain}
.qira-check-lockup span{font-size:clamp(43px,3vw,62px);font-weight:950;letter-spacing:-2px;color:#101a3d}
.qira-check-lockup b{width:49px;height:49px;display:grid;place-items:center;border:5px solid #7b49ee;border-radius:10px;color:#7b49ee;font-size:33px;line-height:1;transform:rotate(-3deg);margin-bottom:4px}
.qira-hero h1{font-size:clamp(31px,2.5vw,48px);line-height:1.04;letter-spacing:-1.5px;margin:0 0 10px;color:#111a3d;max-width:720px}
.qira-hero p{font-size:clamp(14px,1.15vw,20px);line-height:1.42;color:#4f5b7c;font-weight:650;max-width:690px;margin:0 0 17px}
.qira-primary-button{height:50px;border:0;border-radius:18px;padding:0 25px;background:linear-gradient(135deg,#5b21e6,#8c59f4);color:#fff;font-weight:900;font-size:16px;display:inline-flex;align-items:center;gap:28px;box-shadow:0 10px 22px rgba(93,48,215,.28)}
.qira-primary-button span{font-size:24px}
.qira-hero-visual{position:relative;height:100%;min-height:0;z-index:2}
.qira-robot{position:absolute;width:min(33vw,390px);height:min(33vw,390px);object-fit:contain;right:11%;top:50%;transform:translateY(-45%);z-index:4;filter:drop-shadow(0 22px 20px rgba(33,39,85,.18))}

.qira-board{position:absolute;width:min(25vw,310px);right:27%;bottom:-9%;z-index:3;transform:rotate(2deg)}
.qira-float{position:absolute;width:54px;height:54px;border-radius:13px;display:grid;place-items:center;color:#fff;font-size:31px;font-style:normal;font-weight:950;z-index:5;box-shadow:0 10px 18px rgba(43,35,82,.22)}
.qira-float-x{left:3%;top:18%;background:linear-gradient(135deg,#a469ff,#6c35de);transform:rotate(-8deg)}
.qira-float-8{left:12%;bottom:18%;background:linear-gradient(135deg,#ff6d9f,#e8367a);transform:rotate(-8deg)}
.qira-float-5{right:7%;bottom:22%;background:linear-gradient(135deg,#63a8ff,#176bef);transform:rotate(10deg)}
.qira-float-plus{right:1%;top:32%;background:linear-gradient(135deg,#ffc85c,#ff9c23);transform:rotate(8deg)}

.qira-module-grid{min-height:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.qira-module-card{position:relative;min-width:0;min-height:0;border:0;border-radius:26px;padding:12px 17px 14px;color:#fff;overflow:hidden;text-align:left;display:flex;flex-direction:column;justify-content:flex-end;box-shadow:var(--q-shadow);cursor:pointer}
.qira-module-card:before{content:"";position:absolute;width:170px;height:170px;border-radius:50%;right:-72px;top:-80px;background:rgba(255,255,255,.13)}
.qira-module-card:after{content:"✦";position:absolute;right:13%;top:22%;font-size:29px;color:rgba(255,255,255,.13)}
.qira-check{background:linear-gradient(145deg,#a972f5 0%,#7540e7 100%)}
.qira-exam{background:linear-gradient(145deg,#ff72a7 0%,#ee3f82 100%)}
.qira-ajar{background:linear-gradient(145deg,#8bdc45 0%,#43bd35 100%)}
.qira-play{background:linear-gradient(145deg,#67a6ff 0%,#276be8 100%)}
.qira-class{background:linear-gradient(145deg,#ffbd55 0%,#ff8d28 100%)}
.qira-access{background:linear-gradient(145deg,#53d7d0 0%,#17b3bd 100%)}
.qira-card-art{position:absolute;left:12px;top:7px;width:calc(100% - 24px);height:59%;display:flex;align-items:center;justify-content:center;z-index:2}
.qira-card-art img{width:88%;height:100%;object-fit:contain;filter:drop-shadow(0 10px 9px rgba(29,24,60,.22))}
.qira-card-copy{position:relative;z-index:3;display:grid;gap:5px;padding-right:31px}
.qira-card-copy strong{font-size:clamp(17px,1.45vw,27px);line-height:1.05;color:#fff}
.qira-card-copy small{font-size:clamp(10px,.82vw,15px);line-height:1.35;font-weight:650;color:rgba(255,255,255,.96)}
.qira-card-arrow{position:absolute;right:12px;bottom:12px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#6d3ce3;font-size:21px;font-weight:900;z-index:4;box-shadow:0 5px 10px rgba(22,17,55,.12)}
.qira-exam .qira-card-arrow{color:#ec3f7e}.qira-ajar .qira-card-arrow{color:#35aa2e}.qira-play .qira-card-arrow{color:#236be9}.qira-class .qira-card-arrow{color:#f27f1f}.qira-access .qira-card-arrow{color:#12a6b1}

.qira-passes{position:relative;min-height:0;border:1px solid #f0dfbd;border-radius:25px;background:linear-gradient(135deg,#fffdf9,#fff6d8);display:grid;grid-template-columns:minmax(200px,.8fr) minmax(250px,1.25fr) minmax(430px,1.75fr) auto;align-items:center;gap:15px;padding:7px 20px 7px 12px;box-shadow:0 12px 28px rgba(126,90,23,.1);overflow:hidden}
.qira-passes-art{width:100%;height:100%;max-height:142px;object-fit:contain}
.qira-passes-copy{display:grid;gap:5px}
.qira-passes-copy strong{font-size:clamp(24px,2vw,38px);line-height:1.05;color:#121a3c}
.qira-passes-copy span{font-size:clamp(11px,.92vw,16px);line-height:1.35;color:#56617d;font-weight:650}
.qira-benefits{height:78%;display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #efe9df;border-radius:44px;background:rgba(255,255,255,.82);overflow:hidden}
.qira-benefits>div{display:flex;align-items:center;gap:8px;padding:7px 11px;border-right:1px solid #eee8df;min-width:0}
.qira-benefits>div:last-child{border-right:0}
.qira-benefits b{width:49px;height:49px;flex:0 0 auto;border-radius:50%;display:grid;place-items:center;background:#efe7ff;color:#7040e8;font-size:27px}
.qira-benefits>div:nth-child(2) b{background:#ffe6ef}.qira-benefits>div:nth-child(3) b{background:#e7f7e7;color:#27aa43}
.qira-benefits span{display:grid;min-width:0;gap:2px}.qira-benefits strong{font-size:12px;white-space:nowrap}.qira-benefits small{font-size:9px;color:#68718a;white-space:nowrap}
.qira-passes-button{height:52px;border:0;border-radius:19px;padding:0 22px;background:linear-gradient(135deg,#ffc03c,#ffa714);color:#272011;font-weight:900;font-size:15px;white-space:nowrap;box-shadow:0 8px 18px rgba(203,132,8,.2)}
.qira-passes-button span{font-size:25px;margin-left:15px}

/* MOBILE BOTTOM NAV */
.qira-mobile-nav{display:none}

/* RIGHT DRAWER */
.drawer-backdrop{position:fixed!important;inset:0!important;z-index:119!important;background:rgba(26,24,45,.54)!important;backdrop-filter:blur(4px)}
.qira-drawer{position:fixed!important;z-index:120!important;top:0!important;bottom:0!important;right:0!important;left:auto!important;width:min(515px,94vw)!important;max-width:none!important;padding:22px 24px 25px!important;border-radius:32px 0 0 32px!important;background:#fff!important;box-shadow:-24px 0 65px rgba(25,20,54,.28)!important;overflow-y:auto!important;overscroll-behavior:contain}
.qira-drawer-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}
.qira-drawer-head>img{width:145px;height:58px;object-fit:contain}
.qira-drawer-close{width:48px;height:48px;border:0;border-radius:16px;background:#f2eaff;color:#6b3be0;font-size:29px;font-weight:900}
.qira-drawer-controls{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-bottom:16px}
.qira-drawer-controls section{border:1px solid #e8e6ee;border-radius:22px;padding:14px;background:#fff;box-shadow:0 7px 17px rgba(47,39,78,.06)}
.qira-control-title{display:flex;align-items:center;gap:8px;margin-bottom:11px;font-size:14px}.qira-control-title>span{color:#7141e7;font-size:22px}
.qira-toggle{display:grid;grid-template-columns:1fr 1fr;gap:3px;padding:3px;border-radius:14px;background:#f2ecff}
.qira-toggle button{height:35px;border:0;border-radius:11px;background:transparent;color:#726987;font-size:12px;font-weight:900}
.qira-toggle button.active{background:linear-gradient(135deg,#6b36e2,#8b59ef);color:#fff;box-shadow:0 5px 12px rgba(96,57,196,.22)}
.qira-drawer-nav{display:grid;gap:0;border:1px solid #efedf3;border-radius:22px;padding:7px 12px;background:#fff;box-shadow:0 8px 24px rgba(47,39,78,.07)}
.qira-drawer-nav hr{width:100%;border:0;border-top:1px solid #ece9f0;margin:4px 0}
.qira-drawer-row{width:100%;height:53px;border:0;border-bottom:1px solid #eeecf1;background:#fff;display:grid;grid-template-columns:46px 1fr 20px;align-items:center;gap:11px;padding:4px 5px;text-align:left;color:#172044;font-weight:850}
.qira-drawer-row:last-child{border-bottom:0}.qira-drawer-row:hover{background:#f8f5ff}
.qira-drawer-icon{width:42px;height:42px;object-fit:contain;filter:drop-shadow(0 4px 5px rgba(48,37,84,.12))}
.qira-drawer-row>b{font-size:25px;color:#7445e8}
.qira-drawer-promo{margin-top:14px;min-height:112px;border:1px solid #eee5ff;border-radius:22px;padding:16px 14px 12px 20px;background:linear-gradient(135deg,#fbf9ff,#eee6ff);display:flex;align-items:center;color:#5a2ed1;overflow:hidden}
.qira-drawer-promo span{display:grid;gap:5px}.qira-drawer-promo strong{font-size:22px;line-height:1.05}.qira-drawer-promo small{font-size:12px;color:#5d6683;font-weight:650;max-width:190px}.qira-drawer-promo img{width:120px;height:120px;object-fit:contain;margin-left:auto;margin-bottom:-20px}
.qira-sign-out{width:100%;height:44px;margin-top:10px;border:0;border-radius:15px;background:#f4f0fa;color:#67578c;font-weight:850}

/* HEIGHT-SENSITIVE DESKTOP, keeps 100% zoom inside viewport */
@media (min-width:901px) and (max-height:950px){
  .qira-header{height:68px;min-height:68px!important;padding:7px 20px!important}
  .qira-brand img{width:126px;height:47px}.qira-child-chip{height:46px}.qira-child-avatar{width:35px;height:35px;font-size:22px}
  .qira-desktop-nav .qira-nav-button{width:45px;height:45px}.qira-nav-icon{width:35px;height:35px}.qira-notification,.qira-mascot-avatar,.qira-menu-button{width:45px;height:45px}.qira-mascot-avatar img{width:41px;height:41px}
  .shell[data-current-route="home"] .qira-home{height:calc(100dvh - 68px);padding:10px 2.4vw!important;grid-template-rows:minmax(225px,1.72fr) minmax(190px,1.36fr) minmax(102px,.67fr);gap:9px}
  .qira-hero{border-radius:25px}.qira-hero-copy{padding:16px 36px}.qira-check-lockup{margin-bottom:5px}.qira-check-lockup img{width:122px;height:52px}.qira-check-lockup span{font-size:42px}.qira-check-lockup b{width:39px;height:39px;font-size:26px;border-width:4px}
  .qira-hero h1{font-size:36px;margin-bottom:7px}.qira-hero p{font-size:14px;margin-bottom:11px}.qira-primary-button{height:42px;font-size:14px;border-radius:15px}
  .qira-robot{width:290px;height:290px}.qira-board{width:220px}.qira-float{width:42px;height:42px;font-size:24px}
  .qira-module-grid{gap:9px}.qira-module-card{border-radius:22px;padding:9px 13px 11px}.qira-card-art{height:58%;top:3px}.qira-card-copy{gap:3px}.qira-card-copy strong{font-size:19px}.qira-card-copy small{font-size:11px}.qira-card-arrow{width:34px;height:34px;right:9px;bottom:9px}
  .qira-passes{border-radius:21px;padding:5px 15px 5px 8px;gap:10px;grid-template-columns:minmax(160px,.7fr) minmax(230px,1.1fr) minmax(390px,1.7fr) auto}.qira-passes-art{max-height:105px}.qira-passes-copy strong{font-size:26px}.qira-passes-copy span{font-size:11px}.qira-benefits b{width:42px;height:42px;font-size:23px}.qira-benefits strong{font-size:10px}.qira-benefits small{font-size:8px}.qira-passes-button{height:44px;font-size:13px;padding:0 17px}
}

/* TABLET / MOBILE */

@media (min-width:901px){
  .qira-play-game-card[data-game="bingo"] .qira-play-game-art img{max-width:88%!important;height:104%!important}
}

@media (max-width:900px){
  body{padding-bottom:76px}
  .qira-header{height:70px;min-height:70px!important;padding:8px 12px!important;gap:8px!important}
  .qira-brand img{width:112px;height:45px}
  .qira-child-chip-left,.qira-desktop-nav,.qira-notification,.qira-mascot-avatar{display:none}
  .qira-child-chip-mobile{display:flex;height:46px;margin-left:auto;padding-right:11px}.qira-child-chip-mobile img{width:36px;height:36px}.qira-child-chip-mobile strong{font-size:14px}
  .qira-header-spacer{display:none}.qira-menu-button{width:46px;height:46px;border-radius:15px}
  .shell[data-current-route="home"] .qira-home{height:auto;min-height:0!important;padding:12px 13px 18px!important;display:grid!important;grid-template-rows:auto!important;gap:11px;overflow:visible}
  .qira-hero{min-height:410px;grid-template-columns:1fr;border-radius:27px}
  .qira-hero-copy{padding:24px 20px;align-self:start;z-index:5}.qira-check-lockup{margin-bottom:12px}.qira-check-lockup img{width:112px;height:48px}.qira-check-lockup span{font-size:40px}.qira-check-lockup b{width:38px;height:38px;font-size:25px;border-width:4px}
  .qira-hero h1{font-size:39px;max-width:72%;margin-bottom:10px}.qira-hero p{font-size:15px;max-width:64%;margin-bottom:15px}.qira-primary-button{height:47px;font-size:15px}
  .qira-hero-visual{position:absolute;inset:0}.qira-robot{width:260px;height:260px;right:1%;top:56%;transform:translateY(-34%)}.qira-board{width:205px;right:10%;bottom:-4%}.qira-float{width:42px;height:42px;font-size:24px}.qira-float-x{left:auto;right:30%;top:28%}.qira-float-8{left:48%;bottom:31%}.qira-float-5{right:3%;bottom:24%}.qira-float-plus{right:1%;top:49%}
  .qira-module-grid{grid-template-columns:1fr;gap:10px}.qira-module-card{height:136px;min-height:136px;border-radius:24px;padding:17px 68px 17px 145px;justify-content:center}.qira-module-card:before{width:210px;height:210px}.qira-card-art{width:125px;height:122px;left:10px;top:7px}.qira-card-art img{width:100%;height:100%}.qira-card-copy{padding-right:0;gap:6px}.qira-card-copy strong{font-size:27px}.qira-card-copy small{font-size:15px}.qira-card-arrow{right:18px;bottom:50%;transform:translateY(50%);width:48px;height:48px;font-size:25px}
  .qira-access-card{display:none}
  .qira-passes{min-height:154px;grid-template-columns:180px 1fr;grid-template-rows:1fr auto;gap:4px 12px;padding:8px 14px;border-radius:24px}.qira-passes-art{grid-row:1/3;width:180px;height:135px}.qira-passes-copy strong{font-size:26px}.qira-passes-copy span{font-size:13px}.qira-benefits{display:none}.qira-passes-button{grid-column:2;height:44px;justify-self:start}
  .qira-mobile-nav{position:fixed;z-index:110;left:0;right:0;bottom:0;height:76px;padding:5px 8px calc(4px + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(5,1fr);align-items:center;background:rgba(255,255,255,.98);border-top:1px solid #e8e6ef;box-shadow:0 -8px 22px rgba(46,36,82,.12);backdrop-filter:blur(16px)}
  .qira-mobile-nav .qira-nav-button{height:64px;min-width:0;flex-direction:column;gap:1px;padding:3px 2px;border-radius:16px;font-size:10px}.qira-mobile-nav .qira-nav-icon{width:36px;height:36px}.qira-mobile-nav .qira-nav-button span{display:block;white-space:nowrap}.qira-mobile-nav .qira-nav-button.active{box-shadow:inset 0 3px 0 #7543ee;background:#f2ecff}
  .qira-drawer{width:min(500px,96vw)!important;border-radius:28px 0 0 28px!important;padding:18px 15px 22px!important}.qira-drawer-head>img{width:125px;height:51px}.qira-drawer-row{height:54px;grid-template-columns:43px 1fr 20px;font-size:15px}.qira-drawer-icon{width:39px;height:39px}
}

@media (max-width:520px){
  .qira-header{padding:8px 9px!important}.qira-brand img{width:98px;height:41px}.qira-child-chip-mobile{height:43px;padding:4px 8px 4px 4px}.qira-child-chip-mobile img{width:33px;height:33px}.qira-child-chip-mobile strong{font-size:13px}.qira-menu-button{width:43px;height:43px}
  .qira-hero{min-height:390px}.qira-hero-copy{padding:20px 16px}.qira-check-lockup img{width:96px;height:42px}.qira-check-lockup span{font-size:35px}.qira-check-lockup b{width:34px;height:34px;font-size:22px}.qira-hero h1{font-size:34px;max-width:72%}.qira-hero p{font-size:14px;max-width:64%}.qira-primary-button{height:44px;padding:0 18px;font-size:14px}.qira-robot{width:230px;height:230px}.qira-board{width:180px}
  .qira-module-card{height:126px;min-height:126px;padding-left:125px}.qira-card-art{width:108px;height:108px}.qira-card-copy strong{font-size:23px}.qira-card-copy small{font-size:13px}.qira-card-arrow{width:43px;height:43px;right:14px}
  .qira-passes{grid-template-columns:135px 1fr;min-height:140px}.qira-passes-art{width:135px;height:118px}.qira-passes-copy strong{font-size:22px}.qira-passes-copy span{font-size:11px}.qira-passes-button{height:40px;font-size:13px}
  .qira-drawer-controls{gap:8px}.qira-drawer-controls section{padding:10px}.qira-drawer-row{font-size:14px}.qira-drawer-promo strong{font-size:19px}.qira-drawer-promo img{width:105px;height:105px}
}

/* MOBILE LANDSCAPE */
@media (max-width:950px) and (orientation:landscape) and (max-height:600px){
  body{padding-bottom:58px}.qira-header{height:56px;min-height:56px!important;padding:5px 10px!important}.qira-brand img{width:92px;height:38px}.qira-child-chip-mobile{height:40px}.qira-menu-button{width:40px;height:40px}
  .shell[data-current-route="home"] .qira-home{padding:8px 10px!important;gap:8px}
  .qira-hero{min-height:190px;height:190px;grid-template-columns:1.1fr .9fr}.qira-hero-copy{padding:12px 18px}.qira-check-lockup{margin-bottom:3px}.qira-check-lockup img{width:76px;height:33px}.qira-check-lockup span{font-size:28px}.qira-check-lockup b{width:28px;height:28px;font-size:18px;border-width:3px}.qira-hero h1{font-size:27px;max-width:100%;margin-bottom:4px}.qira-hero p{font-size:11px;max-width:100%;margin-bottom:7px}.qira-primary-button{height:34px;font-size:11px;border-radius:11px}.qira-hero-visual{position:relative}.qira-robot{width:175px;height:175px;right:12%;top:52%;transform:translateY(-45%)}.qira-board{width:135px;right:25%;bottom:-10%}.qira-float{width:30px;height:30px;font-size:17px}
  .qira-module-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}.qira-module-card{height:112px;min-height:112px;border-radius:17px;padding:57px 8px 8px;display:block}.qira-access-card{display:flex}.qira-card-art{width:64px;height:58px;left:8px;top:2px}.qira-card-copy{gap:2px}.qira-card-copy strong{font-size:14px}.qira-card-copy small{display:none}.qira-card-arrow{width:27px;height:27px;right:7px;bottom:7px;transform:none;font-size:15px}
  .qira-passes{min-height:78px;height:78px;grid-template-columns:105px 1fr auto;grid-template-rows:1fr;padding:3px 10px}.qira-passes-art{grid-row:auto;width:105px;height:72px}.qira-passes-copy strong{font-size:18px}.qira-passes-copy span{font-size:9px}.qira-passes-button{grid-column:auto;height:35px;font-size:11px}.qira-benefits{display:none}
  .qira-mobile-nav{height:58px}.qira-mobile-nav .qira-nav-button{height:50px}.qira-mobile-nav .qira-nav-icon{width:28px;height:28px}.qira-mobile-nav .qira-nav-button span{font-size:8px}
}


/* OWNER FINAL POLISH LOCK, 2026-07-13 */
.qira-check{background:linear-gradient(145deg,#a66df3 0%,#7137e5 100%)}
.qira-exam{background:linear-gradient(145deg,#ff70a7 0%,#f03d84 100%)}
.qira-ajar{background:linear-gradient(145deg,#8add4b 0%,#42bb34 100%)}
.qira-play{background:linear-gradient(145deg,#64a2fb 0%,#286ce8 100%)}
.qira-class{background:linear-gradient(145deg,#ffbb52 0%,#ff8d26 100%)}
.qira-access{background:linear-gradient(145deg,#51d6cf 0%,#14b1bc 100%)}
.qira-primary-button{background:linear-gradient(135deg,#5d22e7 0%,#8b57f2 100%);border-radius:18px;box-shadow:0 10px 22px rgba(93,48,215,.28)}
.qira-passes-button{background:linear-gradient(135deg,#ffc13b 0%,#ffa714 100%);border-radius:19px}
.qira-module-card{box-shadow:0 14px 32px rgba(52,40,94,.15)}
.qira-card-art img,.qira-nav-icon,.qira-drawer-icon{image-rendering:auto}

@media (max-width:900px){
  .qira-hero{
    min-height:340px;
    grid-template-columns:minmax(0,54%) minmax(0,46%);
    align-items:stretch;
  }
  .qira-hero-copy{
    position:relative;
    z-index:6;
    padding:25px 0 22px 20px;
    align-self:stretch;
    display:flex;
    flex-direction:column;
    justify-content:center;
  }
  .qira-hero h1{
    font-size:clamp(31px,7.8vw,38px);
    line-height:1.06;
    max-width:100%;
    margin:0 0 11px;
  }
  .qira-hero p{
    font-size:clamp(13px,3.6vw,15px);
    line-height:1.42;
    max-width:100%;
    margin:0 0 16px;
  }
  .qira-primary-button{
    width:max-content;
    max-width:100%;
    height:46px;
    padding:0 18px;
    gap:20px;
  }
  .qira-hero-visual{
    position:relative;
    inset:auto;
    min-height:100%;
    overflow:visible;
  }
  .qira-robot{
    width:min(52vw,230px);
    height:min(52vw,230px);
    right:-9%;
    top:52%;
    transform:translateY(-42%);
  }
  
  .qira-board{width:min(41vw,178px);right:5%;bottom:-3%}
  .qira-float{width:38px;height:38px;border-radius:11px;font-size:21px}
  .qira-float-x{left:2%;top:20%}
  .qira-float-8{left:4%;bottom:22%}
  .qira-float-5{right:0;bottom:24%}
  .qira-float-plus{right:-1%;top:35%}
}

@media (max-width:520px){
  .qira-hero{min-height:330px;grid-template-columns:minmax(0,53%) minmax(0,47%)}
  .qira-hero-copy{padding:22px 0 20px 15px}
  .qira-hero h1{font-size:clamp(29px,8vw,33px);letter-spacing:-1px;margin-bottom:9px}
  .qira-hero p{font-size:13px;line-height:1.38;margin-bottom:13px}
  .qira-primary-button{height:43px;padding:0 15px;font-size:13px;gap:15px;border-radius:15px}
  .qira-robot{width:min(51vw,205px);height:min(51vw,205px);right:-8%;top:53%}
  
  .qira-board{width:min(39vw,160px);right:5%;bottom:-2%}
  .qira-float{width:34px;height:34px;font-size:19px}
  .qira-module-card{border-radius:24px}
  .qira-card-art img{width:96%;height:96%}
}

@media (max-width:950px) and (orientation:landscape) and (max-height:600px){
  .qira-hero{min-height:190px;height:190px;grid-template-columns:minmax(0,57%) minmax(0,43%)}
  .qira-hero-copy{padding:12px 0 11px 17px}
  .qira-hero h1{font-size:26px;line-height:1.02;margin-bottom:4px}
  .qira-hero p{font-size:10.5px;line-height:1.28;margin-bottom:7px}
  .qira-primary-button{height:33px;padding:0 13px;font-size:10.5px;gap:12px}
  .qira-robot{width:166px;height:166px;right:1%;top:53%;transform:translateY(-44%)}
  
  .qira-board{width:127px;right:12%;bottom:-8%}
}

/* Final coherent icon sizing */
.qira-child-avatar{object-fit:contain;padding:2px;background:#eaf7ff}
.qira-notification img{width:34px;height:34px;object-fit:contain}
.qira-control-title img{width:22px;height:22px;object-fit:contain}
.qira-benefits b img{width:100%;height:100%;object-fit:contain}
.qira-passes-button{display:inline-flex;align-items:center;justify-content:center;gap:9px}
.qira-passes-button>img{width:24px;height:24px;object-fit:contain}
.qira-passes-button>span{font-size:inherit;margin:0}
.qira-passes-button>b{font-size:25px;margin-left:8px;line-height:1}

/* Narrow-phone collision guard: text and mascot occupy separate columns */
@media (max-width:520px){
  .qira-hero{grid-template-columns:minmax(0,50%) minmax(0,50%)}
  .qira-hero-copy{padding:21px 0 18px 14px}
  .qira-hero h1{font-size:27px;line-height:1.08;letter-spacing:-.8px}
  .qira-hero p{font-size:12.5px;line-height:1.36}
  .qira-primary-button{max-width:176px;justify-content:center}
  .qira-robot{width:170px;height:170px;right:-4%;top:54%;transform:translateY(-41%)}
  
  .qira-board{width:139px;right:7%;bottom:0}
  .qira-float-x{left:17%;top:20%}
  .qira-float-8{left:8%;bottom:24%}
  .qira-float-5{right:0;bottom:27%}
  .qira-float-plus{right:-1%;top:38%}
}


/* OWNER DESKTOP SPACING FIX V8: mobile remains unchanged */
@media (min-width:901px){
  .qira-module-card{
    justify-content:flex-start;
    padding:0;
  }
  .qira-card-art{
    left:14px;
    right:14px;
    top:18px;
    width:auto;
    height:60%;
    align-items:center;
    justify-content:center;
  }
  .qira-card-art img{
    width:86%;
    height:100%;
    object-fit:contain;
    object-position:center center;
  }
  .qira-card-copy{
    position:absolute;
    left:16px;
    right:48px;
    bottom:30px;
    padding:0;
    gap:5px;
  }
  .qira-card-copy strong{
    font-size:clamp(17px,1.32vw,24px);
    line-height:1.05;
  }
  .qira-card-copy small{
    font-size:clamp(10px,.76vw,14px);
    line-height:1.34;
  }
  .qira-card-arrow{
    right:12px;
    bottom:14px;
    width:39px;
    height:39px;
  }

  .qira-passes{
    grid-template-columns:minmax(255px,.92fr) minmax(315px,1.25fr) minmax(560px,2.05fr) 178px;
    gap:18px;
    padding:10px 18px 10px 20px;
    align-items:center;
  }
  .qira-passes-art{
    width:100%;
    height:118px;
    max-height:none;
    object-fit:contain;
    object-position:center center;
    transform:scale(1.08);
    transform-origin:center;
  }
  .qira-passes-copy{
    align-self:center;
    gap:7px;
  }
  .qira-passes-copy strong{
    font-size:clamp(27px,1.85vw,35px);
    line-height:1.04;
  }
  .qira-passes-copy span{
    font-size:clamp(12px,.86vw,15px);
    line-height:1.35;
  }
  .qira-benefits{
    height:86%;
    min-height:88px;
  }
  .qira-benefits>div{
    gap:10px;
    padding:10px 14px;
  }
  .qira-benefits b{
    width:55px;
    height:55px;
  }
  .qira-benefits strong{
    font-size:clamp(10px,.72vw,13px);
  }
  .qira-benefits small{
    font-size:clamp(8px,.58vw,11px);
  }
  .qira-passes-button{
    width:178px;
    height:54px;
    padding:0 18px;
    justify-self:end;
    font-size:15px;
  }
}

@media (min-width:901px) and (max-width:1450px){
  .qira-card-art{top:13px;height:58%}
  .qira-card-copy{bottom:23px;left:13px;right:42px}
  .qira-card-arrow{width:35px;height:35px;right:9px;bottom:10px}
  .qira-passes{
    grid-template-columns:minmax(190px,.72fr) minmax(245px,1.02fr) minmax(390px,1.65fr) 145px;
    gap:10px;
    padding:7px 14px 7px 10px;
  }
  .qira-passes-art{height:96px}
  .qira-benefits b{width:44px;height:44px}
  .qira-passes-button{width:145px;height:45px;font-size:13px}
}


/* OWNER FINAL HERO + CARD ORDER LOCK V9, 2026-07-13
   Scope: hero left/right swap, math symbol replacements, and home-card order only. */
.qira-hero-visual{grid-column:1;grid-row:1}
.qira-hero-copy{grid-column:2;grid-row:1}

@media (min-width:901px){
  .qira-hero{grid-template-columns:minmax(430px,.96fr) minmax(520px,1.04fr)}
  .qira-hero-visual{position:relative;height:100%;min-height:0}
  .qira-hero-copy{padding:24px clamp(36px,4.2vw,78px) 24px clamp(18px,2.2vw,42px)}
  .qira-hero h1{max-width:760px}
  .qira-hero p{max-width:760px}
  .qira-robot{left:44%;right:auto;top:51%;width:min(31vw,385px);height:min(31vw,385px);transform:translate(-50%,-44%)}
  
  .qira-board{left:8%;right:auto;bottom:-10%;width:min(24vw,305px);transform:rotate(2deg)}
  .qira-float-x{left:5%;right:auto;top:17%}
  .qira-float-8{left:2%;right:auto;bottom:18%}
  .qira-float-5{left:auto;right:3%;bottom:20%}
  .qira-float-plus{left:auto;right:4%;top:31%}
}

@media (max-width:900px){
  .qira-hero{grid-template-columns:minmax(0,52%) minmax(0,48%);align-items:stretch}
  .qira-hero-visual{position:relative;inset:auto;min-height:100%;overflow:visible}
  .qira-hero-copy{position:relative;z-index:6;align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding:22px 16px 20px 8px}
  .qira-hero h1{max-width:100%;margin-bottom:10px}
  .qira-hero p{max-width:100%;margin-bottom:15px}
  .qira-robot{left:44%;right:auto;top:53%;width:min(51vw,235px);height:min(51vw,235px);transform:translate(-50%,-42%)}
  
  .qira-board{left:1%;right:auto;bottom:-3%;width:min(41vw,180px);transform:rotate(2deg)}
  .qira-float-x{left:5%;right:auto;top:18%}
  .qira-float-8{left:1%;right:auto;bottom:23%}
  .qira-float-5{left:auto;right:1%;bottom:24%}
  .qira-float-plus{left:auto;right:2%;top:34%}
}

@media (max-width:520px){
  .qira-hero{min-height:360px;grid-template-columns:minmax(0,52%) minmax(0,48%)}
  .qira-hero-copy{padding:20px 13px 18px 7px}
  .qira-hero h1{font-size:clamp(24px,6.5vw,29px);line-height:1.08;letter-spacing:-.7px;margin-bottom:9px}
  .qira-hero p{font-size:12px;line-height:1.38;margin-bottom:13px}
  .qira-primary-button{height:43px;max-width:178px;padding:0 14px;font-size:12.5px;gap:12px;justify-content:center}
  .qira-robot{left:44%;top:54%;width:min(49vw,208px);height:min(49vw,208px);transform:translate(-50%,-41%)}
  
  .qira-board{left:0;bottom:-2%;width:min(38vw,155px)}
  .qira-float{width:34px;height:34px;font-size:19px}
  .qira-float-x{left:5%;top:18%}
  .qira-float-8{left:0;bottom:24%}
  .qira-float-5{right:1%;bottom:25%}
  .qira-float-plus{right:1%;top:35%}
}

@media (max-width:950px) and (orientation:landscape) and (max-height:600px){
  .qira-hero{min-height:190px;height:190px;grid-template-columns:minmax(0,47%) minmax(0,53%)}
  .qira-hero-copy{padding:11px 16px 10px 8px}
  .qira-hero h1{font-size:25px;line-height:1.04;margin-bottom:4px}
  .qira-hero p{font-size:10.5px;line-height:1.28;margin-bottom:7px}
  .qira-primary-button{height:33px;padding:0 13px;font-size:10.5px;gap:12px}
  .qira-robot{left:43%;right:auto;top:53%;width:166px;height:166px;transform:translate(-50%,-44%)}
  
  .qira-board{left:3%;right:auto;bottom:-8%;width:127px}
  .qira-float-x{left:3%;top:14%}
  .qira-float-8{left:1%;bottom:18%}
  .qira-float-5{right:2%;bottom:20%}
  .qira-float-plus{right:3%;top:29%}
}


/* QIRA SHARED SHELL FOCUS MODE V11 */
.shell[data-focus-mode="true"]{background:#f8f9fe!important}
.shell[data-focus-mode="true"] .qira-header{box-shadow:0 5px 18px rgba(42,34,78,.08)!important}
.qira-focus-switcher{display:none;position:relative;z-index:95;min-width:0}
.qira-focus-switcher summary{list-style:none;height:46px;min-width:150px;max-width:210px;padding:4px 12px 4px 6px;border:1px solid #e3dff0;border-radius:16px;background:#fff;display:flex;align-items:center;gap:7px;color:#172044;box-shadow:0 6px 16px rgba(45,34,83,.07);cursor:pointer}
.qira-focus-switcher summary::-webkit-details-marker{display:none}
.qira-focus-switcher-icon{width:38px;height:38px;object-fit:contain;flex:0 0 auto}
.qira-focus-switcher summary strong{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qira-focus-switcher summary>span{margin-left:auto;color:#7142e5;font-weight:900}
.qira-focus-switcher-menu{position:absolute;top:52px;left:0;width:230px;padding:8px;border:1px solid #e7e3ef;border-radius:19px;background:#fff;box-shadow:0 18px 45px rgba(27,20,58,.2);display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.qira-focus-switcher-menu button{min-width:0;height:68px;border:0;border-radius:14px;background:#f8f6fc;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#353d5a;font-weight:850;font-size:10px}
.qira-focus-switcher-menu button.active{background:#eee7ff;box-shadow:inset 0 -3px 0 #7447ec}
.qira-focus-switcher-menu img{width:36px;height:36px;object-fit:contain}

.qira-focus-main{width:100%!important;max-width:1720px!important;margin:0 auto!important;padding:18px clamp(16px,3vw,46px) 30px!important}
.qira-module-intro{position:relative;min-height:132px;margin:0 0 16px;border-radius:27px;padding:18px 28px 18px 175px;display:flex;align-items:center;overflow:hidden;color:#fff;box-shadow:0 14px 32px rgba(52,40,94,.14)}
.qira-module-intro:before{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-70px;top:-95px;background:rgba(255,255,255,.14)}
.qira-module-intro-check{background:linear-gradient(145deg,#a66df3,#7137e5)}
.qira-module-intro-play{background:linear-gradient(145deg,#64a2fb,#286ce8)}
.qira-module-intro-icon{position:absolute;left:22px;top:50%;transform:translateY(-50%);width:130px;height:115px;object-fit:contain;filter:drop-shadow(0 10px 10px rgba(33,25,72,.22))}
.qira-module-intro div{position:relative;z-index:2;display:grid;gap:4px}
.qira-module-intro span{font-size:12px;font-weight:950;letter-spacing:.12em;text-transform:uppercase;opacity:.88}
.qira-module-intro h1{margin:0;font-size:clamp(28px,3vw,46px);line-height:1}
.qira-module-intro p{margin:0;font-size:15px;font-weight:700;opacity:.96}

/* QiRa Check entry buttons inherit the approved home-card language */
.shell[data-current-route="check"] .year-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.shell[data-current-route="check"] .year-card{position:relative;min-height:210px;padding:102px 22px 20px;border:0;border-radius:25px;overflow:hidden;background:linear-gradient(145deg,#a66df3,#7137e5);color:#fff;box-shadow:0 14px 30px rgba(74,48,142,.17);text-align:left}
.shell[data-current-route="check"] .year-card:before{content:"";position:absolute;left:16px;top:10px;width:105px;height:92px;background:url('/assets/qira-icon-pack/check.png') center/contain no-repeat;filter:drop-shadow(0 8px 8px rgba(35,24,75,.2))}
.shell[data-current-route="check"] .year-card:after{content:"→";position:absolute;right:17px;bottom:17px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#7040e8;font-size:22px;font-weight:950;box-shadow:0 6px 12px rgba(30,22,69,.13)}
.shell[data-current-route="check"] .year-card .tag{position:absolute;right:15px;top:15px;background:rgba(255,255,255,.9);color:#6737d7}
.shell[data-current-route="check"] .year-card h2{margin:0 0 5px;font-size:24px;color:#fff}
.shell[data-current-route="check"] .year-card p{margin:0;max-width:78%;color:rgba(255,255,255,.94);font-weight:650}
.shell[data-current-route="check"] .year-card>.btn{display:none}

/* QiRa Play catalogue follows the same approved card family */
.shell[data-current-route="play"] .play-catalogue{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.shell[data-current-route="play"] .play-card{position:relative;min-height:245px;border:0;border-radius:25px;padding:18px 20px 20px;overflow:hidden;color:#fff;box-shadow:0 14px 30px rgba(44,51,129,.15);text-align:left;display:grid;grid-template-rows:130px auto auto}
.shell[data-current-route="play"] .play-card:nth-child(1),.shell[data-current-route="play"] .play-card:nth-child(4){background:linear-gradient(145deg,#64a2fb,#286ce8)}
.shell[data-current-route="play"] .play-card:nth-child(2),.shell[data-current-route="play"] .play-card:nth-child(5){background:linear-gradient(145deg,#8add4b,#42bb34)}
.shell[data-current-route="play"] .play-card:nth-child(3),.shell[data-current-route="play"] .play-card:nth-child(6){background:linear-gradient(145deg,#ff70a7,#f03d84)}
.shell[data-current-route="play"] .play-card>img{width:100%;height:125px;object-fit:contain;filter:drop-shadow(0 9px 9px rgba(25,28,74,.2))}
.shell[data-current-route="play"] .play-card-number{position:absolute;right:15px;top:13px;color:rgba(255,255,255,.65);font-size:14px;font-weight:950}
.shell[data-current-route="play"] .play-card h2{margin:0 0 5px;color:#fff;font-size:23px}
.shell[data-current-route="play"] .play-card p{margin:0 0 10px;color:rgba(255,255,255,.94);font-weight:650}
.shell[data-current-route="play"] .play-card>.btn{justify-self:start;background:#fff;color:#286ce8;border-radius:15px;box-shadow:none}
.shell[data-current-route="play"] .play-card:nth-child(2)>.btn,.shell[data-current-route="play"] .play-card:nth-child(5)>.btn{color:#2fa129}
.shell[data-current-route="play"] .play-card:nth-child(3)>.btn,.shell[data-current-route="play"] .play-card:nth-child(6)>.btn{color:#e43a78}

@media (max-width:900px){
  .shell[data-focus-mode="true"]~*{}
  body:has(.shell[data-focus-mode="true"]){padding-bottom:0!important}
  .shell[data-focus-mode="true"] .qira-header{height:62px;min-height:62px!important;padding:6px 9px!important;gap:7px!important}
  .shell[data-focus-mode="true"] .qira-brand img{width:86px;height:38px}
  .shell[data-focus-mode="true"] .qira-child-chip-mobile{display:none!important}
  .qira-focus-switcher{display:block;flex:1;margin-left:auto}
  .qira-focus-switcher summary{width:100%;max-width:185px;margin-left:auto}
  .shell[data-focus-mode="true"] .qira-menu-button{width:43px;height:43px;border-radius:14px}
  .shell[data-focus-mode="true"] .qira-mobile-nav{display:none!important}
  .qira-focus-main{padding:12px 12px 22px!important}
  .qira-module-intro{min-height:112px;padding:14px 14px 14px 125px;border-radius:23px}
  .qira-module-intro-icon{left:9px;width:112px;height:100px}
  .qira-module-intro h1{font-size:29px}.qira-module-intro p{font-size:12.5px}
  .shell[data-current-route="check"] .year-grid,.shell[data-current-route="play"] .play-catalogue{grid-template-columns:1fr;gap:10px}
  .shell[data-current-route="check"] .year-card{min-height:132px;padding:22px 62px 20px 135px;display:flex;flex-direction:column;justify-content:center}
  .shell[data-current-route="check"] .year-card:before{left:10px;top:7px;width:112px;height:116px}
  .shell[data-current-route="check"] .year-card:after{right:14px;bottom:50%;transform:translateY(50%)}
  .shell[data-current-route="check"] .year-card .tag{top:10px;right:12px}
  .shell[data-current-route="check"] .year-card h2{font-size:22px}
  .shell[data-current-route="check"] .year-card p{font-size:13px;max-width:100%}
  .shell[data-current-route="play"] .play-card{min-height:145px;grid-template-columns:122px 1fr 44px;grid-template-rows:1fr;padding:12px 12px;align-items:center;gap:8px}
  .shell[data-current-route="play"] .play-card>img{width:116px;height:116px;grid-column:1}
  .shell[data-current-route="play"] .play-card>div{grid-column:2;min-width:0}
  .shell[data-current-route="play"] .play-card>.btn{grid-column:3;width:42px;height:42px;min-height:42px;padding:0;border-radius:50%;font-size:0;display:grid;place-items:center}
  .shell[data-current-route="play"] .play-card>.btn:after{content:"→";font-size:22px;font-weight:950}
  .shell[data-current-route="play"] .play-card h2{font-size:22px}.shell[data-current-route="play"] .play-card p{font-size:12.5px;margin:0}
}

@media (max-width:520px){
  .qira-focus-switcher summary{min-width:135px;max-width:160px;padding-right:8px}
  .qira-focus-switcher summary strong{font-size:12px}
  .qira-focus-switcher-icon{width:34px;height:34px}
  .qira-focus-switcher-menu{right:0;left:auto;width:215px}
  .qira-module-intro{padding-left:110px;min-height:102px}.qira-module-intro-icon{width:96px;height:88px}.qira-module-intro h1{font-size:25px}
}

/* V12 FINAL MODE BOUNDARY + VIEWPORT LAW */
.qira-module-main{width:100%!important;max-width:1720px!important;margin:0 auto!important;padding:18px clamp(16px,3vw,46px) 30px!important}
.shell[data-shell-mode="standard"] .qira-focus-switcher{display:none!important}

html:has(.shell[data-shell-mode="focus"]),
body:has(.shell[data-shell-mode="focus"]){height:100%;overflow:hidden!important}
.shell[data-shell-mode="focus"]{height:100dvh;min-height:100dvh!important;overflow:hidden!important;display:grid;grid-template-rows:auto minmax(0,1fr)}
.shell[data-shell-mode="focus"] .qira-header{position:relative!important;top:auto!important}
.shell[data-shell-mode="focus"] .qira-focus-main{height:calc(100dvh - 76px);min-height:0!important;overflow:hidden!important;padding:12px clamp(14px,2.5vw,34px) 14px!important}
.shell[data-shell-mode="focus"] .qira-focus-main[data-focus-view="result"]{overflow:auto!important;overscroll-behavior:contain}
.shell[data-shell-mode="focus"] .qira-focus-main[data-focus-view="setup"]{overflow:auto!important;overscroll-behavior:contain}
.shell[data-shell-mode="focus"] .qira-focus-main[data-focus-view="active"]{overflow:hidden!important}

@media (max-width:900px){
  .qira-module-main{padding:12px 12px 94px!important}
  .shell[data-shell-mode="standard"] .qira-mobile-nav{display:grid!important}
  .shell[data-shell-mode="focus"]{grid-template-rows:62px minmax(0,1fr)}
  .shell[data-shell-mode="focus"] .qira-focus-main{height:calc(100dvh - 62px);padding:8px 9px 10px!important}
  .shell[data-shell-mode="focus"] .qira-mobile-nav{display:none!important}
  .shell[data-shell-mode="focus"] .qira-desktop-nav{display:none!important}
}

@media (max-width:950px) and (orientation:landscape) and (max-height:600px){
  .shell[data-shell-mode="focus"]{grid-template-rows:54px minmax(0,1fr)}
  .shell[data-shell-mode="focus"] .qira-header{height:54px!important;min-height:54px!important;padding:4px 8px!important}
  .shell[data-shell-mode="focus"] .qira-brand img{width:78px!important;height:34px!important}
  .shell[data-shell-mode="focus"] .qira-focus-main{height:calc(100dvh - 54px);padding:5px 8px 7px!important}
  .shell[data-shell-mode="focus"] .qira-focus-switcher summary{height:42px!important}
  .shell[data-shell-mode="focus"] .qira-menu-button{width:40px!important;height:40px!important}
}

/* V13 FOCUS MODE OVERFLOW HOTFIX
   Fixes clipped setup/game/result screens after mobile bottom navigation is hidden.
   The shell remains viewport-bound, while the module workspace becomes the only
   controlled scroll container when content cannot reasonably fit. */
html:has(.shell[data-shell-mode="focus"]),
body:has(.shell[data-shell-mode="focus"]){
  height:100%;
  min-height:100%;
  overflow:hidden!important;
  padding-bottom:0!important;
}
.shell[data-shell-mode="focus"]{
  height:100dvh;
  min-height:100dvh!important;
  max-height:100dvh;
  overflow:hidden!important;
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
}
.shell[data-shell-mode="focus"] .qira-focus-main{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-y:contain;
  scrollbar-gutter:stable;
  padding-bottom:max(14px,env(safe-area-inset-bottom))!important;
}
.shell[data-shell-mode="focus"] .qira-focus-main[data-focus-view="setup"],
.shell[data-shell-mode="focus"] .qira-focus-main[data-focus-view="active"],
.shell[data-shell-mode="focus"] .qira-focus-main[data-focus-view="result"],
.shell[data-shell-mode="focus"] .qira-focus-main[data-focus-view="session"]{
  overflow-y:auto!important;
}
.shell[data-shell-mode="focus"] .qira-mobile-nav,
.shell[data-shell-mode="focus"] .mobile-bottom-nav{
  display:none!important;
  height:0!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
}
@media (max-width:900px){
  .shell[data-shell-mode="focus"] .qira-focus-main{
    padding:8px 9px max(10px,env(safe-area-inset-bottom))!important;
  }
  .shell[data-shell-mode="focus"] .play-setup-card,
  .shell[data-shell-mode="focus"] .play-game-shell,
  .shell[data-shell-mode="focus"] .play-result,
  .shell[data-shell-mode="focus"] .question-card{
    margin-bottom:0!important;
  }
}
@media (max-width:950px) and (orientation:landscape) and (max-height:600px){
  .shell[data-shell-mode="focus"] .qira-focus-main{
    padding:5px 8px max(7px,env(safe-area-inset-bottom))!important;
  }
}

/* QIRA CHECK SELECTOR OWNER-LOCKED ROUND 1
   The approved Home composition stays unchanged. Only the hero content and
   the six module-card contents are replaced on the Check selector route. */
.shell[data-current-route="check"] .qira-check-selector{
  width:100%!important;
  max-width:none!important;
  height:calc(100dvh - 76px);
  min-height:0!important;
  padding:14px 3.4vw 14px!important;
  display:grid!important;
  grid-template-rows:minmax(250px,1.75fr) minmax(220px,1.45fr) minmax(112px,.72fr);
  gap:12px;
  overflow:hidden;
}

.qira-check-selector-hero{
  grid-template-columns:minmax(390px,.88fr) minmax(560px,1.24fr) minmax(310px,.68fr)!important;
}
.qira-check-selector-hero .qira-check-hero-visual{
  position:relative;
  grid-column:1;
  grid-row:1;
  height:100%;
  min-height:0;
  z-index:2;
}
.qira-check-selector-hero .qira-check-hero-copy{
  position:relative;
  grid-column:2;
  grid-row:1;
  z-index:4;
  align-self:center;
  padding:22px clamp(22px,2.7vw,52px) 22px clamp(10px,1.5vw,28px);
}
.qira-check-selector-hero .qira-check-progress{
  position:relative;
  grid-column:3;
  grid-row:1;
  height:100%;
  min-height:0;
  display:grid;
  place-items:center;
  z-index:3;
  padding:20px 18px 12px 0;
}
.qira-check-selector-hero .qira-check-progress svg{
  width:min(100%,340px);
  height:min(88%,260px);
  overflow:visible;
}
.qira-check-selector-hero .qira-check-badge{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 17px;
  margin-bottom:14px;
  border-radius:12px;
  background:linear-gradient(135deg,#7226e8,#a044ef);
  color:#fff;
  font-size:14px;
  line-height:1;
  font-weight:950;
  box-shadow:0 8px 18px rgba(111,37,224,.26);
}
.qira-check-selector-hero .qira-check-hero-copy h1{
  max-width:770px;
  margin:0 0 12px;
  font-size:clamp(30px,2.45vw,48px);
  line-height:1.05;
  letter-spacing:-1.5px;
  color:#111a3d;
}
.qira-check-selector-hero .qira-check-hero-copy p{
  max-width:720px;
  margin:0;
  font-size:clamp(13px,1vw,18px);
  line-height:1.42;
  color:#4f5b7c;
  font-weight:650;
}
.qira-check-selector-hero .qira-check-robot{
  position:absolute;
  left:50%;
  top:51%;
  width:min(29vw,365px);
  height:min(29vw,365px);
  transform:translate(-47%,-45%);
  object-fit:contain;
  z-index:4;
  filter:drop-shadow(0 22px 20px rgba(33,39,85,.18));
}
.qira-check-selector-hero .qira-check-board{
  position:absolute;
  left:10%;
  bottom:-10%;
  width:min(22vw,280px);
  transform:rotate(2deg);
  z-index:3;
}
.qira-check-selector-hero .qira-check-float{
  position:absolute;
  width:52px;
  height:52px;
  border-radius:13px;
  display:grid;
  place-items:center;
  color:#fff;
  font-size:30px;
  font-style:normal;
  font-weight:950;
  z-index:5;
  box-shadow:0 10px 18px rgba(43,35,82,.22);
}
.qira-check-selector-hero .qira-check-float-ok{
  left:4%;
  top:18%;
  background:linear-gradient(135deg,#51e86f,#0cbf3e);
  transform:rotate(-8deg);
}
.qira-check-selector-hero .qira-check-float-plus{
  left:5%;
  bottom:18%;
  background:linear-gradient(135deg,#ff6d9f,#e8367a);
  transform:rotate(-8deg);
}
.qira-check-selector-hero .qira-check-float-star{
  right:2%;
  bottom:18%;
  background:linear-gradient(135deg,#ffc85c,#ff9c23);
  transform:rotate(8deg);
}

.qira-year-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:12px!important}
.qira-year-card{padding:0!important;justify-content:flex-start!important}
.qira-year-card .qira-year-art{
  left:14px!important;
  right:14px!important;
  top:22px!important;
  width:auto!important;
  height:58%!important;
}
.qira-year-card .qira-year-art img{
  width:93%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  filter:drop-shadow(0 12px 10px rgba(29,24,60,.22));
}
.qira-year-card .qira-card-copy{
  position:absolute!important;
  left:16px!important;
  right:48px!important;
  bottom:21px!important;
  padding:0!important;
}
.qira-year-card .qira-card-copy strong{
  font-size:clamp(19px,1.5vw,27px)!important;
  line-height:1.05!important;
}
.qira-year-card .qira-card-arrow{
  right:12px!important;
  bottom:13px!important;
  width:39px!important;
  height:39px!important;
}
.qira-year-card.qira-check .qira-card-arrow{color:#6d3ce3}
.qira-year-card.qira-play .qira-card-arrow{color:#236be9}
.qira-year-card.qira-exam .qira-card-arrow{color:#ec3f7e}
.qira-year-card.qira-ajar .qira-card-arrow{color:#20a840}
.qira-year-card.qira-class .qira-card-arrow{color:#f27f1f}
.qira-year-card.qira-access .qira-card-arrow{color:#12a6b1}

@media (min-width:901px) and (max-height:950px){
  .shell[data-current-route="check"] .qira-check-selector{
    height:calc(100dvh - 68px);
    padding:10px 2.4vw!important;
    grid-template-rows:minmax(225px,1.72fr) minmax(190px,1.36fr) minmax(102px,.67fr);
    gap:9px;
  }
  .qira-check-selector-hero{border-radius:25px}
  .qira-check-selector-hero .qira-check-hero-copy{padding:15px 26px 15px 8px}
  .qira-check-selector-hero .qira-check-badge{min-height:31px;padding:0 13px;margin-bottom:9px;font-size:11px;border-radius:9px}
  .qira-check-selector-hero .qira-check-hero-copy h1{font-size:35px;margin-bottom:7px}
  .qira-check-selector-hero .qira-check-hero-copy p{font-size:13px}
  .qira-check-selector-hero .qira-check-robot{width:min(28vw,330px);height:min(28vw,330px)}
  .qira-check-selector-hero .qira-check-board{width:min(21vw,255px)}
  .qira-check-selector-hero .qira-check-progress svg{width:min(100%,285px);height:min(88%,220px)}
  .qira-year-grid{gap:9px!important}
  .qira-year-card{border-radius:22px!important}
  .qira-year-card .qira-year-art{top:24px!important;height:54%!important}
  .qira-year-card .qira-card-copy{left:13px!important;bottom:18px!important}
  .qira-year-card .qira-card-copy strong{font-size:19px!important}
  .qira-year-card .qira-card-arrow{width:35px!important;height:35px!important;right:9px!important;bottom:10px!important}
}

@media (max-width:900px){
  .shell[data-current-route="check"] .qira-check-selector{
    height:auto;
    min-height:0!important;
    padding:12px 13px 94px!important;
    display:grid!important;
    grid-template-rows:auto!important;
    gap:11px;
    overflow:visible;
  }
  .qira-check-selector-hero{
    min-height:410px;
    grid-template-columns:minmax(0,52%) minmax(0,48%)!important;
    grid-template-rows:1fr;
    border-radius:27px;
  }
  .qira-check-selector-hero .qira-check-hero-visual{
    grid-column:1;
    grid-row:1;
    min-height:100%;
    overflow:visible;
  }
  .qira-check-selector-hero .qira-check-hero-copy{
    grid-column:2;
    grid-row:1;
    align-self:stretch;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:21px 16px 20px 7px;
  }
  .qira-check-selector-hero .qira-check-progress{display:none}
  .qira-check-selector-hero .qira-check-badge{align-self:flex-start;min-height:29px;padding:0 12px;margin-bottom:9px;font-size:10px;border-radius:9px}
  .qira-check-selector-hero .qira-check-hero-copy h1{font-size:clamp(24px,6.8vw,31px);line-height:1.07;letter-spacing:-.8px;margin-bottom:9px}
  .qira-check-selector-hero .qira-check-hero-copy p{font-size:12px;line-height:1.38}
  .qira-check-selector-hero .qira-check-robot{left:48%;top:52%;width:245px;height:245px;transform:translate(-50%,-43%)}
  .qira-check-selector-hero .qira-check-board{left:3%;bottom:-4%;width:180px}
  .qira-check-selector-hero .qira-check-float{width:39px;height:39px;border-radius:10px;font-size:22px}
  .qira-check-selector-hero .qira-check-float-ok{left:2%;top:17%}
  .qira-check-selector-hero .qira-check-float-plus{left:0;bottom:24%}
  .qira-check-selector-hero .qira-check-float-star{right:0;bottom:19%}
  .qira-year-grid{grid-template-columns:1fr!important;gap:10px!important}
  .qira-year-card{
    height:136px!important;
    min-height:136px!important;
    border-radius:24px!important;
  }
  .qira-year-card .qira-year-art{
    width:125px!important;
    height:122px!important;
    left:10px!important;
    right:auto!important;
    top:7px!important;
  }
  .qira-year-card .qira-year-art img{width:100%!important;height:100%!important}
  .qira-year-card .qira-card-copy{
    left:145px!important;
    right:68px!important;
    bottom:50%!important;
    transform:translateY(50%);
  }
  .qira-year-card .qira-card-copy strong{font-size:27px!important}
  .qira-year-card .qira-card-arrow{
    right:18px!important;
    bottom:50%!important;
    transform:translateY(50%)!important;
    width:48px!important;
    height:48px!important;
    font-size:25px!important;
  }
}

@media (max-width:520px){
  .qira-check-selector-hero{min-height:360px;grid-template-columns:minmax(0,52%) minmax(0,48%)!important}
  .qira-check-selector-hero .qira-check-hero-copy{padding:19px 12px 18px 6px}
  .qira-check-selector-hero .qira-check-hero-copy h1{font-size:clamp(22px,6.2vw,27px)}
  .qira-check-selector-hero .qira-check-hero-copy p{font-size:11.5px}
  .qira-check-selector-hero .qira-check-robot{width:220px;height:220px}
  .qira-check-selector-hero .qira-check-board{width:162px}
  .qira-year-card{height:126px!important;min-height:126px!important}
  .qira-year-card .qira-year-art{width:108px!important;height:108px!important}
  .qira-year-card .qira-card-copy{left:125px!important}
  .qira-year-card .qira-card-copy strong{font-size:23px!important}
  .qira-year-card .qira-card-arrow{width:43px!important;height:43px!important;right:14px!important}
}

@media (max-width:950px) and (orientation:landscape) and (max-height:600px){
  .shell[data-current-route="check"] .qira-check-selector{padding:8px 10px 72px!important;gap:8px}
  .qira-check-selector-hero{
    min-height:190px;
    height:190px;
    grid-template-columns:minmax(0,34%) minmax(0,43%) minmax(0,23%)!important;
  }
  .qira-check-selector-hero .qira-check-hero-visual{grid-column:1}
  .qira-check-selector-hero .qira-check-hero-copy{grid-column:2;padding:10px 10px 9px 4px}
  .qira-check-selector-hero .qira-check-progress{display:grid;grid-column:3;padding:5px 5px 3px 0}
  .qira-check-selector-hero .qira-check-progress svg{width:100%;height:92%}
  .qira-check-selector-hero .qira-check-badge{min-height:22px;padding:0 8px;margin-bottom:4px;font-size:8px;border-radius:6px}
  .qira-check-selector-hero .qira-check-hero-copy h1{font-size:22px;line-height:1.03;margin-bottom:4px}
  .qira-check-selector-hero .qira-check-hero-copy p{font-size:9px;line-height:1.25}
  .qira-check-selector-hero .qira-check-robot{width:165px;height:165px;top:51%}
  .qira-check-selector-hero .qira-check-board{width:122px;bottom:-10%}
  .qira-check-selector-hero .qira-check-float{width:27px;height:27px;font-size:15px;border-radius:7px}
  .qira-year-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:7px!important}
  .qira-year-card{height:112px!important;min-height:112px!important;border-radius:17px!important}
  .qira-year-card .qira-year-art{width:auto!important;height:60%!important;left:7px!important;right:7px!important;top:10px!important}
  .qira-year-card .qira-card-copy{left:8px!important;right:33px!important;bottom:8px!important;transform:none!important}
  .qira-year-card .qira-card-copy strong{font-size:14px!important}
  .qira-year-card .qira-card-arrow{width:27px!important;height:27px!important;right:7px!important;bottom:7px!important;transform:none!important;font-size:15px!important}
}


/* QIRA PLAY SELECTOR OWNER-LOCKED ROUND 2
   This selector is layered on top of the approved Home and the already locked
   QiRa Check selector. Shared shell geometry, header, nav, spacing and passes
   remain unchanged. Only Play hero content and the six selector cards differ. */
.shell[data-current-route="play"] .qira-play-selector{
  width:100%!important;
  max-width:none!important;
  height:calc(100dvh - 76px);
  min-height:0!important;
  padding:14px 3.4vw 14px!important;
  display:grid!important;
  grid-template-rows:minmax(250px,1.75fr) minmax(220px,1.45fr) minmax(112px,.72fr);
  gap:12px;
  overflow:hidden;
}
.qira-play-selector-hero{
  grid-template-columns:minmax(390px,.88fr) minmax(560px,1.24fr) minmax(310px,.68fr)!important;
  background:linear-gradient(135deg,#e7dcff 0%,#c8bcff 48%,#b8e9ff 100%)!important;
}
.qira-play-selector-hero .qira-play-hero-visual{
  position:relative;grid-column:1;grid-row:1;height:100%;min-height:0;z-index:2;
}
.qira-play-selector-hero .qira-play-hero-copy{
  position:relative;grid-column:2;grid-row:1;z-index:4;align-self:center;
  padding:22px clamp(22px,2.7vw,52px) 22px clamp(10px,1.5vw,28px);
}
.qira-play-selector-hero .qira-play-showcase{
  position:relative;grid-column:3;grid-row:1;height:100%;min-height:0;display:grid;place-items:center;z-index:3;padding:16px 16px 12px 0;
}
.qira-play-selector-hero .qira-play-badge{
  display:inline-flex;align-items:center;min-height:38px;padding:0 17px;margin-bottom:14px;border-radius:12px;
  background:linear-gradient(135deg,#5c39da,#7d55eb);color:#fff;font-size:14px;line-height:1;font-weight:950;
  box-shadow:0 8px 18px rgba(72,49,185,.25);
}
.qira-play-selector-hero .qira-play-hero-copy h1{
  max-width:770px;margin:0 0 12px;font-size:clamp(30px,2.45vw,48px);line-height:1.05;letter-spacing:-1.5px;color:#111a3d;
}
.qira-play-selector-hero .qira-play-hero-copy p{
  max-width:720px;margin:0;font-size:clamp(13px,1vw,18px);line-height:1.42;color:#4f5b7c;font-weight:650;
}

.qira-play-selector-hero .qira-play-cta{margin-top:17px;min-height:44px;padding:0 20px;align-self:flex-start;background:linear-gradient(135deg,#5c39da,#8f28ef);color:#fff;box-shadow:0 10px 22px rgba(91,48,205,.25)}
.qira-play-selector-hero .qira-play-cta span{font-size:17px}
.qira-play-selector-hero .qira-play-robot{
  position:absolute;left:49%;top:50%;width:min(29vw,365px);height:min(29vw,365px);transform:translate(-48%,-43%);object-fit:contain;z-index:4;
  filter:drop-shadow(0 22px 20px rgba(33,39,85,.18));
}
.qira-play-selector-hero .qira-play-controller{
  position:absolute;left:14%;bottom:-4%;width:min(20vw,255px);height:min(12vw,150px);object-fit:contain;z-index:5;transform:rotate(-6deg);
  filter:drop-shadow(0 15px 13px rgba(51,38,108,.22));
}
.qira-play-selector-hero .qira-play-float{
  position:absolute;width:52px;height:52px;border-radius:13px;display:grid;place-items:center;color:#fff;font-size:28px;font-style:normal;font-weight:950;z-index:6;
  box-shadow:0 10px 18px rgba(43,35,82,.22);
}
.qira-play-selector-hero .qira-play-float-star{left:4%;top:18%;background:linear-gradient(135deg,#ffc85c,#ff9c23);transform:rotate(-8deg)}
.qira-play-selector-hero .qira-play-float-bolt{left:4%;bottom:18%;background:linear-gradient(135deg,#ff6d9f,#e8367a);transform:rotate(8deg)}
.qira-play-selector-hero .qira-play-float-plus{right:2%;bottom:20%;background:linear-gradient(135deg,#51e86f,#0cbf3e);transform:rotate(8deg)}
.qira-play-burst{position:relative;width:min(100%,310px);aspect-ratio:1;display:grid;place-items:center}
.qira-play-burst::before{content:"";position:absolute;inset:13%;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,#e9e1ff 62%,#c9baff);box-shadow:0 22px 36px rgba(71,52,153,.18)}
.qira-play-burst-core{position:relative;z-index:2;width:62%;height:62%;display:grid;place-items:center}
.qira-play-burst-core img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 16px 14px rgba(52,42,102,.22))}
.qira-play-orbit{position:absolute;z-index:3;width:58px;height:58px;border-radius:18px;background:#fff;display:grid;place-items:center;box-shadow:0 12px 20px rgba(69,55,132,.18)}
.qira-play-orbit img{width:82%;height:82%;object-fit:contain}
.qira-play-orbit-a{left:2%;top:25%;transform:rotate(-8deg)}
.qira-play-orbit-b{right:0;top:18%;transform:rotate(8deg)}
.qira-play-orbit-c{right:8%;bottom:7%;transform:rotate(-5deg)}
.qira-play-selector-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:12px!important}
.qira-play-game-card{padding:0!important;justify-content:flex-start!important}
.qira-play-game-card .qira-play-game-art{left:14px!important;right:14px!important;top:22px!important;width:auto!important;height:58%!important}
.qira-play-game-card .qira-play-game-art img{width:93%!important;height:100%!important;object-fit:contain!important;object-position:center center!important;filter:drop-shadow(0 12px 10px rgba(29,24,60,.22))}
.qira-play-game-card .qira-card-copy{position:absolute!important;left:16px!important;right:48px!important;bottom:21px!important;padding:0!important}
.qira-play-game-card .qira-card-copy strong{font-size:clamp(17px,1.27vw,23px)!important;line-height:1.05!important}
.qira-play-game-card .qira-card-arrow{right:12px!important;bottom:13px!important;width:39px!important;height:39px!important}
.qira-play-game-card.qira-check .qira-card-arrow{color:#6d3ce3}.qira-play-game-card.qira-play .qira-card-arrow{color:#236be9}.qira-play-game-card.qira-exam .qira-card-arrow{color:#ec3f7e}.qira-play-game-card.qira-ajar .qira-card-arrow{color:#20a840}.qira-play-game-card.qira-class .qira-card-arrow{color:#f27f1f}.qira-play-game-card.qira-access .qira-card-arrow{color:#12a6b1}
@media (min-width:901px) and (max-height:950px){
 .shell[data-current-route="play"] .qira-play-selector{height:calc(100dvh - 68px);padding:10px 2.4vw!important;grid-template-rows:minmax(225px,1.72fr) minmax(190px,1.36fr) minmax(102px,.67fr);gap:9px}
 .qira-play-selector-hero{border-radius:25px}.qira-play-selector-hero .qira-play-hero-copy{padding:15px 26px 15px 8px}.qira-play-selector-hero .qira-play-badge{min-height:31px;padding:0 13px;margin-bottom:9px;font-size:11px;border-radius:9px}.qira-play-selector-hero .qira-play-hero-copy h1{font-size:35px;margin-bottom:7px}.qira-play-selector-hero .qira-play-hero-copy p{font-size:13px}
.qira-play-selector-hero .qira-play-cta{margin-top:17px;min-height:44px;padding:0 20px;align-self:flex-start;background:linear-gradient(135deg,#5c39da,#8f28ef);color:#fff;box-shadow:0 10px 22px rgba(91,48,205,.25)}
.qira-play-selector-hero .qira-play-cta span{font-size:17px}
.qira-play-selector-hero .qira-play-robot{width:min(28vw,330px);height:min(28vw,330px)}.qira-play-selector-hero .qira-play-controller{width:min(19vw,225px)}.qira-play-burst{width:min(100%,275px)}
 .qira-play-selector-grid{gap:9px!important}.qira-play-game-card{border-radius:22px!important}.qira-play-game-card .qira-play-game-art{top:10px!important;height:65%!important}.qira-play-game-card .qira-card-copy{left:13px!important;bottom:18px!important}.qira-play-game-card .qira-card-copy strong{font-size:17px!important}.qira-play-game-card .qira-card-arrow{width:35px!important;height:35px!important;right:9px!important;bottom:10px!important}
}
@media (max-width:900px){
 .shell[data-current-route="play"] .qira-play-selector{height:auto;min-height:0!important;padding:12px 13px 94px!important;display:grid!important;grid-template-rows:auto!important;gap:11px;overflow:visible}
 .qira-play-selector-hero{min-height:410px;grid-template-columns:minmax(0,52%) minmax(0,48%)!important;grid-template-rows:1fr;border-radius:27px}
 .qira-play-selector-hero .qira-play-hero-visual{grid-column:1;grid-row:1;min-height:100%;overflow:visible}.qira-play-selector-hero .qira-play-hero-copy{grid-column:2;grid-row:1;align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding:21px 16px 20px 7px}.qira-play-selector-hero .qira-play-showcase{display:none}.qira-play-selector-hero .qira-play-badge{align-self:flex-start;min-height:29px;padding:0 12px;margin-bottom:9px;font-size:10px;border-radius:9px}.qira-play-selector-hero .qira-play-hero-copy h1{font-size:clamp(24px,6.8vw,31px);line-height:1.07;letter-spacing:-.8px;margin-bottom:9px}.qira-play-selector-hero .qira-play-hero-copy p{font-size:12px;line-height:1.38}
.qira-play-selector-hero .qira-play-cta{margin-top:17px;min-height:44px;padding:0 20px;align-self:flex-start;background:linear-gradient(135deg,#5c39da,#8f28ef);color:#fff;box-shadow:0 10px 22px rgba(91,48,205,.25)}
.qira-play-selector-hero .qira-play-cta span{font-size:17px}
.qira-play-selector-hero .qira-play-robot{left:48%;top:52%;width:245px;height:245px;transform:translate(-50%,-43%)}.qira-play-selector-hero .qira-play-controller{left:2%;bottom:2%;width:180px;height:110px}.qira-play-selector-hero .qira-play-float{width:39px;height:39px;border-radius:10px;font-size:22px}.qira-play-selector-hero .qira-play-float-star{left:2%;top:17%}.qira-play-selector-hero .qira-play-float-bolt{left:0;bottom:24%}.qira-play-selector-hero .qira-play-float-plus{right:0;bottom:19%}
 .qira-play-selector-grid{grid-template-columns:1fr!important;gap:10px!important}.qira-play-game-card{height:136px!important;min-height:136px!important;border-radius:24px!important}.qira-play-game-card .qira-play-game-art{width:125px!important;height:122px!important;left:10px!important;right:auto!important;top:7px!important}.qira-play-game-card .qira-play-game-art img{width:100%!important;height:100%!important}.qira-play-game-card .qira-card-copy{left:145px!important;right:68px!important;bottom:50%!important;transform:translateY(50%)}.qira-play-game-card .qira-card-copy strong{font-size:25px!important}.qira-play-game-card .qira-card-arrow{right:18px!important;bottom:50%!important;transform:translateY(50%)!important;width:48px!important;height:48px!important;font-size:25px!important}
}
@media (max-width:520px){
 .qira-play-selector-hero{min-height:360px;grid-template-columns:minmax(0,52%) minmax(0,48%)!important}.qira-play-selector-hero .qira-play-hero-copy{padding:19px 12px 18px 6px}.qira-play-selector-hero .qira-play-hero-copy h1{font-size:clamp(22px,6.2vw,27px)}.qira-play-selector-hero .qira-play-hero-copy p{font-size:11.5px}
.qira-play-selector-hero .qira-play-cta{margin-top:17px;min-height:44px;padding:0 20px;align-self:flex-start;background:linear-gradient(135deg,#5c39da,#8f28ef);color:#fff;box-shadow:0 10px 22px rgba(91,48,205,.25)}
.qira-play-selector-hero .qira-play-cta span{font-size:17px}
.qira-play-selector-hero .qira-play-robot{width:220px;height:220px}.qira-play-selector-hero .qira-play-controller{width:162px}.qira-play-game-card{height:126px!important;min-height:126px!important}.qira-play-game-card .qira-play-game-art{width:108px!important;height:108px!important}.qira-play-game-card .qira-card-copy{left:125px!important}.qira-play-game-card .qira-card-copy strong{font-size:22px!important}.qira-play-game-card .qira-card-arrow{width:43px!important;height:43px!important;right:14px!important}
}
@media (max-width:950px) and (orientation:landscape) and (max-height:600px){
 .shell[data-current-route="play"] .qira-play-selector{padding:8px 10px 72px!important;gap:8px}.qira-play-selector-hero{min-height:190px;height:190px;grid-template-columns:minmax(0,34%) minmax(0,43%) minmax(0,23%)!important}.qira-play-selector-hero .qira-play-hero-visual{grid-column:1}.qira-play-selector-hero .qira-play-hero-copy{grid-column:2;padding:10px 10px 9px 4px}.qira-play-selector-hero .qira-play-showcase{display:grid;grid-column:3;padding:5px 5px 3px 0}.qira-play-selector-hero .qira-play-burst{width:100%;max-width:155px}.qira-play-selector-hero .qira-play-orbit{width:32px;height:32px;border-radius:9px}.qira-play-selector-hero .qira-play-badge{min-height:22px;padding:0 8px;margin-bottom:4px;font-size:8px;border-radius:6px}.qira-play-selector-hero .qira-play-hero-copy h1{font-size:22px;line-height:1.03;margin-bottom:4px}.qira-play-selector-hero .qira-play-hero-copy p{font-size:9px;line-height:1.25}
.qira-play-selector-hero .qira-play-cta{margin-top:17px;min-height:44px;padding:0 20px;align-self:flex-start;background:linear-gradient(135deg,#5c39da,#8f28ef);color:#fff;box-shadow:0 10px 22px rgba(91,48,205,.25)}
.qira-play-selector-hero .qira-play-cta span{font-size:17px}
.qira-play-selector-hero .qira-play-robot{width:165px;height:165px;top:51%}.qira-play-selector-hero .qira-play-controller{width:122px;bottom:-2%}.qira-play-selector-hero .qira-play-float{width:27px;height:27px;font-size:15px;border-radius:7px}.qira-play-selector-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:7px!important}.qira-play-game-card{height:112px!important;min-height:112px!important;border-radius:17px!important}.qira-play-game-card .qira-play-game-art{width:auto!important;height:68%!important;left:7px!important;right:7px!important;top:2px!important}.qira-play-game-card .qira-card-copy{left:8px!important;right:33px!important;bottom:8px!important;transform:none!important}.qira-play-game-card .qira-card-copy strong{font-size:13px!important}.qira-play-game-card .qira-card-arrow{width:27px!important;height:27px!important;right:7px!important;bottom:7px!important;transform:none!important;font-size:15px!important}
}

@media (max-width:900px){.qira-play-selector-hero .qira-play-cta{margin-top:11px;min-height:38px;padding:0 14px;font-size:12px}}
@media (max-width:520px){.qira-play-selector-hero .qira-play-cta{margin-top:9px;min-height:35px;padding:0 12px;font-size:11px}}
@media (max-width:950px) and (orientation:landscape) and (max-height:600px){.qira-play-selector-hero .qira-play-cta{margin-top:5px;min-height:27px;padding:0 9px;font-size:9px;border-radius:8px}}

/* QIRA SELECTOR ROUND 3 OWNER CORRECTIONS
   Only selector artwork sizing and the two hero-right images change.
   Shared shell geometry, Home, headers, navigation, passes and routes remain untouched. */

/* QiRa Check: replace the previous chart drawing with the owner-provided Check icon. */
.qira-check-selector-hero .qira-check-progress{
  display:grid;
  place-items:center;
  padding:clamp(12px,1.7vw,26px);
}
.qira-check-selector-hero .qira-check-result-icon{
  width:min(92%,330px);
  height:min(92%,300px);
  object-fit:contain;
  filter:drop-shadow(0 18px 18px rgba(72,48,145,.18));
}

/* QiRa Play: one owner-provided controller only on the right. */
.qira-play-selector-hero .qira-play-showcase{
  display:grid;
  place-items:center;
  padding:clamp(10px,1.5vw,22px);
}
.qira-play-selector-hero .qira-play-burst-owner{
  width:100%;
  height:100%;
  max-width:none;
  border:0;
  border-radius:0;
  background:none;
  box-shadow:none;
  display:grid;
  place-items:center;
}
.qira-play-selector-hero .qira-play-showcase-icon{
  width:min(96%,350px);
  height:min(92%,280px);
  object-fit:contain;
  filter:drop-shadow(0 18px 18px rgba(72,48,145,.20));
}
.qira-play-selector-hero .qira-play-burst-owner:before,
.qira-play-selector-hero .qira-play-burst-owner:after{display:none!important}

/* Match QiRa Check cards exactly for visible icon scale, text size and position. */
.qira-play-game-card .qira-play-game-art{
  left:14px!important;
  right:14px!important;
  top:30px!important;
  width:auto!important;
  height:52%!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:center!important;
}
.qira-play-game-card .qira-play-game-art img{
  width:auto!important;
  height:100%!important;
  max-width:82%!important;
  object-fit:contain!important;
  object-position:center center!important;
  filter:drop-shadow(0 12px 10px rgba(29,24,60,.22));
}
.qira-play-game-card .qira-card-copy{
  left:16px!important;
  right:48px!important;
  bottom:21px!important;
}
.qira-play-game-card .qira-card-copy strong{
  font-size:clamp(19px,1.5vw,27px)!important;
  line-height:1.05!important;
}
.qira-play-game-card .qira-card-arrow{
  right:12px!important;
  bottom:13px!important;
  width:39px!important;
  height:39px!important;
}

@media (min-width:901px) and (max-height:950px){
  .qira-play-game-card .qira-play-game-art{top:24px!important;height:54%!important}
  .qira-play-game-card .qira-card-copy{left:13px!important;bottom:18px!important}
  .qira-play-game-card .qira-card-copy strong{font-size:19px!important}
  .qira-play-game-card .qira-card-arrow{width:35px!important;height:35px!important;right:9px!important;bottom:10px!important}
  .qira-play-selector-hero .qira-play-showcase-icon{width:min(96%,300px);height:min(92%,245px)}
  .qira-check-selector-hero .qira-check-result-icon{width:min(92%,285px);height:min(90%,235px)}
}

@media (max-width:900px){
  .qira-play-selector-hero .qira-play-showcase{display:none}
  .qira-play-game-card .qira-play-game-art{width:125px!important;height:122px!important;left:10px!important;right:auto!important;top:7px!important}
  .qira-play-game-card .qira-card-copy{left:145px!important;right:68px!important;bottom:50%!important;transform:translateY(50%)}
  .qira-play-game-card .qira-card-copy strong{font-size:27px!important}
  .qira-play-game-card .qira-card-arrow{right:18px!important;bottom:50%!important;transform:translateY(50%)!important;width:48px!important;height:48px!important;font-size:25px!important}
}

@media (max-width:520px){
  .qira-play-game-card .qira-play-game-art{width:108px!important;height:108px!important}
  .qira-play-game-card .qira-card-copy{left:125px!important}
  .qira-play-game-card .qira-card-copy strong{font-size:23px!important}
  .qira-play-game-card .qira-card-arrow{width:43px!important;height:43px!important;right:14px!important}
}

@media (max-width:950px) and (orientation:landscape) and (max-height:600px){
  .qira-play-selector-hero .qira-play-showcase{display:grid}
  .qira-play-selector-hero .qira-play-showcase-icon{width:min(98%,145px);height:min(94%,145px)}
  .qira-check-selector-hero .qira-check-result-icon{width:min(98%,145px);height:min(94%,145px)}
  .qira-play-game-card .qira-play-game-art{width:auto!important;height:60%!important;left:7px!important;right:7px!important;top:10px!important}
  .qira-play-game-card .qira-card-copy{left:8px!important;right:33px!important;bottom:8px!important;transform:none!important}
  .qira-play-game-card .qira-card-copy strong{font-size:14px!important}
  .qira-play-game-card .qira-card-arrow{width:27px!important;height:27px!important;right:7px!important;bottom:7px!important;transform:none!important;font-size:15px!important}
}

/* OWNER ROUND 6: desktop card icon centering + size standardization for QiRa Check and QiRa Play */
@media (min-width: 901px) {
  .qira-year-card .qira-year-art,
  .qira-play-game-card .qira-play-game-art {
    top: 34px !important;
    height: 50% !important;
    left: 14px !important;
    right: 14px !important;
    width: auto !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: center !important;
  }

  .qira-year-card .qira-year-art img,
  .qira-play-game-card .qira-play-game-art img {
    width: auto !important;
    height: 100% !important;
    max-width: 84% !important;
    object-fit: contain !important;
    object-position: center center !important;
  }

  .qira-play-game-card[data-game="bingo"] .qira-play-game-art img {
    max-width: 92% !important;
    height: 108% !important;
  }
}

@media (min-width: 901px) and (max-height: 950px) {
  .qira-year-card .qira-year-art,
  .qira-play-game-card .qira-play-game-art {
    top: 28px !important;
    height: 52% !important;
  }
}

/* QIRA ROUND 7: subtle hover/tap pop animation only.
   Kept here as well because the locked shell stylesheet loads after base styles. */
:where(button, [role="button"], a.btn):not(:disabled) {
  transform-origin: center;
  transition:
    transform 160ms cubic-bezier(.2,.8,.2,1),
    box-shadow 160ms ease,
    filter 160ms ease;
  will-change: transform;
}

@media (hover:hover) and (pointer:fine) {
  :where(button, [role="button"], a.btn):not(:disabled):hover {
    transform: translateY(-3px) scale(1.02);
    filter: brightness(1.015);
    box-shadow: 0 12px 24px rgba(45,35,82,.16);
  }
}

:where(button, [role="button"], a.btn):not(:disabled):active {
  transform: translateY(0) scale(.98);
  transition-duration: 80ms;
}

@media (prefers-reduced-motion:reduce) {
  :where(button, [role="button"], a.btn) {
    transition: none !important;
    transform: none !important;
  }
}
