/* QIRA V4 — locked visual language, refined shared component layer. */
:root{--evergreen:#17483B;--sage:#4E956D;--soft-sage:#A9CFB5;--brass:#C5A44E;--green-beige:#E8E2C8;--g:#17483B;--gold:#C5A44E;--ivory:#FBFAF4;--paper:#FFFDF7;--muted:#587269;--line:#dfe5d8;--radius-sm:12px;--radius-md:18px;--radius-lg:24px;--side:204px;--ease:cubic-bezier(.22,.72,.2,1)}
html{color-scheme:light;scroll-padding-top:100px}body{font-kerning:normal;-webkit-font-smoothing:antialiased}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{color:inherit}.ico{width:24px;height:24px;stroke-width:1.8;overflow:visible}a:focus-visible,button:focus-visible{outline:3px solid var(--brass);outline-offset:4px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:#4E956D}.q-card,.tonight-card,.stat-grid article{box-shadow:0 4px 14px #17483B04}.q-btn{min-height:54px;border-radius:17px;font-size:.91rem;letter-spacing:-.015em;font-weight:750;background:linear-gradient(115deg,#24634c,#17483B);box-shadow:0 5px 12px #17483B14;transition:background .18s,box-shadow .2s,transform .18s}.q-btn.outline{border-color:#d8d5be;background:#fffdf7c9}.q-btn.gold{background:linear-gradient(110deg,#f2df9d,#e6c773);color:#17483B}.q-btn .ico{width:21px;height:21px}.q-btn.sm{min-height:44px;font-size:.78rem}.q-icon-btn{border-radius:13px;min-width:44px;min-height:44px}.q-round{background:#e5efdf;color:var(--g)}.q-round.gold{background:#f7efd5;color:#856823}.q-chip{font-size:.73rem;line-height:1.35;padding:5px 10px;white-space:normal;max-width:100%;text-align:center}.q-chip.gold{color:#745617}.q-chip.gray{color:#526457}.q-link{min-height:44px;font-size:.82rem;line-height:1.4}.q-card-head .q-link{font-size:.75rem}.q-demo{font-size:.69rem;letter-spacing:.02em;color:#65796e}.q-search{min-height:50px;background:#f5f6ed}.q-search input{font-size:.88rem}.q-input{min-height:54px;border-color:#ccd8cc}.q-field>label{font-size:.9rem}.q-notice{font-size:.82rem}.q-progress{height:7px}.q-progress-row small{font-size:.75rem}.q-tabs{gap:6px}.q-tabs button{min-height:44px;font-size:.79rem;white-space:normal;padding:9px 12px;color:#4c655a}.q-tabs button.active{background:#17483B}.q-tabs .ico{width:18px;height:18px}.q-quantity .q-icon-btn{width:44px;height:44px;min-width:44px;min-height:44px}.eyebrow{display:inline-flex;gap:9px;align-items:center;font-family:var(--sans);font-weight:750;font-size:.69rem;letter-spacing:.16em;text-transform:uppercase}.eyebrow:before{content:'';height:5px;width:5px;border-radius:50%;background:var(--brass)}.v4-muted-action{background:none;border:0;font-size:.78rem;color:var(--muted);padding:10px;min-height:44px}
/* Family layout follows the approved 01–20 references. */
.family-mode .q-page{padding:20px 20px calc(116px + env(safe-area-inset-bottom));min-height:100svh}.family-mode .screen-home{padding-top:12px}.q-header{min-height:56px;gap:7px;margin-bottom:12px}.q-header .brand{width:137px;height:47px}.q-header>.q-icon-btn{margin-left:-6px}.q-header .end{gap:0}.q-header .profile-link{width:36px;height:36px;margin:0 0 0 4px}.q-header .profile-link .ico{width:21px;height:21px}.q-greeting{margin:7px 0 18px;min-height:86px;padding:5px 0 0}.q-greeting h1{font-size:1.38rem;line-height:1.1}.q-greeting h1 strong{font-size:2.02rem;max-width:76%;margin-top:3px}.q-greeting p{font-size:.79rem;font-weight:650;margin-top:8px}.q-greeting img{width:169px;height:141px;right:-20px;bottom:-21px;opacity:.72;mask-image:linear-gradient(90deg,transparent,#000 45%),linear-gradient(transparent,#000 25%,#000 70%,transparent)}.q-title h1{font-size:2.05rem;line-height:1.04;margin:0 0 9px}.q-title p{font-size:.91rem;line-height:1.55}.q-title{margin:7px 0 21px}.app-nav{height:calc(78px + env(safe-area-inset-bottom));padding:6px 9px calc(5px + env(safe-area-inset-bottom));border-top:1px solid #dfe4d5;background:#fffef8f5;box-shadow:0 -5px 22px #17483B07}.app-nav a{font-size:.76rem;gap:4px;padding:7px 3px 12px;line-height:1.2;border-radius:15px;color:#657c72}.app-nav a.active{background:#e9f0e16b;color:#17483B}.app-nav a.active:after{bottom:3px;width:29px;height:3px}.app-nav .ico{width:24px;height:24px}.app-nav a[data-page=home].active .ico{fill:none;stroke:var(--g);stroke-width:2.1}.app-nav a.active .ico{stroke-width:2.1}
.night-card{border-radius:24px;background:#073a3d;isolation:isolate;border:1px solid #23564c;position:relative;overflow:hidden;margin-top:0}.night-card .night-copy{position:absolute;left:0;top:0;width:100%;z-index:3;padding:18px 18px 0;background:linear-gradient(#073a3dbb,transparent);pointer-events:none}.night-card .night-copy h2{font-size:1.97rem;margin:0 0 6px;line-height:1.06;color:#fffbea}.night-card .night-copy p{font-size:.86rem;color:#f0f2df;margin:0}.night-card .night-copy small{font-size:.78rem;line-height:1.5;color:#e7edd9;display:block;margin-top:4px}.night-image{height:264px!important;width:100%;overflow:hidden;position:relative}.night-image img{height:100%;width:100%;object-fit:cover;object-position:center 60%;transition:filter 1s,transform 1s;filter:brightness(.85) saturate(.94)}.night-card.checked .night-image img{filter:brightness(1.08) saturate(1.04);transform:scale(1.015)}.night-card .night-image:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#063a3fdd 0%,#063a3f70 25%,transparent 55%,#083e3377)}.night-card .checkin-btn{position:relative;z-index:4;width:calc(100% - 22px);margin:-3px 11px 11px;min-height:56px;border-radius:17px;border:1px solid #ebd991;box-shadow:0 4px 16px #082e2f24;font-size:.82rem;font-family:var(--sans);font-weight:800;gap:7px;color:#17483B;background:linear-gradient(110deg,#f2dd95,#f6e7b5);padding:12px 9px}.night-card .checkin-btn .ico{width:20px;height:20px}.night-card.checked .checkin-btn{background:#e6efdd;border-color:#d4e3c7}.night-card.checked .night-copy h2{font-size:1.85rem}.night-card.checkin-celebrate .checkin-glow{opacity:1;animation:checkinHalo 1.2s ease-out both;pointer-events:none}.stat-grid{gap:9px;margin-top:11px}.stat-grid article{padding:13px 7px 11px;border-radius:18px;min-height:113px}.stat-grid article .ico{width:25px;height:25px;margin:0 auto 6px}.stat-grid article strong{font-family:var(--sans);font-size:1.66rem;font-weight:800;line-height:1.1;margin-bottom:6px;font-variant-numeric:tabular-nums}.stat-grid article span{font-size:.78rem;line-height:1.4}.stat-grid article:last-child .ico{color:var(--brass)}.stat-grid a:last-child article .ico{color:var(--g)}.tonight-card{border-radius:21px;padding:17px 15px}.tonight-card h2{font-size:1.56rem;margin-bottom:8px}.tonight-card a{min-height:56px;gap:10px;font-size:.85rem;padding:8px 0}.tonight-card a>span:not(.q-round){flex:1}.tonight-card .q-round{width:36px;height:36px}.tonight-card .q-round .ico{width:20px;height:20px}.tonight-card .activity-state{font-size:.68rem;color:var(--muted);display:block;margin-top:2px}.tonight-card a.done{color:#2a6d4d}.tonight-card a>svg{width:19px;height:19px}.mini-community{position:relative;overflow:hidden;background:linear-gradient(130deg,#0f4a3f,#093c36);color:#eef2df;border:1px solid #245f4b;padding:18px;border-radius:22px;margin-top:16px;isolation:isolate;min-height:182px}.mini-community:before{content:'';position:absolute;inset:0;background:url('../assets/images/qira_skyline_night.webp') center/cover;opacity:.18;z-index:-1}.mini-community h3{color:#faf3dc;font-size:1.52rem;margin:0}.mini-community .q-link{color:#f3df9a;white-space:nowrap}.mini-community .q-map{width:55%;height:99px;position:absolute;right:6px;bottom:10px;opacity:.9}.mini-community .map-label,.mini-community .sea-label{display:none}.mini-community .q-map .light{filter:none}.mini-community .q-map .land{fill:#8eb49d35}.mini-community .community-number{margin-top:12px;font-size:1.65rem;font-weight:750;font-family:var(--sans);line-height:1.1}.mini-community .community-number small{font-size:.7rem;display:block;font-weight:500;color:#c8d9c8;margin-top:7px}.mini-community .q-demo{font-size:.64rem;color:#c2d2c0;margin-top:11px}.family-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:16px}.family-foot .q-demo{font-size:.66rem}.family-foot a{font-size:.74rem;color:var(--muted);min-height:44px;display:inline-flex;align-items:center;gap:5px}
/* Less simultaneous information; modules, settings and actions remain available. */
.collection-item{border-radius:19px;padding:12px;gap:12px}.collection-item img{width:76px;height:96px;object-fit:cover;object-position:center;border-radius:13px}.collection-item h3{font-size:1.38rem;line-height:1.14}.collection-item .q-chip{font-size:.68rem;padding:4px 8px;margin:2px 0 5px}.collection-item .ico{width:18px}.collection-item .q-progress-row{margin-top:6px}.collection-list{gap:10px}.program-hero{border-radius:22px;min-height:210px}.program-hero .copy{padding:22px 19px}.program-hero .copy h1{font-size:2.05rem}.program-progress h2{font-size:1.65rem}.lesson-item{min-height:65px;padding:12px 0}.lesson-item small{font-size:.74rem}.v4-module-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}.v4-module-head p{margin:0;font-size:.78rem;color:var(--muted)}.v4-module-head .q-chip{font-size:.68rem}.module-more{margin-top:13px}.badge-card{border-radius:20px;padding:14px 10px}.badge-card h3{font-size:1.23rem;line-height:1.2}.badge-card p{font-size:.76rem}.badge-card.locked img{opacity:.73;filter:saturate(.28)}.badge-feature{animation:badgeAppear .48s var(--ease) both}.journey-scene{border-radius:22px;margin:16px 0 0}.journey-node b{font-size:.73rem;line-height:1.35;padding:7px 8px}.journey-node.current span{box-shadow:0 0 0 6px #d5b7552a,0 0 20px #e7cb74a6}.q-activity{min-height:104px;gap:12px;border-radius:20px;padding:20px 15px}.q-activity .number{font-size:.7rem}.q-activity h3{font-size:1.54rem}.q-activity p{font-size:.82rem}.q-activity.complete{background:#f0f5e9;border-color:#d7e4ce}.q-activity .done-check{width:28px;height:28px}.settings-group{margin-top:21px}.settings-group h3.group-label{font-family:var(--sans);font-size:.72rem;font-weight:750;text-transform:uppercase;letter-spacing:.12em;color:#5e7568;margin:0 0 10px 4px}.settings-group .settings-list{gap:0;border:1px solid var(--line);border-radius:20px;background:var(--paper);overflow:hidden}.settings-group .settings-item{border:0;border-radius:0;border-bottom:1px solid #e7eadd;padding:14px;gap:12px;min-height:72px;box-shadow:none;background:none}.settings-group .settings-item:last-child{border-bottom:0}.settings-item .q-round{width:42px;height:42px}.settings-item h3{font-size:1.26rem;line-height:1.2}.settings-item p{font-size:.78rem;line-height:1.45}.settings-item>svg{width:18px}.profile-summary{gap:14px;padding:20px 17px}.profile-summary h2{font-size:1.77rem}.profile-summary .family-avatar{width:105px}.profile-summary p{font-size:.8rem;margin:10px 0 0}.profile-summary .mt{margin-top:10px}.q-quote p{font-size:1.43rem;line-height:1.24}.q-quote small{font-size:.77rem}.welcome-actions .btn-primary,.screen-onboard .btn-primary{font-family:var(--sans);font-size:1rem;min-height:56px;box-shadow:0 6px 16px #17483B15}.btn-primary span{font-size:inherit;font-weight:inherit}.welcome-actions .ico{width:23px;height:23px}.welcome-actions .btn-primary:hover span{transform:none}.country .chev:before,.line-icon:before,.line-icon:after,.round-icon:before,.round-icon:after{content:none!important}.line-icon{border:0!important}.otp-grid input:focus{outline:3px solid #c5a44e77;outline-offset:2px}
/* Dialog transitions, real sticky footer, generous targets. */
#dialog{box-shadow:0 28px 100px #052d3650;border:1px solid #dce4d4}#dialog::backdrop{background:#062d2b65;backdrop-filter:blur(3px)}#dialog[open]{animation:dialogEnter .25s var(--ease) both}#dialog .dialog-head{border-bottom:1px solid var(--line);padding:17px 20px;background:#fffef8}#dialog .dialog-head h2{font-size:1.7rem}#dialog .dialog-body{padding:21px;overscroll-behavior:contain}#dialog .dialog-foot{position:sticky;bottom:-21px;margin:20px -21px -21px;padding:14px 21px;background:#fffef8f5;border-top:1px solid var(--line);backdrop-filter:blur(14px);z-index:5}#dialog.drawer .q-pairs{font-size:.85rem;line-height:1.5}html.dialog-open{overflow:hidden}#dialog.drawer .dialog-body{padding-bottom:24px}.toast{font-size:.85rem;border:1px solid #dce5d1;box-shadow:0 12px 35px #103d3320;max-width:calc(100vw - 28px)}.toast .ico{width:20px;height:20px}.toasts{z-index:12000}.q-empty img{width:146px;height:140px;border-radius:28px;box-shadow:0 10px 30px #143d3410}.q-empty h2{font-size:1.62rem}.q-empty p{font-size:.87rem;max-width:31ch;margin-left:auto;margin-right:auto}.q-empty{padding:26px 14px}.q-skeleton{background:linear-gradient(110deg,#e9eddf 25%,#f7f8f0 40%,#e9eddf 55%);background-size:220% 100%}
/* Operational rhythm: same cockpit, less cramped metadata. */
.ops-main{padding:27px 26px 32px;background:#fffdf7}.ops-main:before{opacity:.42;height:175px}.ops-header{min-height:69px;margin-bottom:22px;gap:20px}.ops-header h1{font-size:2.45rem}.ops-header .sub{font-size:.79rem;color:#587266}.ops-header .q-search{min-height:46px}.ops-header .q-search input{font-size:.78rem}.ops-account{min-height:52px;border-radius:16px}.ops-account b{font-size:.77rem}.ops-account small{font-size:.7rem}.ops-sidebar .brand{width:146px;height:63px;margin:0 auto 28px}.ops-sidebar nav>a,.ops-sidebar .more-button{min-height:50px;font-size:.87rem}.ops-sidebar:after{opacity:.7}.ops-sidebar .subnav a{min-height:42px;font-size:.79rem}.ops-sidebar .sidebar-foot p{font-size:1.2rem}.ops-stats{gap:13px}.ops-stat{min-height:125px;padding:18px 16px;gap:13px;background:#fffefa;border-radius:19px;box-shadow:0 5px 16px #17483B03}.ops-stat h3{font-family:var(--sans);font-size:.82rem;line-height:1.4;font-weight:650}.ops-stat strong{font-family:var(--sans);font-size:2.03rem;line-height:1.12;letter-spacing:-.055em;font-weight:800;font-variant-numeric:tabular-nums}.ops-stat p{font-size:.7rem;line-height:1.45;margin-top:8px;color:#60766a}.ops-stat .q-round{height:45px;width:45px}.ops-stat .q-round .ico{width:24px;height:24px}.ops-main .q-card{border-radius:20px;padding:18px}.ops-main .q-btn{min-height:44px;font-size:.8rem}.ops-main .q-btn.sm{min-height:40px;font-size:.76rem}.ops-main .q-icon-btn{width:40px;height:40px;min-width:40px;min-height:40px}.ops-main .q-link{font-size:.76rem}.ops-main .q-search{min-height:46px}.ops-main .q-input{min-height:46px;font-size:.85rem}.ops-main .q-chip{font-size:.72rem}.ops-main .q-tabs button{min-height:44px;font-size:.78rem}.ops-main .q-card-head h3{font-size:1.54rem}.ops-main .q-card-head .ico{width:23px;height:23px}.ops-main table{font-size:.8rem}.ops-main th{font-family:var(--sans);font-weight:750;font-size:.72rem;line-height:1.35;color:#4e675a;background:#f3f5e9}.ops-main td{padding-top:13px;padding-bottom:13px;line-height:1.5}.ops-main tbody tr:hover{background:#f0f4e785}.ops-main td small{font-size:.71rem;color:#657a6c}.ops-main .q-avatar{width:37px;height:37px}.ops-main .q-card-head{margin-bottom:13px}.ops-map-card{min-height:365px}.ops-map-card:before{opacity:.3}.ops-map-card .map-label{font-size:12px;fill:#d0debc}.ops-map-card .sea-label{fill:#afc5b49e}.ops-map-card .q-map{filter:drop-shadow(0 5px 14px #072e3255)}.ops-map-card .q-map .light{filter:none}.ops-footer{font-size:.7rem}.ops-mobile-nav a,.ops-mobile-nav button{min-height:65px}.attention-row strong{font-family:var(--sans);font-size:.85rem}.attention-row small{font-size:.73rem}.attention-row.gold strong{color:#775a22}.attention-row .ico{width:21px;height:21px}.fac-priority{background:linear-gradient(110deg,#f1f5e9,#fff8e3);border-color:#dae3c8}.live-board .live-clock{font-variant-numeric:tabular-nums}.live-mode .q-map .light{filter:none}.live-mode .live-scene:before{opacity:.5}
/* Controlled motion, viewport reveal, and always-visible content without JS. */
.scroll-reveal{opacity:1;transform:none;animation:none}.motion-ready .reveal:not(.seen),.motion-ready .scroll-reveal:not(.seen){opacity:0;transform:translateY(16px)}.motion-ready .reveal,.motion-ready .scroll-reveal{transition:opacity .58s var(--ease),transform .58s var(--ease);transition-delay:var(--delay,0ms)}.motion-ready .reveal.seen,.motion-ready .scroll-reveal.seen{opacity:1;transform:none}.q-screen-in{animation:screenFade .28s var(--ease) both}.text-reveal{animation:textIn .54s var(--ease) both}.preloader-logo{width:min(360px,68vw)}.preloader-core p{font-size:.77rem;letter-spacing:.13em}.preloader-core small{color:#c8d9bd;font-size:.72rem}.preloader-orbit{opacity:.7}.preloader .gold-line{height:2px;width:200px;background:linear-gradient(90deg,transparent,#c5a44e,#f8e9b1,#c5a44e,transparent);animation:lightSweep 1.6s ease-in-out infinite}.ambient-glow{animation-duration:24s!important}.ambient-branch{animation-duration:22s!important}.preloader.done *{animation-play-state:paused!important}.motion-off *,.motion-off *:before,.motion-off *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-off .reveal,.motion-off .scroll-reveal{opacity:1!important;transform:none!important}.tabular{font-variant-numeric:tabular-nums}
@keyframes dialogEnter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes badgeAppear{from{opacity:0;transform:translateY(8px) scale(.95)}to{opacity:1;transform:none}}@keyframes checkinHalo{0%{opacity:.7;transform:scale(.8)}100%{opacity:0;transform:scale(1.3)}}@keyframes screenFade{from{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:none}}
/* In-app desktop stays a mobile-width shell; public landing is a separate route. */
@media(min-width:760px){.family-mode .app-shell{margin:22px auto;max-width:520px;border:5px solid #fffef8;border-radius:30px}.family-mode .q-page{min-height:calc(100svh - 44px)}.family-mode .app-nav{width:510px;border-radius:21px 21px 0 0;bottom:0}.family-mode .night-image{height:283px!important}.family-mode .q-header .brand{width:152px}.q-greeting h1 strong{font-size:2.2rem}.family-mode .night-card .night-copy h2{font-size:2.12rem}.family-mode .night-card .checkin-btn{font-size:.92rem}}
@media(min-width:1160px){.family-mode .desktop-note{width:224px;padding:22px;left:calc(50% + 304px);border-radius:24px;gap:12px}.desktop-note .eyebrow{font-size:.56rem;letter-spacing:.1em}.desktop-note h2{font-size:1.95rem}.desktop-note>small{font-size:.67rem;line-height:1.5;color:var(--muted)}.desktop-note .q-link{font-size:.79rem}.desktop-note>img{width:38px;height:42px}}
@media(max-width:1190px) and (min-width:901px){:root{--side:180px}.ops-main{padding:23px 19px}.ops-header .q-search{width:205px}.ops-stat{padding:15px 12px;gap:9px}.ops-stat strong{font-size:1.78rem}.ops-stat .q-round{width:39px;height:39px}.ops-stat h3{font-size:.77rem}.ops-header h1{font-size:2.04rem}}
@media(max-width:900px){.ops-main{padding:19px 18px 103px}.ops-header h1{font-size:2rem}.ops-stat strong{font-size:1.85rem}.ops-stats{gap:10px}.ops-stat{min-height:112px;padding:15px}.ops-command-grid{grid-template-columns:1fr}.ops-main .q-card{padding:16px}.ops-main .ops-header .q-search{display:none}#dialog.drawer{width:min(590px,100vw)}.ops-main .v4-responsive-table{overflow:visible!important}.v4-responsive-table table,.v4-responsive-table tbody{display:block;width:100%;min-width:0!important}.v4-responsive-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.v4-responsive-table tbody{display:grid;grid-template-columns:1fr;gap:10px}.v4-responsive-table tr{display:grid;grid-template-columns:1fr 1fr;gap:11px 14px;border:1px solid #dfe6d5;border-radius:17px;padding:15px;margin:0!important;background:#fffef9}.v4-responsive-table td{padding:0!important;border:0!important;min-width:0;overflow-wrap:anywhere;font-size:.82rem}.v4-responsive-table td:before{content:attr(data-label);display:block;font-family:var(--sans);font-size:.67rem;font-weight:750;color:#64796c;margin-bottom:5px;line-height:1.3}.v4-responsive-table td.v4-card-title{grid-column:1/-1;padding-bottom:8px!important;border-bottom:1px solid #e6e9db!important;font-size:.95rem}.v4-responsive-table td.v4-card-title:before{display:none}.v4-responsive-table td.v4-row-actions{grid-column:1/-1;display:flex;justify-content:flex-end;align-items:center;gap:8px;padding-top:7px!important;border-top:1px solid #e6e9db!important}.v4-responsive-table td.v4-row-actions:before{margin:0 auto 0 0}.v4-responsive-table .q-btn.sm{min-height:42px}.v4-responsive-table td.v4-check-column{display:none}.ops-main .v4-responsive-table tbody:empty{display:block}.v4-responsive-table tr:has(td[colspan]){display:block}.v4-responsive-table td[colspan]:before{display:none}}
@media(max-width:600px){#dialog{border-radius:25px 25px 0 0;width:100%;max-width:100%;margin:auto 0 0;max-height:94svh}#dialog .dialog-body{padding:20px 18px calc(21px + env(safe-area-inset-bottom))}#dialog .dialog-foot{bottom:calc(-21px - env(safe-area-inset-bottom));margin:20px -18px calc(-21px - env(safe-area-inset-bottom));padding:13px 18px calc(13px + env(safe-area-inset-bottom))}.ops-main .ops-header h1{font-size:1.82rem}.ops-main .ops-header{gap:9px}.ops-stat strong{font-size:1.6rem;white-space:normal}.ops-stat p{font-size:.71rem}.ops-header .ops-account div{display:none}.ops-account{padding:6px}.ops-stats .q-round{width:38px;height:38px}.ops-stat{gap:8px;padding:14px 11px}.ops-stat h3{font-size:.79rem}.ops-main .q-card-head h3{font-size:1.46rem}.ops-mobile-nav{padding-bottom:env(safe-area-inset-bottom)}.q-activity .number{left:7px;top:7px}.family-mode .q-card-head{gap:8px}.q-card-head .q-link{white-space:normal;text-align:right}}
@media(max-width:380px){.family-mode .q-page{padding-left:16px;padding-right:16px}.q-header{gap:2px}.q-header .brand{width:124px}.q-header .end .q-icon-btn{width:40px;min-width:40px}.q-greeting h1 strong{font-size:1.9rem}.q-greeting img{width:155px}.night-card .night-copy h2{font-size:1.76rem!important}.night-card .checkin-btn{font-size:.78rem;gap:6px}.night-card .night-image{height:252px!important}.stat-grid article span{font-size:.73rem}.q-tabs button{padding:9px;font-size:.75rem}.settings-item h3{font-size:1.16rem}.profile-summary .family-avatar{width:86px}.profile-summary h2{font-size:1.6rem}.settings-item .q-round{width:37px;height:37px}.q-activity{gap:10px}.q-activity .q-round{width:40px;height:40px}}
.large-text .family-mode .q-header .brand{width:120px}.large-text .family-mode .q-greeting{min-height:103px}.large-text .family-mode .q-greeting h1 strong{font-size:2.07rem}.large-text .night-card .night-copy{position:relative;background:#083c3c;padding-bottom:6px}.large-text .night-image{height:210px!important}.large-text .stat-grid article{min-height:126px}.large-text .app-nav{height:calc(87px + env(safe-area-inset-bottom))}.large-text .q-tabs button{white-space:normal}.large-text .q-card-head{flex-wrap:wrap}.large-text .settings-item{flex-wrap:wrap}.large-text .settings-item>.q-tabs{flex-basis:100%}.high-contrast .q-chip,.high-contrast .q-demo,.high-contrast .muted,.high-contrast small{color:#224b3c}.high-contrast .q-card,.high-contrast .tonight-card,.high-contrast .settings-item,.high-contrast .stat-grid article{border-color:#557461}.high-contrast .night-card p,.high-contrast .night-card small,.high-contrast .mini-community small{color:#fff8e3}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal,.scroll-reveal{opacity:1!important;transform:none!important}}
.v4-duta-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important}.v4-duta-stats strong{font-family:var(--sans);font-size:1.45rem;font-weight:800;letter-spacing:-.03em}.v4-duta-stats small{font-size:.7rem}.fac-priority .between{align-items:center}.fac-priority .eyebrow{font-size:.6rem}.family-mode .profile-summary .eyebrow{font-size:.55rem;margin-bottom:9px}.v4-responsive-table td.hide-mobile{display:table-cell}
@media(max-width:900px){.v4-responsive-table td.hide-mobile{display:block!important}.v4-responsive-table td .secondary{font-size:.74rem}.v4-responsive-table .table-actions{justify-content:flex-end}}
@media(max-width:600px){.fac-priority .between{flex-wrap:wrap}.fac-priority .q-btn{width:100%}.v4-duta-stats strong{font-size:1.3rem}.v4-duta-stats small{font-size:.66rem}.family-mode .settings-group .settings-item>.grow{min-width:0}.family-mode .settings-group .settings-item h3{overflow-wrap:anywhere}}
.profile-summary h1{font-size:1.8rem;line-height:1.1;margin:8px 0 7px}
.map-widget .q-btn.outline{background:#0b4436;color:#f2dfa3;border-color:#8c8553}
/* A transient route reveal must not create a sideways scrollbar. */
.ops-mode #root,.fac-mode #root{overflow-x:clip}
@media(max-width:600px){
 .ops-main .q-tabs{flex-wrap:wrap;overflow:visible}
 .ops-main .q-tabs button{flex:1 1 42%;min-width:0;min-height:44px}
 .pipeline{overflow:visible;align-items:flex-start;gap:2px}
 .pipeline button{min-width:0;flex:1;padding:5px 0}
 .pipeline>.ico{width:10px;margin-top:17px}
 .pipeline span.label{font-family:var(--sans);font-size:.64rem;line-height:1.4;max-width:58px}
}
.ops-map-card .q-btn.outline{background:#0b4436;color:#f2dfa3;border-color:#9a925e}
.ops-map-card .q-btn.outline:hover{background:#245a44;color:#fff1c1}
/* The larger-type selector has its own row, with two full touch targets. */
.large-text .settings-item .q-tabs{margin-left:0;flex-direction:row;max-width:100%;width:100%;flex-basis:100%}
.settings-item .q-tabs button{min-height:44px}
.large-text .settings-item .q-tabs button{flex:1;min-width:0}
