:root{--ion-color-primary:#0054e9;--ion-color-primary-rgb:0, 84, 233;--ion-color-primary-contrast:#fff;--ion-color-primary-contrast-rgb:255, 255, 255;--ion-color-primary-shade:#004acd;--ion-color-primary-tint:#1a65eb;--ion-color-secondary:#0163aa;--ion-color-secondary-rgb:1, 99, 170;--ion-color-secondary-contrast:#fff;--ion-color-secondary-contrast-rgb:255, 255, 255;--ion-color-secondary-shade:#015796;--ion-color-secondary-tint:#1a73b3;--ion-color-tertiary:#6030ff;--ion-color-tertiary-rgb:96, 48, 255;--ion-color-tertiary-contrast:#fff;--ion-color-tertiary-contrast-rgb:255, 255, 255;--ion-color-tertiary-shade:#542ae0;--ion-color-tertiary-tint:#7045ff;--ion-color-success:#2dd55b;--ion-color-success-rgb:45, 213, 91;--ion-color-success-contrast:#000;--ion-color-success-contrast-rgb:0, 0, 0;--ion-color-success-shade:#28bb50;--ion-color-success-tint:#42d96b;--ion-color-warning:#ffc409;--ion-color-warning-rgb:255, 196, 9;--ion-color-warning-contrast:#000;--ion-color-warning-contrast-rgb:0, 0, 0;--ion-color-warning-shade:#e0ac08;--ion-color-warning-tint:#ffca22;--ion-color-danger:#c5000f;--ion-color-danger-rgb:197, 0, 15;--ion-color-danger-contrast:#fff;--ion-color-danger-contrast-rgb:255, 255, 255;--ion-color-danger-shade:#ad000d;--ion-color-danger-tint:#cb1a27;--ion-color-light:#f4f5f8;--ion-color-light-rgb:244, 245, 248;--ion-color-light-contrast:#000;--ion-color-light-contrast-rgb:0, 0, 0;--ion-color-light-shade:#d7d8da;--ion-color-light-tint:#f5f6f9;--ion-color-medium:#636469;--ion-color-medium-rgb:99, 100, 105;--ion-color-medium-contrast:#fff;--ion-color-medium-contrast-rgb:255, 255, 255;--ion-color-medium-shade:#57585c;--ion-color-medium-tint:#737478;--ion-color-dark:#222428;--ion-color-dark-rgb:34, 36, 40;--ion-color-dark-contrast:#fff;--ion-color-dark-contrast-rgb:255, 255, 255;--ion-color-dark-shade:#1e2023;--ion-color-dark-tint:#383a3e}html.ios{--ion-default-font:-apple-system, BlinkMacSystemFont, "Helvetica Neue", "Roboto", sans-serif}html.md{--ion-default-font:"Roboto", "Helvetica Neue", sans-serif}html{--ion-dynamic-font:-apple-system-body;--ion-font-family:var(--ion-default-font)}body{background:var(--ion-background-color);color:var(--ion-text-color)}body.backdrop-no-scroll{overflow:hidden}html.ios ion-modal.modal-card ion-header ion-toolbar:first-of-type,html.ios ion-modal.modal-sheet ion-header ion-toolbar:first-of-type,html.ios ion-modal ion-footer ion-toolbar:first-of-type,html.ios ion-footer.modal-footer-moving ion-toolbar:first-of-type{padding-top:6px}html.ios ion-modal.modal-card ion-header ion-toolbar:last-of-type,html.ios ion-modal.modal-sheet ion-header ion-toolbar:last-of-type{padding-bottom:6px}html.ios ion-modal ion-toolbar,html.ios .modal-footer-moving ion-toolbar{padding-right:calc(var(--ion-safe-area-right) + 8px);padding-left:calc(var(--ion-safe-area-left) + 8px)}@media screen and (width>=768px){html.ios ion-modal.modal-card:first-of-type{--backdrop-opacity:.18}}ion-modal.modal-default.show-modal~ion-modal.modal-default{--backdrop-opacity:0;--box-shadow:none}html.ios ion-modal.modal-card .ion-page{border-top-left-radius:var(--border-radius)}.ion-color-primary{--ion-color-base:var(--ion-color-primary,#0054e9)!important;--ion-color-base-rgb:var(--ion-color-primary-rgb,0, 84, 233)!important;--ion-color-contrast:var(--ion-color-primary-contrast,#fff)!important;--ion-color-contrast-rgb:var(--ion-color-primary-contrast-rgb,255, 255, 255)!important;--ion-color-shade:var(--ion-color-primary-shade,#004acd)!important;--ion-color-tint:var(--ion-color-primary-tint,#1a65eb)!important}.ion-color-secondary{--ion-color-base:var(--ion-color-secondary,#0163aa)!important;--ion-color-base-rgb:var(--ion-color-secondary-rgb,1, 99, 170)!important;--ion-color-contrast:var(--ion-color-secondary-contrast,#fff)!important;--ion-color-contrast-rgb:var(--ion-color-secondary-contrast-rgb,255, 255, 255)!important;--ion-color-shade:var(--ion-color-secondary-shade,#015796)!important;--ion-color-tint:var(--ion-color-secondary-tint,#1a73b3)!important}.ion-color-tertiary{--ion-color-base:var(--ion-color-tertiary,#6030ff)!important;--ion-color-base-rgb:var(--ion-color-tertiary-rgb,96, 48, 255)!important;--ion-color-contrast:var(--ion-color-tertiary-contrast,#fff)!important;--ion-color-contrast-rgb:var(--ion-color-tertiary-contrast-rgb,255, 255, 255)!important;--ion-color-shade:var(--ion-color-tertiary-shade,#542ae0)!important;--ion-color-tint:var(--ion-color-tertiary-tint,#7045ff)!important}.ion-color-success{--ion-color-base:var(--ion-color-success,#2dd55b)!important;--ion-color-base-rgb:var(--ion-color-success-rgb,45, 213, 91)!important;--ion-color-contrast:var(--ion-color-success-contrast,#000)!important;--ion-color-contrast-rgb:var(--ion-color-success-contrast-rgb,0, 0, 0)!important;--ion-color-shade:var(--ion-color-success-shade,#28bb50)!important;--ion-color-tint:var(--ion-color-success-tint,#42d96b)!important}.ion-color-warning{--ion-color-base:var(--ion-color-warning,#ffc409)!important;--ion-color-base-rgb:var(--ion-color-warning-rgb,255, 196, 9)!important;--ion-color-contrast:var(--ion-color-warning-contrast,#000)!important;--ion-color-contrast-rgb:var(--ion-color-warning-contrast-rgb,0, 0, 0)!important;--ion-color-shade:var(--ion-color-warning-shade,#e0ac08)!important;--ion-color-tint:var(--ion-color-warning-tint,#ffca22)!important}.ion-color-danger{--ion-color-base:var(--ion-color-danger,#c5000f)!important;--ion-color-base-rgb:var(--ion-color-danger-rgb,197, 0, 15)!important;--ion-color-contrast:var(--ion-color-danger-contrast,#fff)!important;--ion-color-contrast-rgb:var(--ion-color-danger-contrast-rgb,255, 255, 255)!important;--ion-color-shade:var(--ion-color-danger-shade,#ad000d)!important;--ion-color-tint:var(--ion-color-danger-tint,#cb1a27)!important}.ion-color-light{--ion-color-base:var(--ion-color-light,#f4f5f8)!important;--ion-color-base-rgb:var(--ion-color-light-rgb,244, 245, 248)!important;--ion-color-contrast:var(--ion-color-light-contrast,#000)!important;--ion-color-contrast-rgb:var(--ion-color-light-contrast-rgb,0, 0, 0)!important;--ion-color-shade:var(--ion-color-light-shade,#d7d8da)!important;--ion-color-tint:var(--ion-color-light-tint,#f5f6f9)!important}.ion-color-medium{--ion-color-base:var(--ion-color-medium,#636469)!important;--ion-color-base-rgb:var(--ion-color-medium-rgb,99, 100, 105)!important;--ion-color-contrast:var(--ion-color-medium-contrast,#fff)!important;--ion-color-contrast-rgb:var(--ion-color-medium-contrast-rgb,255, 255, 255)!important;--ion-color-shade:var(--ion-color-medium-shade,#57585c)!important;--ion-color-tint:var(--ion-color-medium-tint,#737478)!important}.ion-color-dark{--ion-color-base:var(--ion-color-dark,#222428)!important;--ion-color-base-rgb:var(--ion-color-dark-rgb,34, 36, 40)!important;--ion-color-contrast:var(--ion-color-dark-contrast,#fff)!important;--ion-color-contrast-rgb:var(--ion-color-dark-contrast-rgb,255, 255, 255)!important;--ion-color-shade:var(--ion-color-dark-shade,#1e2023)!important;--ion-color-tint:var(--ion-color-dark-tint,#383a3e)!important}.ion-page{contain:layout size style;z-index:0;flex-direction:column;justify-content:space-between;display:flex;position:absolute;inset:0}.ion-page.ion-page-overlay-passthrough{pointer-events:none}ion-modal>.ion-page{contain:layout style;height:100%;position:relative}.split-pane-visible>.ion-page.split-pane-main{position:relative}ion-route,ion-route-redirect,ion-router,ion-select-option,ion-nav-controller,ion-menu-controller,ion-action-sheet-controller,ion-alert-controller,ion-loading-controller,ion-modal-controller,ion-picker-controller,ion-popover-controller,ion-toast-controller,.ion-page-hidden{display:none!important}.ion-page-invisible{opacity:0}.can-go-back>ion-header ion-back-button{display:block}html.plt-ios.plt-hybrid,html.plt-ios.plt-pwa{--ion-statusbar-padding:20px}@supports (padding-top:20px){html{--ion-safe-area-top:var(--ion-statusbar-padding)}}@supports (padding-top:env(safe-area-inset-top)){html{--ion-safe-area-top:var(--safe-area-inset-top,env(safe-area-inset-top));--ion-safe-area-bottom:var(--safe-area-inset-bottom,env(safe-area-inset-bottom));--ion-safe-area-left:var(--safe-area-inset-left,env(safe-area-inset-left));--ion-safe-area-right:var(--safe-area-inset-right,env(safe-area-inset-right))}}ion-card.ion-color .ion-inherit-color,ion-card-header.ion-color .ion-inherit-color{color:inherit}.menu-content{transform:translate(0,0)}.menu-content-open{cursor:pointer;touch-action:manipulation;pointer-events:none;overflow-y:hidden}.menu-content-open ion-content{--overflow:hidden}.menu-content-open .ion-content-scroll-host{overflow:hidden}.ios .menu-content-reveal{box-shadow:-8px 0 42px #00000014}[dir=rtl].ios .menu-content-reveal{box-shadow:8px 0 42px #00000014}.md .menu-content-reveal,.md .menu-content-push{box-shadow:4px 0 16px #0000002e}ion-accordion-group.accordion-group-expand-inset>ion-accordion:first-of-type{border-top-left-radius:8px;border-top-right-radius:8px}ion-accordion-group.accordion-group-expand-inset>ion-accordion:last-of-type{border-bottom-right-radius:8px;border-bottom-left-radius:8px}ion-accordion-group>ion-accordion:last-of-type ion-item[slot=header]{--border-width:0px}ion-accordion.accordion-animated>[slot=header] .ion-accordion-toggle-icon{transition:transform .3s cubic-bezier(.25,.8,.5,1)}@media (prefers-reduced-motion:reduce){ion-accordion .ion-accordion-toggle-icon{transition:none!important}}ion-accordion.accordion-expanding>[slot=header] .ion-accordion-toggle-icon,ion-accordion.accordion-expanded>[slot=header] .ion-accordion-toggle-icon{transform:rotate(180deg)}ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-previous ion-item[slot=header]{--border-width:0px;--inner-border-width:0px}ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-expanding:first-of-type,ion-accordion-group.accordion-group-expand-inset.md>ion-accordion.accordion-expanded:first-of-type{margin-top:0}ion-input input::-webkit-date-and-time-value{text-align:start}.ion-datetime-button-overlay{--width:fit-content;--height:fit-content}.ion-datetime-button-overlay ion-datetime.datetime-grid{width:320px;min-height:320px}[ion-last-focus],header[tabindex="-1"]:focus,[role=banner][tabindex="-1"]:focus,main[tabindex="-1"]:focus,[role=main][tabindex="-1"]:focus,h1[tabindex="-1"]:focus,[role=heading][aria-level="1"][tabindex="-1"]:focus{outline:none}.popover-viewport:has(>ion-content){overflow:hidden}@supports not selector(:has(> ion-content)){.popover-viewport{overflow:hidden}}audio,canvas,progress,video{vertical-align:baseline}audio:not([controls]){height:0;display:none}b,strong{font-weight:700}img{max-width:100%}hr{box-sizing:content-box;border-width:0;height:1px}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace;font-size:1em}label,input,select,textarea{font-family:inherit;line-height:normal}textarea{height:auto;font:inherit;color:inherit;overflow:auto}textarea::placeholder{padding-left:2px}form,input,optgroup,select{font:inherit;color:inherit;margin:0}html input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button}a,a div,a span,a ion-icon,a ion-label,button,button div,button span,button ion-icon,button ion-label,.ion-tappable,[tappable],[tappable] div,[tappable] span,[tappable] ion-icon,[tappable] ion-label,input,textarea{touch-action:manipulation}a ion-label,button ion-label{pointer-events:none}button{font-family:inherit;font-style:inherit;font-variant:inherit;text-transform:none;cursor:pointer;-webkit-appearance:button;border:0;border-radius:0;padding:0;line-height:1}[tappable]{cursor:pointer}a[disabled],button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner{border:0;padding:0}input::-moz-focus-inner{border:0;padding:0}input[type=number]::-webkit-inner-spin-button{height:auto}input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}input[type=search]::-webkit-search-decoration{-webkit-appearance:none}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}*{box-sizing:border-box;-webkit-tap-highlight-color:#0000;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;width:100%;height:100%}html.ion-ce body{display:block}html.plt-pwa{height:100vh}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;touch-action:manipulation;-webkit-user-drag:none;-ms-content-zooming:none;word-wrap:break-word;overscroll-behavior-y:none;-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;width:100%;max-width:100%;height:100%;max-height:100%;margin:0;padding:0;position:fixed;overflow:hidden;transform:translateZ(0)}html{font-family:var(--ion-font-family)}@supports (-webkit-touch-callout:none){html{font:var(--ion-dynamic-font,16px var(--ion-font-family))}}a{color:var(--ion-color-primary,#0054e9);background-color:#0000}h1,h2,h3,h4,h5,h6{margin-top:16px;margin-bottom:10px;font-weight:500;line-height:1.2}h1{margin-top:20px;font-size:1.625rem}h2{margin-top:18px;font-size:1.5rem}h3{font-size:1.375rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}small{font-size:75%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sup{top:-.5em}sub{bottom:-.25em}.ion-no-padding{--padding-start:0;--padding-end:0;--padding-top:0;--padding-bottom:0;padding:0}.ion-padding{--padding-start:var(--ion-padding,16px);--padding-end:var(--ion-padding,16px);--padding-top:var(--ion-padding,16px);--padding-bottom:var(--ion-padding,16px);-webkit-padding-start:var(--ion-padding,16px);-webkit-padding-end:var(--ion-padding,16px);padding-inline-start:var(--ion-padding,16px);padding-inline-end:var(--ion-padding,16px);padding-top:var(--ion-padding,16px);padding-bottom:var(--ion-padding,16px)}.ion-padding-top{--padding-top:var(--ion-padding,16px);padding-top:var(--ion-padding,16px)}.ion-padding-start{--padding-start:var(--ion-padding,16px);-webkit-padding-start:var(--ion-padding,16px);padding-inline-start:var(--ion-padding,16px)}.ion-padding-end{--padding-end:var(--ion-padding,16px);-webkit-padding-end:var(--ion-padding,16px);padding-inline-end:var(--ion-padding,16px)}.ion-padding-bottom{--padding-bottom:var(--ion-padding,16px);padding-bottom:var(--ion-padding,16px)}.ion-padding-vertical{--padding-top:var(--ion-padding,16px);--padding-bottom:var(--ion-padding,16px);padding-top:var(--ion-padding,16px);padding-bottom:var(--ion-padding,16px)}.ion-padding-horizontal{--padding-start:var(--ion-padding,16px);--padding-end:var(--ion-padding,16px);-webkit-padding-start:var(--ion-padding,16px);-webkit-padding-end:var(--ion-padding,16px);padding-inline-start:var(--ion-padding,16px);padding-inline-end:var(--ion-padding,16px)}.ion-no-margin{--margin-start:0;--margin-end:0;--margin-top:0;--margin-bottom:0;margin:0}.ion-margin{--margin-start:var(--ion-margin,16px);--margin-end:var(--ion-margin,16px);--margin-top:var(--ion-margin,16px);--margin-bottom:var(--ion-margin,16px);-webkit-margin-start:var(--ion-margin,16px);-webkit-margin-end:var(--ion-margin,16px);margin-inline-start:var(--ion-margin,16px);margin-inline-end:var(--ion-margin,16px);margin-top:var(--ion-margin,16px);margin-bottom:var(--ion-margin,16px)}.ion-margin-top{--margin-top:var(--ion-margin,16px);margin-top:var(--ion-margin,16px)}.ion-margin-start{--margin-start:var(--ion-margin,16px);-webkit-margin-start:var(--ion-margin,16px);margin-inline-start:var(--ion-margin,16px)}.ion-margin-end{--margin-end:var(--ion-margin,16px);-webkit-margin-end:var(--ion-margin,16px);margin-inline-end:var(--ion-margin,16px)}.ion-margin-bottom{--margin-bottom:var(--ion-margin,16px);margin-bottom:var(--ion-margin,16px)}.ion-margin-vertical{--margin-top:var(--ion-margin,16px);--margin-bottom:var(--ion-margin,16px);margin-top:var(--ion-margin,16px);margin-bottom:var(--ion-margin,16px)}.ion-margin-horizontal{--margin-start:var(--ion-margin,16px);--margin-end:var(--ion-margin,16px);-webkit-margin-start:var(--ion-margin,16px);-webkit-margin-end:var(--ion-margin,16px);margin-inline-start:var(--ion-margin,16px);margin-inline-end:var(--ion-margin,16px)}.ion-align-content-start{align-content:flex-start!important}.ion-align-content-end{align-content:flex-end!important}.ion-align-content-center{align-content:center!important}.ion-align-content-between{align-content:space-between!important}.ion-align-content-around{align-content:space-around!important}.ion-align-content-stretch{align-content:stretch!important}@media (width>=576px){.ion-align-content-sm-start{align-content:flex-start!important}.ion-align-content-sm-end{align-content:flex-end!important}.ion-align-content-sm-center{align-content:center!important}.ion-align-content-sm-between{align-content:space-between!important}.ion-align-content-sm-around{align-content:space-around!important}.ion-align-content-sm-stretch{align-content:stretch!important}}@media (width>=768px){.ion-align-content-md-start{align-content:flex-start!important}.ion-align-content-md-end{align-content:flex-end!important}.ion-align-content-md-center{align-content:center!important}.ion-align-content-md-between{align-content:space-between!important}.ion-align-content-md-around{align-content:space-around!important}.ion-align-content-md-stretch{align-content:stretch!important}}@media (width>=992px){.ion-align-content-lg-start{align-content:flex-start!important}.ion-align-content-lg-end{align-content:flex-end!important}.ion-align-content-lg-center{align-content:center!important}.ion-align-content-lg-between{align-content:space-between!important}.ion-align-content-lg-around{align-content:space-around!important}.ion-align-content-lg-stretch{align-content:stretch!important}}@media (width>=1200px){.ion-align-content-xl-start{align-content:flex-start!important}.ion-align-content-xl-end{align-content:flex-end!important}.ion-align-content-xl-center{align-content:center!important}.ion-align-content-xl-between{align-content:space-between!important}.ion-align-content-xl-around{align-content:space-around!important}.ion-align-content-xl-stretch{align-content:stretch!important}}.ion-align-items-start{align-items:start!important}.ion-align-items-end{align-items:end!important}.ion-align-items-center{align-items:center!important}.ion-align-items-stretch{align-items:stretch!important}.ion-align-items-baseline{align-items:baseline!important}@media (width>=576px){.ion-align-items-sm-start{align-items:start!important}.ion-align-items-sm-end{align-items:end!important}.ion-align-items-sm-center{align-items:center!important}.ion-align-items-sm-stretch{align-items:stretch!important}.ion-align-items-sm-baseline{align-items:baseline!important}}@media (width>=768px){.ion-align-items-md-start{align-items:start!important}.ion-align-items-md-end{align-items:end!important}.ion-align-items-md-center{align-items:center!important}.ion-align-items-md-stretch{align-items:stretch!important}.ion-align-items-md-baseline{align-items:baseline!important}}@media (width>=992px){.ion-align-items-lg-start{align-items:start!important}.ion-align-items-lg-end{align-items:end!important}.ion-align-items-lg-center{align-items:center!important}.ion-align-items-lg-stretch{align-items:stretch!important}.ion-align-items-lg-baseline{align-items:baseline!important}}@media (width>=1200px){.ion-align-items-xl-start{align-items:start!important}.ion-align-items-xl-end{align-items:end!important}.ion-align-items-xl-center{align-items:center!important}.ion-align-items-xl-stretch{align-items:stretch!important}.ion-align-items-xl-baseline{align-items:baseline!important}}.ion-align-self-start{align-self:start!important}.ion-align-self-end{align-self:end!important}.ion-align-self-center{align-self:center!important}.ion-align-self-stretch{align-self:stretch!important}.ion-align-self-baseline{align-self:baseline!important}.ion-align-self-auto{align-self:auto!important}@media (width>=576px){.ion-align-self-sm-start{align-self:start!important}.ion-align-self-sm-end{align-self:end!important}.ion-align-self-sm-center{align-self:center!important}.ion-align-self-sm-stretch{align-self:stretch!important}.ion-align-self-sm-baseline{align-self:baseline!important}.ion-align-self-sm-auto{align-self:auto!important}}@media (width>=768px){.ion-align-self-md-start{align-self:start!important}.ion-align-self-md-end{align-self:end!important}.ion-align-self-md-center{align-self:center!important}.ion-align-self-md-stretch{align-self:stretch!important}.ion-align-self-md-baseline{align-self:baseline!important}.ion-align-self-md-auto{align-self:auto!important}}@media (width>=992px){.ion-align-self-lg-start{align-self:start!important}.ion-align-self-lg-end{align-self:end!important}.ion-align-self-lg-center{align-self:center!important}.ion-align-self-lg-stretch{align-self:stretch!important}.ion-align-self-lg-baseline{align-self:baseline!important}.ion-align-self-lg-auto{align-self:auto!important}}@media (width>=1200px){.ion-align-self-xl-start{align-self:start!important}.ion-align-self-xl-end{align-self:end!important}.ion-align-self-xl-center{align-self:center!important}.ion-align-self-xl-stretch{align-self:stretch!important}.ion-align-self-xl-baseline{align-self:baseline!important}.ion-align-self-xl-auto{align-self:auto!important}}.ion-justify-content-start{justify-content:flex-start!important}.ion-justify-content-end{justify-content:flex-end!important}.ion-justify-content-center{justify-content:center!important}.ion-justify-content-between{justify-content:space-between!important}.ion-justify-content-around{justify-content:space-around!important}.ion-justify-content-evenly{justify-content:space-evenly!important}@media (width>=576px){.ion-justify-content-sm-start{justify-content:flex-start!important}.ion-justify-content-sm-end{justify-content:flex-end!important}.ion-justify-content-sm-center{justify-content:center!important}.ion-justify-content-sm-between{justify-content:space-between!important}.ion-justify-content-sm-around{justify-content:space-around!important}.ion-justify-content-sm-evenly{justify-content:space-evenly!important}}@media (width>=768px){.ion-justify-content-md-start{justify-content:flex-start!important}.ion-justify-content-md-end{justify-content:flex-end!important}.ion-justify-content-md-center{justify-content:center!important}.ion-justify-content-md-between{justify-content:space-between!important}.ion-justify-content-md-around{justify-content:space-around!important}.ion-justify-content-md-evenly{justify-content:space-evenly!important}}@media (width>=992px){.ion-justify-content-lg-start{justify-content:flex-start!important}.ion-justify-content-lg-end{justify-content:flex-end!important}.ion-justify-content-lg-center{justify-content:center!important}.ion-justify-content-lg-between{justify-content:space-between!important}.ion-justify-content-lg-around{justify-content:space-around!important}.ion-justify-content-lg-evenly{justify-content:space-evenly!important}}@media (width>=1200px){.ion-justify-content-xl-start{justify-content:flex-start!important}.ion-justify-content-xl-end{justify-content:flex-end!important}.ion-justify-content-xl-center{justify-content:center!important}.ion-justify-content-xl-between{justify-content:space-between!important}.ion-justify-content-xl-around{justify-content:space-around!important}.ion-justify-content-xl-evenly{justify-content:space-evenly!important}}.ion-flex-row{flex-direction:row!important}.ion-flex-row-reverse{flex-direction:row-reverse!important}.ion-flex-column{flex-direction:column!important}.ion-flex-column-reverse{flex-direction:column-reverse!important}@media (width>=576px){.ion-flex-sm-row{flex-direction:row!important}.ion-flex-sm-row-reverse{flex-direction:row-reverse!important}.ion-flex-sm-column{flex-direction:column!important}.ion-flex-sm-column-reverse{flex-direction:column-reverse!important}}@media (width>=768px){.ion-flex-md-row{flex-direction:row!important}.ion-flex-md-row-reverse{flex-direction:row-reverse!important}.ion-flex-md-column{flex-direction:column!important}.ion-flex-md-column-reverse{flex-direction:column-reverse!important}}@media (width>=992px){.ion-flex-lg-row{flex-direction:row!important}.ion-flex-lg-row-reverse{flex-direction:row-reverse!important}.ion-flex-lg-column{flex-direction:column!important}.ion-flex-lg-column-reverse{flex-direction:column-reverse!important}}@media (width>=1200px){.ion-flex-xl-row{flex-direction:row!important}.ion-flex-xl-row-reverse{flex-direction:row-reverse!important}.ion-flex-xl-column{flex-direction:column!important}.ion-flex-xl-column-reverse{flex-direction:column-reverse!important}}.ion-wrap{flex-wrap:wrap!important}.ion-nowrap{flex-wrap:nowrap!important}.ion-wrap-reverse{flex-wrap:wrap-reverse!important}.ion-flex-wrap{flex-wrap:wrap!important}.ion-flex-nowrap{flex-wrap:nowrap!important}.ion-flex-wrap-reverse{flex-wrap:wrap-reverse!important}@media (width>=576px){.ion-flex-sm-wrap{flex-wrap:wrap!important}.ion-flex-sm-nowrap{flex-wrap:nowrap!important}.ion-flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}}@media (width>=768px){.ion-flex-md-wrap{flex-wrap:wrap!important}.ion-flex-md-nowrap{flex-wrap:nowrap!important}.ion-flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}}@media (width>=992px){.ion-flex-lg-wrap{flex-wrap:wrap!important}.ion-flex-lg-nowrap{flex-wrap:nowrap!important}.ion-flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}}@media (width>=1200px){.ion-flex-xl-wrap{flex-wrap:wrap!important}.ion-flex-xl-nowrap{flex-wrap:nowrap!important}.ion-flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}}.ion-flex-1{flex:1!important}.ion-flex-auto{flex:auto!important}.ion-flex-initial{flex:initial!important}.ion-flex-none{flex:none!important}@media (width>=576px){.ion-flex-sm-1{flex:1!important}.ion-flex-sm-auto{flex:auto!important}.ion-flex-sm-initial{flex:initial!important}.ion-flex-sm-none{flex:none!important}}@media (width>=768px){.ion-flex-md-1{flex:1!important}.ion-flex-md-auto{flex:auto!important}.ion-flex-md-initial{flex:initial!important}.ion-flex-md-none{flex:none!important}}@media (width>=992px){.ion-flex-lg-1{flex:1!important}.ion-flex-lg-auto{flex:auto!important}.ion-flex-lg-initial{flex:initial!important}.ion-flex-lg-none{flex:none!important}}@media (width>=1200px){.ion-flex-xl-1{flex:1!important}.ion-flex-xl-auto{flex:auto!important}.ion-flex-xl-initial{flex:initial!important}.ion-flex-xl-none{flex:none!important}}.ion-flex-grow-0{flex-grow:0!important}.ion-flex-grow-1{flex-grow:1!important}.ion-flex-shrink-0{flex-shrink:0!important}.ion-flex-shrink-1{flex-shrink:1!important}@media (width>=576px){.ion-flex-sm-grow-0{flex-grow:0!important}.ion-flex-sm-grow-1{flex-grow:1!important}.ion-flex-sm-shrink-0{flex-shrink:0!important}.ion-flex-sm-shrink-1{flex-shrink:1!important}}@media (width>=768px){.ion-flex-md-grow-0{flex-grow:0!important}.ion-flex-md-grow-1{flex-grow:1!important}.ion-flex-md-shrink-0{flex-shrink:0!important}.ion-flex-md-shrink-1{flex-shrink:1!important}}@media (width>=992px){.ion-flex-lg-grow-0{flex-grow:0!important}.ion-flex-lg-grow-1{flex-grow:1!important}.ion-flex-lg-shrink-0{flex-shrink:0!important}.ion-flex-lg-shrink-1{flex-shrink:1!important}}@media (width>=1200px){.ion-flex-xl-grow-0{flex-grow:0!important}.ion-flex-xl-grow-1{flex-grow:1!important}.ion-flex-xl-shrink-0{flex-shrink:0!important}.ion-flex-xl-shrink-1{flex-shrink:1!important}}.ion-order-first{order:-1!important}.ion-order-0{order:0!important}.ion-order-1{order:1!important}.ion-order-2{order:2!important}.ion-order-3{order:3!important}.ion-order-4{order:4!important}.ion-order-5{order:5!important}.ion-order-6{order:6!important}.ion-order-7{order:7!important}.ion-order-8{order:8!important}.ion-order-9{order:9!important}.ion-order-10{order:10!important}.ion-order-11{order:11!important}.ion-order-12{order:12!important}.ion-order-last{order:13!important}@media (width>=576px){.ion-order-sm-first{order:-1!important}.ion-order-sm-0{order:0!important}.ion-order-sm-1{order:1!important}.ion-order-sm-2{order:2!important}.ion-order-sm-3{order:3!important}.ion-order-sm-4{order:4!important}.ion-order-sm-5{order:5!important}.ion-order-sm-6{order:6!important}.ion-order-sm-7{order:7!important}.ion-order-sm-8{order:8!important}.ion-order-sm-9{order:9!important}.ion-order-sm-10{order:10!important}.ion-order-sm-11{order:11!important}.ion-order-sm-12{order:12!important}.ion-order-sm-last{order:13!important}}@media (width>=768px){.ion-order-md-first{order:-1!important}.ion-order-md-0{order:0!important}.ion-order-md-1{order:1!important}.ion-order-md-2{order:2!important}.ion-order-md-3{order:3!important}.ion-order-md-4{order:4!important}.ion-order-md-5{order:5!important}.ion-order-md-6{order:6!important}.ion-order-md-7{order:7!important}.ion-order-md-8{order:8!important}.ion-order-md-9{order:9!important}.ion-order-md-10{order:10!important}.ion-order-md-11{order:11!important}.ion-order-md-12{order:12!important}.ion-order-md-last{order:13!important}}@media (width>=992px){.ion-order-lg-first{order:-1!important}.ion-order-lg-0{order:0!important}.ion-order-lg-1{order:1!important}.ion-order-lg-2{order:2!important}.ion-order-lg-3{order:3!important}.ion-order-lg-4{order:4!important}.ion-order-lg-5{order:5!important}.ion-order-lg-6{order:6!important}.ion-order-lg-7{order:7!important}.ion-order-lg-8{order:8!important}.ion-order-lg-9{order:9!important}.ion-order-lg-10{order:10!important}.ion-order-lg-11{order:11!important}.ion-order-lg-12{order:12!important}.ion-order-lg-last{order:13!important}}@media (width>=1200px){.ion-order-xl-first{order:-1!important}.ion-order-xl-0{order:0!important}.ion-order-xl-1{order:1!important}.ion-order-xl-2{order:2!important}.ion-order-xl-3{order:3!important}.ion-order-xl-4{order:4!important}.ion-order-xl-5{order:5!important}.ion-order-xl-6{order:6!important}.ion-order-xl-7{order:7!important}.ion-order-xl-8{order:8!important}.ion-order-xl-9{order:9!important}.ion-order-xl-10{order:10!important}.ion-order-xl-11{order:11!important}.ion-order-xl-12{order:12!important}.ion-order-xl-last{order:13!important}}:root{--bk-brand:#3a6b4a;--bk-brand-dark:#2f563c;--bk-brand-soft:#e8f2eb;--bk-page:#f2f2f7;--bk-card:#f8faf9;--bk-ink:#1c1c1e;--bk-muted:#5c5c5c;--bk-danger:#b43232;--bk-separator:#3c3c4329;--bk-glass:#ffffffad;--bk-glass-strong:#ffffffd6;--bk-glass-border:#ffffffe0;--bk-glass-shadow:0 10px 34px #22412c17;--ion-color-primary:#3a6b4a;--ion-color-primary-rgb:58, 107, 74;--ion-color-primary-contrast:#fff;--ion-color-primary-contrast-rgb:255, 255, 255;--ion-color-primary-shade:#335e41;--ion-color-primary-tint:#4e7a5c;--ion-background-color:var(--bk-page);--ion-text-color:var(--bk-ink);--ion-font-family:-apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", system-ui, sans-serif}html,body,#root,ion-app{overscroll-behavior:none;overscroll-behavior-x:none;width:100%;height:100%;margin:0}body{background:var(--bk-page)}html.splash-active,html.splash-active body,html.splash-active ion-app{background:#3a6b4a!important;overflow:hidden!important}#boot-splash{z-index:2147483646!important;background:#3a6b4a!important;width:100%!important;height:100svh!important;position:fixed!important;top:0!important;left:0!important;transform:none!important}#boot-splash .boot-inner{position:absolute!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important}ion-content{--background:var(--bk-page);overscroll-behavior-x:none}ion-router-outlet{overscroll-behavior-x:none;touch-action:pan-y}ion-toolbar{--background:#f6faf7b8;--border-color:#3c3c431a;-webkit-backdrop-filter:saturate(190%)blur(28px);backdrop-filter:saturate(190%)blur(28px)}.ios-tab-bar{--background:#f9f9f9f0;--border:0;height:calc(49px + var(--ion-safe-area-bottom,env(safe-area-inset-bottom,0px)));min-height:calc(49px + var(--ion-safe-area-bottom,env(safe-area-inset-bottom,0px)));padding:0 0 var(--ion-safe-area-bottom,env(safe-area-inset-bottom,0px));-webkit-backdrop-filter:saturate(180%)blur(24px);backdrop-filter:saturate(180%)blur(24px);background:#f9f9f9f0;border-top:.5px solid #3c3c434a}.ios-tab-button{--background:transparent;--color:#8e8e93;--color-selected:var(--bk-brand);--padding-top:3px;--padding-end:0;--padding-bottom:2px;--padding-start:0;min-height:49px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,system-ui,sans-serif}.ios-tab-button ion-icon{width:24px;height:24px;margin:0 0 1px}.ios-tab-button ion-label{letter-spacing:-.15px;margin:0;font-size:10px;font-weight:500;line-height:12px}.ios-tab-button.tab-selected ion-label{font-weight:600}.page-pad{padding:16px}.stack{gap:16px;display:grid}.bk-card{box-shadow:none;background:#fff;border-radius:14px;margin:0;overflow:hidden}.bk-card.soft{background:var(--bk-card)}.section-title{color:var(--bk-ink);margin:0 0 10px;font-size:20px;font-weight:700}.muted{color:var(--bk-muted)}.hero-title{letter-spacing:-.5px;margin:0;font-size:28px;font-weight:750;line-height:1.1}.home-page ion-content{--background:#f8faf9;--padding-top:var(--ion-safe-area-top,env(safe-area-inset-top,0px))}.home-page ion-refresher{z-index:20;top:var(--ion-safe-area-top,env(safe-area-inset-top,0px));height:56px;max-height:56px}.home-page ion-refresher.refresher-native{top:calc(var(--ion-safe-area-top,env(safe-area-inset-top,0px)) + 8px)}.home-page ion-refresher-content,.home-page ion-refresher ion-spinner{color:var(--bk-brand);--color:var(--bk-brand)}.home-brand{color:var(--bk-ink);letter-spacing:-.2px;text-align:center;margin:4px 0 0;font-size:17px;font-weight:700}.home-stack{gap:16px;display:grid}.home-header{justify-content:space-between;align-items:center;gap:12px;min-height:58px;display:flex}.home-header h1{letter-spacing:-.35px;margin:0;font-size:26px;font-weight:750;line-height:1.2}.home-header p{color:var(--bk-muted);margin:4px 0 0;font-size:16px}.home-notification{width:44px;height:44px;color:var(--bk-brand);background:0 0;border:0;border-radius:50%;flex:0 0 44px;padding:0;position:relative}.home-notification>ion-icon{font-size:22px}.home-notification ion-badge{border:2px solid #fff;border-radius:999px;min-width:19px;padding:4px;font-size:10px;line-height:1;position:absolute;top:1px;right:-2px}.notif-list ion-item.notif-row{--min-height:0;--padding-top:14px;--padding-bottom:14px;--inner-padding-top:0;--inner-padding-bottom:0;align-items:flex-start}.notif-list ion-item.notif-row::part(native){align-items:flex-start;padding-top:0;padding-bottom:0}.notif-icon{margin-top:2px;color:#fff;border-radius:8px;flex-shrink:0;align-self:flex-start;place-items:center;width:32px;height:32px;margin-inline-end:12px;display:grid}.notif-icon ion-icon{width:18px;height:18px}.notif-row ion-label{margin-top:0!important;margin-bottom:0!important}.notif-row ion-label h2{letter-spacing:-.3px;margin:0;font-size:16px;font-weight:600;line-height:1.25}.notif-row ion-label p{color:#3c3c43a6;margin:4px 0 0;font-size:13px;line-height:1.35}.notif-date{white-space:nowrap;align-self:flex-start;margin-top:2px;font-size:12px;line-height:1.25}.notif-row.is-unread ion-label h2{font-weight:700}.notif-row.is-unread .notif-icon{box-shadow:0 0 0 2px #3a6b4a59}.attendance-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:8px 16px 4px;display:grid}.attendance-summary>div{background:#fff;border-radius:14px;flex-direction:column;gap:2px;padding:12px 10px;display:flex;box-shadow:0 1px 2px #0f172a0a}.attendance-summary span{color:#3c3c4399;font-size:12px;font-weight:600}.attendance-summary strong{color:var(--bk-ink);letter-spacing:-.3px;font-size:20px;font-weight:700}.home-error{color:var(--bk-danger);margin:-6px 0;font-size:13px}.home-push-banner{background:#fff;border:1px solid #3a6b4a2e;border-radius:16px;align-items:center;gap:12px;padding:14px;display:flex;box-shadow:0 8px 24px #22412c0f}.home-push-banner strong{letter-spacing:-.2px;margin:0 0 4px;font-size:15px;display:block}.home-push-banner p{color:#3c3c43b3;margin:0;font-size:13px;line-height:1.35}.home-push-banner>button{background:var(--bk-brand);color:#fff;min-height:36px;font:inherit;border:0;border-radius:980px;flex-shrink:0;padding:0 14px;font-size:14px;font-weight:600}.home-push-banner>button:disabled{opacity:.55}.home-summary{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:14px;display:grid}.home-qr-card,.home-stats button,.home-course-row{color:var(--bk-ink);font:inherit;box-shadow:none;background:#fff;border:0}.home-qr-card{border-radius:24px;flex-direction:column;justify-content:flex-start;align-items:center;gap:8px;min-width:0;min-height:250px;padding:16px;display:flex}.home-qr-card strong{color:var(--bk-muted);font-size:14px;font-weight:700}.home-qr-card canvas{max-width:100%;margin:auto;width:152px!important;height:152px!important}.home-qr-card>ion-icon{color:var(--bk-brand);margin:auto;font-size:64px}.home-stats{gap:14px;min-width:0;display:grid}.home-stats button{text-align:left;border-radius:24px;min-width:0;min-height:118px;padding:18px 18px 16px}.home-stats span{color:var(--bk-muted);align-items:center;gap:7px;font-size:16px;font-weight:700;display:flex}.home-stats span ion-icon{color:var(--bk-brand);font-size:20px}.home-stats strong{color:var(--bk-brand-dark);letter-spacing:-.6px;margin-top:10px;font-size:40px;line-height:1.05;display:block}.home-courses{gap:8px;display:grid}.home-course-list{gap:12px;display:grid}.home-course-row{text-align:left;background:#eef5f0;border-radius:22px;width:100%;min-height:104px;padding:19px 20px}.home-course-row>strong{text-overflow:ellipsis;white-space:nowrap;margin-bottom:13px;font-size:19px;font-weight:700;display:block;overflow:hidden}.home-course-row>span{color:var(--bk-muted);align-items:center;gap:18px;font-size:14px;display:flex}.home-course-row .progress-track{background:#3a6b4a24;height:8px;margin-top:12px}.home-course-row .progress-fill{background:var(--bk-brand)}.home-course-row>span>span{align-items:center;gap:4px;display:inline-flex}.home-course-row b{color:var(--bk-brand);margin-left:auto;font-size:17px}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.skeleton{vertical-align:middle;background-image:linear-gradient(90deg,#3c3c431a 0% 35%,#3c3c432e 50%,#3c3c431a 65% 100%);background-size:200% 100%;border-radius:6px;flex-shrink:0;animation:1.25s ease-in-out infinite skeleton-shimmer;display:inline-block}.skeleton-stat{border-radius:10px;margin-top:4px}.home-course-skeleton{pointer-events:none}.home-course-skeleton-meta{align-items:center;gap:18px;display:flex}.home-course-skeleton-meta .skeleton-course-pct{margin-left:auto}.skeleton-course-title{border-radius:8px;margin-bottom:13px;display:block}.skeleton-course-bar{border-radius:999px;margin-top:12px;display:block}.home-link{width:max-content;color:var(--bk-brand);font:inherit;background:0 0;border:0;padding:2px 0;font-size:16px;font-weight:500}.home-subscription{align-items:center;gap:6px;font-weight:650;display:inline-flex}.home-qr-modal{--width:min(calc(100% - 24px), 390px);--height:auto;--max-height:calc(100% - 36px - var(--ion-safe-area-top,env(safe-area-inset-top,0px)));--border-radius:28px;--box-shadow:0 18px 48px #22412c2e;--backdrop-opacity:.55;--background:transparent;justify-content:center;align-items:flex-end}.home-qr-modal::part(backdrop){-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#080e0a94}.home-qr-modal::part(content){margin:0 auto calc(12px + var(--ion-safe-area-bottom,env(safe-area-inset-bottom,0px)));-webkit-backdrop-filter:saturate(180%)blur(36px);backdrop-filter:saturate(180%)blur(36px);background:#ffffffdb;border:1px solid #ffffffb8;border-radius:28px;overflow:hidden;box-shadow:inset 0 1px #ffffffe6,0 18px 48px #22412c29}.home-qr-dialog{text-align:center;justify-items:center;gap:14px;padding:12px 18px 18px;display:grid}.home-qr-handle{background:#3c3c4333;border-radius:999px;width:36px;height:5px}.home-qr-dialog h2,.home-qr-dialog p{margin:0}.home-qr-dialog h2{letter-spacing:-.3px;font-size:20px;font-weight:750}.home-qr-frame{aspect-ratio:1;background:#ffffffe0;border-radius:24px;place-items:center;width:min(68vw,260px);display:grid;overflow:hidden;box-shadow:inset 0 1px #ffffffe6,0 12px 28px #22412c1a}.home-qr-image,.home-qr-dialog canvas,.home-qr-frame canvas{object-fit:cover;border-radius:24px;display:block;width:100%!important;height:100%!important}.home-qr-frame>ion-icon{color:var(--bk-brand);font-size:64px}.home-qr-dialog p{color:var(--bk-muted);font-size:14px;line-height:1.35}.home-qr-close{--background:var(--bk-brand-dark);--background-activated:#264832;--background-focused:var(--bk-brand-dark);--background-hover:var(--bk-brand);--color:#fff;--border-radius:16px;--box-shadow:none;width:100%;margin:0;font-weight:700}@media (prefers-color-scheme:dark){.home-qr-modal::part(backdrop){background:#0000009e}.home-qr-modal::part(content){background:#2c2c2eeb;border-color:#ffffff2e}.home-qr-frame{background:#fffffff5}.home-qr-close{--background:var(--bk-brand-dark);--background-activated:#264832;--color:#fff}}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.metric{background:#fff;border-radius:14px;min-height:86px;padding:14px}.metric strong{margin-top:7px;font-size:24px;display:block}.section-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.section-tile{min-height:108px;color:var(--bk-ink);font:inherit;background:#fff;border:0;border-radius:22px;padding:14px 7px;font-size:13px;font-weight:650}.section-tile ion-icon{color:var(--bk-brand);margin:0 auto 10px;font-size:30px;display:block}.section-tile span{line-height:1.15;display:block}.course-card{background:var(--bk-brand-soft);border-radius:12px;padding:14px}.progress-track{background:#3a6b4a26;border-radius:999px;height:7px;overflow:hidden}.progress-fill{border-radius:inherit;background:var(--bk-brand);height:100%}.splash-root{--background:#3a6b4a;background:#3a6b4a}html.splash-active,html.splash-active body,html.splash-active ion-app{background:#3a6b4a!important}html.splash-active ion-app{--ion-background-color:#3a6b4a}.splash-root.ion-page{background:#3a6b4a;flex-direction:column;justify-content:center;display:flex}.splash-center{box-sizing:border-box;width:100%;min-height:100%;padding:var(--ion-safe-area-top,env(safe-area-inset-top,0px)) 24px var(--ion-safe-area-bottom,env(safe-area-inset-bottom,0px));opacity:1;color:#fff;background:#3a6b4a;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;display:flex}.splash-center ion-icon{color:#fff;font-size:64px}.splash-logo{flex:none;width:min(148px,42vw);height:auto;margin:0;display:block}.splash-center h1{color:#fff;letter-spacing:-.4px;margin:0;font-family:ui-rounded,SF Pro Rounded,Hiragino Maru Gothic ProN,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:32px;font-weight:700}.splash-tagline{color:#ffffffdb;letter-spacing:.01em;text-align:center;margin:-6px 0 0;font-size:13px;font-weight:500;line-height:1.3}.splash-spinner{border:2.5px solid #ffffff47;border-top-color:#fff;border-radius:50%;flex:none;width:28px;height:28px;animation:.75s linear infinite splash-spin}@keyframes splash-spin{to{transform:rotate(360deg)}}.splash-center ion-spinner{color:#fff;--color:#fff;width:28px;height:28px}.login-wrap{width:min(100%,480px);min-height:100%;padding:calc(var(--ion-safe-area-top,0px) + 36px) 24px 32px;align-content:center;gap:20px;margin:auto;display:grid}.login-mark{color:var(--bk-brand);font-size:56px}.login-page ion-content.login-content{--background:var(--bk-page)}.login-ios{box-sizing:border-box;width:min(100%,480px);min-height:100%;padding:calc(var(--ion-safe-area-top,env(safe-area-inset-top,0px)) + 24px) 24px calc(var(--ion-safe-area-bottom,env(safe-area-inset-bottom,0px)) + 24px);flex-direction:column;gap:20px;margin:0 auto;display:flex}.login-ios-top{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:12px 0 4px;display:flex}.login-ios-mark{color:var(--bk-brand);font-size:48px}.login-ios-logo{width:min(72px,22vw);height:auto;margin:0;display:block}.login-ios-top h1{color:var(--bk-ink);letter-spacing:-.4px;margin:0;font-size:28px;font-weight:700;line-height:1.15}.login-ios-subtitle{color:var(--bk-muted);letter-spacing:-.1px;margin:-4px 0 0;font-size:15px;font-weight:500;line-height:1.3}.login-ios-field{margin:0;display:block}.login-ios-input{box-sizing:border-box;background:var(--bk-card);width:100%;color:var(--bk-ink);font:inherit;letter-spacing:-.2px;appearance:none;border:0;border-radius:12px;margin:0;padding:16px;font-size:17px;line-height:1.25}.login-ios-input::placeholder{color:#3c3c434d;opacity:1;font-weight:400}.login-ios-input:focus{outline:none;box-shadow:0 0 0 2px #3a6b4a47}.login-ios-legal{flex-direction:column;gap:12px;display:flex}.login-ios-consent{align-items:flex-start;gap:10px;display:flex}.login-ios-check{color:var(--bk-brand);background:0 0;border:0;flex:none;margin:1px 0 0;padding:0;font-size:22px;line-height:1}.login-ios-check ion-icon{display:block}.login-ios-legal-text{min-width:0;color:var(--bk-ink);flex:1;margin:0;font-size:14px;line-height:1.35}.login-ios-legal-link{color:var(--bk-brand);font:inherit;font-weight:600;line-height:inherit;text-align:left;text-underline-offset:2px;background:0 0;border:0;margin:0;padding:0;text-decoration:underline}.login-ios-error{color:var(--bk-danger);text-align:left;margin:0;font-size:15px;line-height:1.3}.login-ios-submit{box-sizing:border-box;background:var(--bk-brand);color:#fff;width:100%;font:inherit;letter-spacing:-.2px;appearance:none;border:0;border-radius:12px;justify-content:center;align-items:center;gap:10px;margin:0;padding:16px;font-size:17px;font-weight:700;display:inline-flex}.login-ios-submit:disabled{opacity:.72}.login-ios-submit ion-spinner{color:#fff;--color:#fff;width:20px;height:20px}.login-ios-footer{color:var(--bk-muted);text-align:center;margin:auto 0 0;padding-top:12px;font-size:11px;line-height:1.4}.login-legal-frame{background:#fff;border:0;width:100%;height:100%;display:block}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.error-text{color:var(--bk-danger);font-size:14px}.empty-state{min-height:45vh;color:var(--bk-muted);text-align:center;place-content:center;justify-items:center;padding:32px;display:grid}.ios-center-loader{min-height:52vh}.ios-center-loader ion-spinner{width:36px;height:36px}.empty-state ion-icon{font-size:48px}.projects-screen{padding-bottom:20px}.projects-heading{padding:10px 16px 4px}.projects-heading h1{color:var(--bk-ink);margin:0;font-size:20px;font-weight:700}.projects-heading p{color:var(--bk-muted);margin:2px 0 0;font-size:13px}.projects-chips{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:8px;padding:6px 12px 10px;display:flex;overflow-x:auto}.projects-chips::-webkit-scrollbar{display:none}.projects-chip{color:var(--bk-ink);font:inherit;white-space:nowrap;background:#fff;border:0;border-radius:999px;flex:none;padding:8px 12px;font-size:13px;font-weight:600}.projects-chip.is-active{background:var(--bk-brand);color:#fff}.projects-error{color:var(--bk-danger);margin:0 16px 8px;font-size:14px}.projects-grid-skeleton{pointer-events:none}.project-card-skeleton{pointer-events:none;background:#fff}.project-card-skel-media{aspect-ratio:4/3;border-radius:0;width:100%;display:block;height:auto!important}.project-card-skel-media-abs{z-index:1;aspect-ratio:auto;border-radius:0;position:absolute;inset:0;height:100%!important}.project-card-skel-title{border-radius:6px;margin:10px 10px 0;display:block}.project-card-skel-line{border-radius:5px;margin:6px 10px 0;display:block}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 8px 8px;display:grid}@media (width>=600px){.projects-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=900px){.projects-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=379px){.projects-grid{grid-template-columns:1fr}}.project-card{color:var(--bk-ink);font:inherit;text-align:left;background:#fff;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;align-items:stretch;margin:0;padding:0 0 10px;display:flex;overflow:hidden;box-shadow:0 1px 2px #0f172a0a}.project-card-media{aspect-ratio:4/3;background:var(--bk-brand-soft);width:100%;position:relative;overflow:hidden}.project-card-media img,.project-card-placeholder{object-fit:cover;width:100%;height:100%;display:block}.project-card-media img.is-loading{opacity:0}.project-card-media img.is-ready{opacity:1;transition:opacity .2s}.project-card-placeholder{background:linear-gradient(135deg,#d7e6db,#eef5f0)}.project-card-badge{background:var(--bk-brand-dark);color:#fff;z-index:2;border-radius:6px;padding:3px 8px;font-size:11px;font-weight:700;line-height:1.2;position:absolute;top:8px;left:8px}.project-card-type{z-index:2;color:#fff;letter-spacing:-.1px;background:#475569;border-radius:999px;padding:4px 9px;font-size:11px;font-weight:700;line-height:1.2;position:absolute;top:8px;right:8px;box-shadow:0 4px 12px #0f172a2e}.project-card-type-scratch{background:#f97316}.project-card-type-python{background:#10b981}.project-card-type-web{background:#06b6d4}.project-card-type-model{background:#8b5cf6}.project-card-type-roblox{background:#f43f5e}.project-card-type-gif{background:#ec4899}.project-card-type-image{background:#10b981}.project-card-type-video{background:#6366f1}.project-card-type-archive{background:#64748b}.project-card-type-file{background:#475569}.project-card>strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.6em;margin:8px 10px 0;font-size:13px;font-weight:700;line-height:1.3;display:-webkit-box;overflow:hidden}.project-card-author{color:var(--bk-muted);text-overflow:ellipsis;white-space:nowrap;margin:2px 10px 0;font-size:11px;overflow:hidden}.project-card-meta{color:var(--bk-brand-dark);align-items:center;gap:12px;margin:8px 10px 0;display:flex}.project-card-stat{letter-spacing:-.2px;align-items:center;gap:5px;font-size:15px;font-weight:700;line-height:1.2;display:inline-flex}.project-card-stat>span[aria-hidden=true]{opacity:.85}.project-detail-cover{background:#e8ece9;border-radius:14px;width:100%;display:block}.project-detail-head h1{letter-spacing:-.02em;margin:0;font-size:22px;font-weight:700}.project-detail-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:4px;display:flex}.project-detail-chip{background:var(--bk-brand-soft);color:var(--bk-brand-dark);border:0;border-radius:999px;align-items:center;gap:6px;padding:8px 12px;font-size:14px;font-weight:650;display:inline-flex}.project-detail-chip.is-static{color:var(--bk-muted);background:#3c3c4314}.project-detail-chip.is-liked{color:#ff3b30;background:#ff3b301f}.project-detail-error{color:var(--bk-danger);margin:0;font-size:14px}.project-comments h2{margin:8px 0 0;font-size:18px;font-weight:700}.project-comments-empty{min-height:80px;padding:12px 0}.project-comments-list{flex-direction:column;gap:10px;display:flex}.project-comment{background:#fff;border-radius:14px;flex-direction:column;gap:6px;padding:12px;display:flex;box-shadow:0 0 0 .55px #3c3c431f}.project-comment.is-reply{margin-left:20px}.project-comment-top{align-items:center;gap:10px;display:flex}.project-comment-avatar{background:var(--bk-brand);isolation:isolate;border-radius:50%;flex:0 0 36px;width:36px;height:36px;position:relative;overflow:hidden}.project-comment-avatar-fallback{color:#fff;justify-content:center;align-items:center;font-size:14px;font-weight:700;line-height:1;display:flex;position:absolute;inset:0}.project-comment-avatar img{object-fit:cover;object-position:center center;border:0;width:100%;height:100%;display:block;position:absolute;inset:0}.project-comment-heading{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.project-comment-heading strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;overflow:hidden}.project-comment-heading span{color:var(--bk-muted);font-size:11px}.project-comment-reply-hint{color:var(--bk-muted);font-size:11px;font-style:normal}.project-comment-text{white-space:pre-wrap;word-break:break-word;margin:0;font-size:14px;line-height:1.35}.project-comment-ops{flex-wrap:wrap;justify-content:flex-end;gap:4px 8px;margin-top:2px;display:flex}.project-comment-ops button{color:var(--bk-brand-dark);background:0 0;border:0;align-items:center;gap:4px;padding:4px 8px;font-size:12px;font-weight:700;display:inline-flex}.project-comment-ops button.is-danger{color:var(--bk-danger)}.project-comment-composer{flex-direction:column;gap:10px;margin-top:8px;display:flex}.project-comment-field{box-sizing:border-box;background:#fff;border-radius:14px;flex-wrap:wrap;align-items:flex-start;gap:8px;width:100%;padding:8px 10px;display:flex;box-shadow:0 0 0 .55px #3c3c432e}.project-comment-chip{background:var(--bk-brand-soft);max-width:55%;color:var(--bk-brand-dark);border-radius:999px;flex:0 auto;align-items:center;gap:2px;margin-top:2px;padding:4px 4px 4px 10px;font-size:12px;font-weight:700;line-height:1.2;display:inline-flex}.project-comment-chip.is-edit{color:var(--bk-muted);background:#3c3c431a}.project-comment-chip>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-comment-chip button{width:22px;height:22px;color:inherit;background:0 0;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.project-comment-chip button ion-icon{font-size:14px}.project-comment-field textarea{box-sizing:border-box;width:auto;min-width:120px;color:var(--bk-ink);font:inherit;resize:vertical;box-shadow:none;background:0 0;border:0;border-radius:0;outline:none;flex:140px;padding:6px 2px;font-size:16px;line-height:1.35}.project-comment-edit{box-sizing:border-box;width:100%;color:var(--bk-ink);font:inherit;resize:vertical;background:#fff;border:0;border-radius:14px;outline:none;padding:12px 14px;font-size:16px;line-height:1.35;box-shadow:0 0 0 .55px #3c3c432e}.projects-more{width:calc(100% - 32px);color:var(--bk-brand);font:inherit;background:#fff;border:0;border-radius:12px;margin:8px auto 0;padding:12px 16px;font-size:15px;font-weight:600;display:block}.projects-more:disabled{opacity:.5}.shop-screen{padding-bottom:20px}.shop-heading{justify-content:space-between;align-items:flex-start;gap:12px;padding:10px 16px 4px;display:flex}.shop-heading h1{color:var(--bk-ink);margin:0;font-size:20px;font-weight:700}.shop-heading p{color:var(--bk-muted);margin:2px 0 0;font-size:13px}.shop-coins{background:var(--bk-card);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;min-width:78px;padding:8px 14px;display:flex;box-shadow:0 1px 2px #0f172a0a}.shop-coins span{color:var(--bk-muted);font-size:11px;font-weight:700}.shop-coins strong{color:var(--bk-brand-dark);font-size:18px;font-weight:700;line-height:1.2}.shop-filters{grid-template-columns:1fr 1fr;gap:10px;padding:10px 16px 8px;display:grid}.shop-filter{background:var(--bk-card);color:var(--bk-ink);border-radius:14px;flex-direction:column;gap:4px;margin:0;padding:8px 12px;font-size:12px;font-weight:700;display:flex;box-shadow:0 1px 2px #0f172a0a}.shop-filter select{width:100%;color:var(--bk-ink);font:inherit;background:0 0;border:0;outline:none;font-size:13px;font-weight:600}.shop-status{color:var(--bk-brand-dark);margin:0 16px 8px;font-size:14px}.shop-error{color:var(--bk-danger);margin:0 16px 8px;font-size:14px}.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 10px 8px;display:grid}@media (width>=600px){.shop-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=900px){.shop-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.shop-card{color:var(--bk-ink);font:inherit;text-align:left;background:#fff;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;align-items:stretch;margin:0;padding:0 0 10px;display:flex;overflow:hidden;box-shadow:0 1px 2px #0f172a0a}.shop-card-media{background:var(--bk-brand-soft);width:100%;height:120px;position:relative;overflow:hidden}.shop-card-media img,.shop-card-placeholder{object-fit:cover;width:100%;height:100%;display:block}.shop-card-media img.is-loading{opacity:0}.shop-card-media img.is-ready{opacity:1;transition:opacity .2s}.shop-card-placeholder{background:linear-gradient(135deg,#d7e6db,#eef5f0)}.shop-card-badge{z-index:2;background:var(--bk-brand-dark);color:#fff;border-radius:6px;padding:3px 8px;font-size:11px;font-weight:700;line-height:1.2;position:absolute;top:8px;left:8px}.shop-card>strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.4em;margin:8px 10px 0;font-size:14px;font-weight:700;line-height:1.25;display:-webkit-box;overflow:hidden}.shop-card-desc{color:var(--bk-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:2px 10px 0;font-size:12px;line-height:1.3;display:-webkit-box;overflow:hidden}.shop-card-price{color:var(--bk-brand-dark);margin:6px 10px 0;font-size:13px;font-weight:700}.shop-card-rub{color:var(--bk-muted);margin:0 10px;font-size:12px}.shop-card-skeleton{pointer-events:none}.shop-card-skel-media{border-radius:0;width:100%;display:block;height:120px!important}.shop-card-skel-media-abs{position:absolute;inset:0;height:auto!important}.shop-card-skel-title,.shop-card-skel-line{border-radius:5px;margin:8px 10px 0;display:block}.shop-detail-image{object-fit:cover;background:var(--bk-brand-soft);border-radius:12px;width:100%;max-height:220px;display:block}.shop-detail-placeholder{height:180px}.shop-detail-price{color:var(--bk-brand-dark);margin:0;font-size:16px;font-weight:700}.simple-list-screen{padding-bottom:24px}.simple-list-heading{padding:10px 16px 4px}.simple-list-heading h1{color:var(--bk-ink);margin:0;font-size:20px;font-weight:700}.simple-list-heading p{color:var(--bk-muted);margin:2px 0 0;font-size:13px}.simple-list-error{color:var(--bk-danger);margin:0 16px 8px;font-size:14px}.simple-list-rows{flex-direction:column;gap:10px;padding:12px 16px 8px;display:flex}.simple-row{color:var(--bk-ink);background:#fff;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;gap:4px;margin:0;padding:14px;display:flex;box-shadow:0 1px 2px #0f172a0a}.simple-row>strong{font-size:15px;font-weight:700;line-height:1.3}.simple-row-meta{color:var(--bk-muted);font-size:12px;line-height:1.35}.simple-row-body{color:#334155;white-space:pre-line;margin-top:2px;font-size:14px;line-height:1.4}.simple-row.tone-summary{color:#14532d;background:#f0fdf4;border-color:#86efac}.simple-row.tone-summary .simple-row-meta,.simple-row.tone-summary .simple-row-body{color:#166534}.simple-row.tone-positive{color:#166534;background:#ecfdf5;border-color:#86efac}.simple-row.tone-positive .simple-row-meta,.simple-row.tone-positive .simple-row-body{color:#15803d}.simple-row.tone-negative{color:#991b1b;background:#fef2f2;border-color:#fecaca}.simple-row.tone-negative .simple-row-meta,.simple-row.tone-negative .simple-row-body{color:#b91c1c}.simple-row.tone-warning{color:#92400e;background:#fffbeb;border-color:#fde68a}.simple-row.tone-warning .simple-row-meta,.simple-row.tone-warning .simple-row-body{color:#b45309}.simple-row.tone-info{color:#1e40af;background:#eff6ff;border-color:#bfdbfe}.simple-row.tone-info .simple-row-meta,.simple-row.tone-info .simple-row-body{color:#1d4ed8}.ios-form{padding:8px 0 28px}.ios-form-list{background:0 0;margin-top:20px}.ios-form-list.list-inset{background:0 0;margin-inline:16px}.ios-form-list ion-item{--background:#fff;--padding-start:18px;--inner-padding-end:18px;--min-height:52px;--border-color:#3c3c4338;font-size:18px}.ios-form-list ion-item:first-of-type{--border-radius:14px 14px 0 0;border-radius:14px 14px 0 0;overflow:hidden}.ios-form-list ion-item:last-of-type{--border-radius:0 0 14px 14px;border-radius:0 0 14px 14px;overflow:hidden}.ios-form-list ion-item:only-of-type,.ios-form-list ion-item:first-of-type:last-of-type{--border-radius:14px;border-radius:14px;overflow:hidden}.ios-form-list ion-list-header{color:#3c3c4399;letter-spacing:-.08px;text-transform:none;background:0 0;min-height:30px;margin-bottom:6px;padding-inline:18px;font-size:14px}.ios-form-list ion-list-header ion-label{margin:0}.ios-form-input{--padding-top:14px;--padding-bottom:14px;--padding-start:0;--padding-end:0;--color:#000;--placeholder-color:#3c3c434d;--placeholder-opacity:1;letter-spacing:-.4px;font-size:18px;line-height:24px}.ios-form-input input,.ios-form-input native-input,.ios-form-input .native-input{letter-spacing:-.4px;font-size:18px!important;line-height:24px!important}.ios-form-input input::placeholder,.ios-form-input native-input::placeholder,.ios-form-input .native-input::placeholder{letter-spacing:-.4px;font-size:18px;font-weight:400;color:#3c3c434d!important;opacity:1!important}.ios-form-balance{margin:12px 0;font-size:18px;font-weight:600;color:var(--bk-brand)!important}.ios-form-hint{width:100%;color:var(--bk-brand-dark);padding:4px 0 14px;font-size:14px;line-height:1.35;display:block}.ios-form-status{padding:6px 34px 0;display:block}.ios-form-status p{margin:0;font-size:16px;line-height:1.35}.ios-form-success{--color:var(--bk-brand-dark);color:var(--bk-brand-dark)}.ios-form-action-item{--min-height:52px;--inner-padding-end:18px;--padding-start:18px}.ios-form-action{width:100%;min-height:52px;color:var(--bk-brand);font:inherit;letter-spacing:-.4px;text-align:left;background:0 0;border:0;justify-content:flex-start;align-items:center;margin:0;padding:0;font-size:18px;font-weight:400;display:flex}.ios-form-action:disabled{opacity:.45}.ios-form-action ion-spinner{width:24px;height:24px;color:var(--bk-brand);--color:var(--bk-brand)}.chat-content{flex-direction:column;min-height:100%;display:flex}.chat-messages{flex-direction:column;flex:1;gap:10px;padding:16px;display:flex}.bubble{white-space:pre-wrap;background:#fff;border-radius:18px;max-width:84%;padding:10px 13px}.bubble.user{color:#fff;background:var(--bk-brand);border-bottom-right-radius:5px;margin-left:auto}.bubble.bot{border-bottom-left-radius:5px}.assistant-page{--background:var(--bk-card)}.assistant-page ion-content.assistant-content{--background:var(--bk-card);--padding-start:0;--padding-end:0;--padding-top:0;--padding-bottom:0;flex:1}.assistant-page ion-content.assistant-content::part(scroll){flex-direction:column;height:100%;display:flex;position:relative}.assistant-shell{flex-direction:column;flex:1;width:100%;height:100%;min-height:0;display:flex;position:relative}.assistant-peer-bar{--background:#ffffffeb;--border-width:0 0 .55px;--border-color:#3c3c432e;--min-height:58px}.assistant-peer{align-items:center;gap:12px;width:100%;padding:4px 4px 6px;display:flex}.assistant-peer-copy{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.assistant-peer-copy strong{letter-spacing:-.02em;font-size:17px;font-weight:650}.assistant-peer-copy span{min-width:0;color:var(--bk-muted);align-items:center;gap:6px;font-size:12px;line-height:1.2;display:inline-flex}.assistant-dot{background:#ff9f0a;border-radius:50%;flex:none;width:8px;height:8px}.assistant-dot.ok{background:#34c759}.assistant-student{flex-direction:column;align-items:flex-end;gap:4px;max-width:42%;display:flex}.assistant-student span{color:var(--bk-brand-dark);text-align:right;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:12px;line-height:1.2;overflow:hidden}.assistant-avatar{background:var(--bk-brand-soft);color:var(--bk-brand);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.assistant-avatar img{object-fit:cover;width:100%;height:100%}.assistant-avatar ion-icon{width:45%;height:45%;font-size:.45em}.assistant-messages{-webkit-overflow-scrolling:touch;flex-direction:column;flex:auto;gap:12px;min-height:0;padding:12px 16px 16px;display:flex;overflow:hidden auto}.assistant-empty{text-align:center;max-width:280px;color:var(--bk-muted);flex-direction:column;align-items:center;gap:10px;margin:24px auto 0;display:flex}.assistant-empty ion-icon{color:var(--bk-brand);font-size:36px}.assistant-empty h2{color:var(--bk-ink,#111);letter-spacing:-.02em;margin:0;font-size:17px;font-weight:650}.assistant-empty p{margin:0;font-size:14px;line-height:1.35}.assistant-row{align-items:flex-start;gap:8px;display:flex}.assistant-row.bot{justify-content:flex-start;padding-right:40px}.assistant-row.user{justify-content:flex-end;padding-left:40px}.assistant-bubble{white-space:pre-wrap;word-break:break-word;border-radius:18px;max-width:min(78%,340px);padding:10px 14px;box-shadow:0 1px 2px #0000000a}.assistant-bubble.user{background:var(--bk-brand);color:#fff;border-bottom-right-radius:6px}.assistant-bubble.bot{color:var(--bk-ink,#111);background:#fff;border-bottom-left-radius:6px}.assistant-bubble-text{margin:0;font-size:16px;line-height:1.35}.assistant-card-body{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.assistant-card-body strong{font-size:15px;font-weight:650}.assistant-card-body span,.assistant-card-body em{color:var(--bk-muted);font-size:13px;font-style:normal;font-weight:600}.assistant-bubble.user .assistant-card-body span,.assistant-bubble.user .assistant-card-body em{color:#ffffffd1}.assistant-card-body ul{margin:0;padding-left:18px}.assistant-card-body li{margin:2px 0;font-size:15px}.assistant-project-image{object-fit:cover;border-radius:10px;width:100%;max-height:100px}.assistant-media-btn{background:0 0;border:0;max-width:240px;padding:0;display:block}.assistant-media-btn img{border-radius:12px;width:100%;display:block}.assistant-link-btn{color:var(--bk-brand);background:0 0;border:0;padding:0;font-size:13px;font-weight:650}.assistant-bubble.user .assistant-link-btn{color:#fff}.assistant-variants-label{font-size:12px!important;font-weight:500!important}.assistant-inline-actions{flex-direction:column;gap:8px;width:100%;display:flex}.assistant-chip-block{text-align:left;background:var(--bk-brand-soft);width:100%;color:var(--bk-brand-dark);border:0;border-radius:12px;padding:10px 12px;font-size:14px;font-weight:600}.assistant-composer{padding-bottom:max(8px, env(safe-area-inset-bottom,0px));background:#fffffff5;border-top:.55px solid #3c3c432e;flex:none}.assistant-footer{padding-bottom:env(safe-area-inset-bottom,0px);background:#fffffff0;border-top:.55px solid #3c3c432e}.assistant-status{color:var(--bk-muted);align-items:center;gap:8px;padding:8px 16px;font-size:12px;display:flex}.assistant-status ion-spinner{width:16px;height:16px;color:var(--bk-brand);--color:var(--bk-brand)}.assistant-quick-actions{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:8px;padding:8px 16px;display:flex;overflow-x:auto}.assistant-quick-actions::-webkit-scrollbar{display:none}.assistant-chip{background:var(--bk-brand-soft);color:var(--bk-brand-dark);white-space:nowrap;border:0;border-radius:999px;flex:none;padding:8px 14px;font-size:14px;font-weight:600}.assistant-chip:disabled{opacity:.5}.assistant-input-bar{align-items:flex-end;gap:10px;padding:10px 12px 12px;display:flex}.assistant-input{resize:none;background:var(--bk-card);min-height:40px;max-height:120px;color:var(--bk-ink,#111);font:inherit;border:0;border-radius:18px;outline:none;flex:1;padding:10px 14px;font-size:16px;line-height:1.3}.assistant-input:disabled{opacity:.65}.assistant-send{color:#5c5c5c59;background:0 0;border:0;justify-content:center;align-items:center;width:36px;height:36px;margin-bottom:2px;padding:0;display:inline-flex}.assistant-send.ready{color:var(--bk-brand)}.assistant-send ion-icon{font-size:34px}.game-player{touch-action:none;overscroll-behavior:none;box-sizing:border-box;background:#000;overflow:hidden}.game-player-host{touch-action:none;pointer-events:auto;isolation:isolate;z-index:2147483646!important;background:#000!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important;position:fixed!important;inset:0!important;overflow:hidden!important}html.game-landscape-active,html.game-landscape-active body,html.game-css-landscape,html.game-css-landscape body{background:#000!important;overflow:hidden!important}.game-player .game-joystick-zone{z-index:6;touch-action:none;filter:drop-shadow(0 6px 14px #00000073);box-sizing:border-box;position:absolute}.game-player .game-action-pad{z-index:6;touch-action:none;filter:drop-shadow(0 6px 14px #00000073);box-sizing:border-box;flex-direction:column;justify-content:flex-end;align-items:flex-end;gap:10px;display:flex;position:absolute}.game-player .game-player-close,.game-player .game-player-restart{z-index:7;color:#fff;background:#121620e0;border:0;border-radius:14px;place-items:center;width:44px;height:44px;font-size:24px;display:grid;position:absolute;box-shadow:0 4px 16px #00000073,0 0 0 2px #ffffffbf}.game-player-stage{z-index:1;background:#000;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.game-player-frame{background:#000;border:0;width:100%;height:100%;position:absolute;inset:0}.game-player-loading{z-index:3;color:#ffffffe6;pointer-events:none;background:#0000008c;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:12px 16px;font-size:14px;font-weight:700;display:flex;position:absolute;top:18%;left:50%;transform:translate(-50%,-50%)}.game-joystick-ghost,.game-joystick-base,.game-joystick-knob{pointer-events:none;border-radius:50%;position:absolute;transform:translate(-50%,-50%)}.game-joystick-ghost,.game-joystick-base{width:42%;min-width:64px;max-width:96px;height:42%;min-height:64px;max-height:96px}.game-joystick-ghost{background:#121620b8;border:3px solid #121620f2;box-shadow:0 0 0 3px #ffffffeb,0 8px 22px #0006}.game-joystick-ghost:after{content:"";background:#fffffff5;border:2.5px solid #ffc857;border-radius:50%;position:absolute;inset:28%;box-shadow:0 2px 8px #00000047}.game-joystick-base{background:#121620c7;border:3px solid #121620fa;box-shadow:0 0 0 3px #ffffffeb,inset 0 0 0 1px #ffffff40,0 8px 22px #0006}.game-joystick-base:after{content:"";border:2px solid #ffffff73;border-radius:50%;position:absolute;inset:22%}.game-joystick-knob{background:#fff;border:3px solid #ffc857;width:18%;min-width:28px;max-width:40px;height:18%;min-height:28px;max-height:40px;box-shadow:0 0 0 2px #121620d9,0 4px 14px #0006}.game-action-btn{color:#fff;touch-action:none;-webkit-user-select:none;user-select:none;border:0;border-radius:50%;flex:none;font-size:18px;font-weight:800}.game-action-btn.is-b{background:linear-gradient(160deg,#4a5568,#1b2230);border:3px solid #141820;width:48px;height:48px;box-shadow:0 0 0 3px #ffffffeb,0 6px 18px #0006}.game-action-btn.is-a{color:#1a1208;background:linear-gradient(160deg,#ffe08a,#ffc857);border:3px solid #141820;width:58px;height:58px;font-size:20px;box-shadow:0 0 0 3px #ffffffeb,0 6px 18px #0006}.game-action-btn:active{opacity:1;transform:scale(.94)}.avatar{object-fit:cover;border-radius:50%;width:64px;height:64px}.settings-page ion-content{--background:#f2f2f7}.ios-settings{padding:6px 0 calc(28px + var(--ion-safe-area-bottom,env(safe-area-inset-bottom,0px)))}.ios-settings-list{background:0 0;margin:0 0 28px}.ios-settings-list.list-inset{margin-inline:16px}.ios-settings-list ion-item{--background:#fff;--padding-start:16px;--inner-padding-end:14px;--min-height:48px;--border-color:#3c3c432e;--detail-icon-opacity:.3;letter-spacing:-.4px;font-size:17px}.ios-settings-list ion-item:first-of-type{--border-radius:12px 12px 0 0;border-radius:12px 12px 0 0;overflow:hidden}.ios-settings-list ion-item:last-of-type{--border-radius:0 0 12px 12px;border-radius:0 0 12px 12px;overflow:hidden}.ios-settings-list ion-item:only-of-type,.ios-settings-list ion-item:first-of-type:last-of-type{--border-radius:12px;border-radius:12px;overflow:hidden}.ios-settings-row{--min-height:64px;--padding-top:8px;--padding-bottom:8px}.ios-settings-row ion-label h2{letter-spacing:-.4px;color:var(--bk-ink);margin:0;font-size:17px;font-weight:400}.ios-settings-row ion-label p{letter-spacing:-.08px;color:#3c3c4399;margin:2px 0 0;font-size:13px;line-height:16px}.ios-settings-icon{color:#fff;border-radius:7px;flex-shrink:0;place-items:center;width:30px;height:30px;margin-inline-end:14px;display:grid}.ios-settings-icon ion-icon{width:18px;height:18px}.ios-settings-chevron{color:#3c3c434d;width:18px;height:18px;margin-inline-start:6px}.ios-settings-logout{--min-height:48px}.ios-settings-logout ion-label{letter-spacing:-.4px;font-size:17px;font-weight:400}.ios-settings-footer{text-align:center;color:#3c3c4373;letter-spacing:-.08px;margin:8px 0 0;padding:0 32px;font-size:13px;line-height:18px}.ios-settings-hint{color:#3c3c4399;letter-spacing:-.08px;margin:-16px 32px 24px;font-size:13px;line-height:18px}.ios-settings-header{color:#3c3c4399;letter-spacing:-.08px;text-transform:none;background:0 0;min-height:28px;margin:0 0 6px;padding-inline:32px;font-size:13px}.ios-settings-header ion-label{margin:0}.ios-settings-profile{--min-height:84px;--padding-top:14px;--padding-bottom:14px}.ios-settings-avatar{object-fit:cover;background:#e5e5ea;border-radius:50%;width:60px;height:60px;margin-inline-end:14px}.ios-settings-profile ion-label h2{letter-spacing:-.45px;margin:0;font-size:20px;font-weight:600}.ios-settings-profile ion-label p{color:#3c3c4399;margin:2px 0 0;font-size:15px}.ios-settings-note-ellip{text-overflow:ellipsis;white-space:nowrap;max-width:56%;overflow:hidden}.ios-settings-swatch{border-radius:10px;width:100%;height:48px;margin:8px 0 4px}.ios-settings-slider{--padding-top:4px;--padding-bottom:8px}.ios-settings-slider ion-label{color:#3c3c4399;margin-bottom:2px;font-size:13px}.ios-settings-slider ion-range{width:100%;padding-inline:0}@media (prefers-color-scheme:dark){.settings-page ion-content{--background:#000}.ios-settings-list ion-item{--background:#1c1c1e;--border-color:#545458a6}.ios-settings-row ion-label p,.ios-settings-hint,.ios-settings-header,.ios-settings-footer,.ios-settings-profile ion-label p,.ios-settings-slider ion-label{color:#ebebf58c}.ios-settings-chevron{color:#ebebf54d}.ios-settings-avatar{background:#2c2c2e}:root{--bk-page:#000;--bk-card:#1c1c1e;--bk-ink:#fff;--bk-muted:#aeaeb2;--bk-glass:#262629b8;--bk-glass-strong:#2d2d30db;--bk-glass-border:#ffffff1f;--bk-glass-shadow:0 12px 38px #0000004d;--ion-background-color:#000;--ion-text-color:#fff}ion-toolbar,ion-tab-bar,.bk-card,.metric,.bubble.bot,.assistant-bubble.bot,.assistant-peer-bar,.assistant-composer,.assistant-footer{--background:#1c1c1ef5;background:#1c1c1e}.assistant-input{color:#fff;background:#2c2c2e}.assistant-chip,.assistant-chip-block{color:#c8e6d0;background:#3a6b4a47}.assistant-empty h2{color:#fff}.home-page ion-content{--background:#000}.ios-tab-bar{--background:#1c1c1ef0;background:#1c1c1ef0;border-top-color:#545458a6}.home-notification ion-badge{border-color:#000}.home-course-row{background:#1e2a21}.shop-card,.project-card,.shop-coins,.shop-filter,.simple-row,.attendance-summary>div{background:#1c1c1e;border-color:#545458a6}.attendance-summary span{color:#ebebf58c}}

.certs-page ion-content{--background:var(--bk-page)}.certs-screen{padding-bottom:calc(20px + var(--ion-safe-area-bottom,env(safe-area-inset-bottom,0px)))}.certs-heading{padding:10px 16px 8px}.certs-heading h1{color:var(--bk-ink);letter-spacing:-.4px;margin:0;font-family:"SF Pro Display","SF Pro Text",-apple-system,BlinkMacSystemFont,"Helvetica Neue",sans-serif;font-size:28px;font-weight:700;line-height:1.15}.certs-heading p{color:var(--bk-muted);margin:4px 0 0;font-size:13px;font-weight:500}.certs-grid{grid-template-columns:1fr;gap:12px;padding:4px 16px 8px;display:grid}@media (min-width:520px){.certs-grid{grid-template-columns:1fr 1fr}}.certs-card{color:inherit;font:inherit;text-align:left;background:#fff;border:0;border-radius:16px;flex-direction:column;align-items:stretch;gap:0;margin:0;padding:0 0 12px;display:flex;overflow:hidden;box-shadow:0 1px 2px #0f172a0a;-webkit-tap-highlight-color:transparent}.certs-card:active{transform:scale(.985);opacity:.96}.certs-card-media{aspect-ratio:1.414/1;background:linear-gradient(180deg,var(--bk-brand-soft),#eef2f0);width:100%;position:relative;overflow:hidden}.certs-card-media img{object-fit:cover;object-position:center top;width:100%;height:100%;display:block}.certs-card-ph{color:var(--bk-brand);width:100%;height:100%;display:grid;place-items:center}.certs-card-ph ion-icon,.certs-card-ph svg{width:42px;height:42px;opacity:.85}.certs-card-ph.is-lg ion-icon,.certs-card-ph.is-lg svg{width:64px;height:64px}.certs-card strong{color:var(--bk-ink);letter-spacing:-.2px;margin:10px 12px 0;font-size:16px;font-weight:650;line-height:1.25}.certs-card p{color:var(--bk-muted);margin:4px 12px 0;font-size:13px;line-height:1.3}.certs-grid-skeleton{pointer-events:none}.certs-card-skeleton{min-height:210px}.certs-skel-media{aspect-ratio:1.414/1;border-radius:0;display:block}.certs-skel-title,.certs-skel-line{margin:10px 12px 0;border-radius:6px;display:block}.certs-skel-line{margin-top:8px}.certs-modal .certs-dialog{padding-bottom:calc(18px + var(--ion-safe-area-bottom,env(safe-area-inset-bottom,0px)))}.certs-dialog-meta{color:var(--bk-muted);text-align:center;margin:-4px 0 12px;font-size:13px}.certs-viewer-frame{background:#f2f2f7;border-radius:14px;margin:0 0 14px;overflow:hidden}.certs-viewer-frame img{object-fit:contain;width:100%;max-height:min(58vh,520px);display:block;margin:0 auto;background:#fff}.certs-dialog-actions{gap:10px;display:grid}.certs-btn{appearance:none;font:inherit;border:0;border-radius:14px;min-height:48px;padding:12px 16px;font-size:17px;font-weight:600;-webkit-tap-highlight-color:transparent}.certs-btn-primary{color:#fff;background:var(--bk-brand)}.certs-btn-primary:active{background:var(--bk-brand-dark)}.certs-btn-secondary{color:var(--bk-ink);background:#e5e5ea}.certs-btn-secondary:active{opacity:.85}.empty-state span{color:var(--bk-muted);font-size:14px;line-height:1.35;max-width:260px}
.online-page ion-content{--background:var(--bk-page)}.online-screen{gap:18px;max-width:520px;margin:0 auto;display:grid}.online-hero{text-align:center;gap:8px;padding:8px 8px 4px;display:grid}.online-hero-icon{color:var(--bk-brand);background:var(--bk-brand-soft);border-radius:28px;width:72px;height:72px;margin:0 auto;display:grid;place-items:center}.online-hero-icon ion-icon,.online-hero-icon svg{width:36px;height:36px}.online-hero h1{color:var(--bk-ink);letter-spacing:-.3px;margin:4px 0 0;font-size:28px;font-weight:700;line-height:1.15}.online-hero p{color:var(--bk-muted);margin:0 auto;max-width:280px;font-size:15px;line-height:1.35}.online-scan-btn{appearance:none;color:#fff;cursor:pointer;background:var(--bk-brand);border:0;border-radius:16px;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:14px 18px;font:inherit;font-size:17px;font-weight:650;display:flex;-webkit-tap-highlight-color:transparent}.online-scan-btn ion-icon,.online-scan-btn svg{width:22px;height:22px}.online-scan-btn:active{background:var(--bk-brand-dark);transform:scale(.985)}.online-or{color:var(--bk-muted);align-items:center;gap:12px;margin:2px 0;font-size:13px;font-style:normal;display:flex}.online-or span{background:var(--bk-separator);height:1px;flex:1}.online-or em{font-style:normal}.online-code{--border-radius:14px;--background:#fff}.online-join{margin-top:2px}.online-error{color:var(--bk-danger);margin:0;font-size:14px;line-height:1.35}.online-hint{margin:0;font-size:14px;line-height:1.35}.online-scanner{z-index:10000;background:#000;position:fixed;inset:0;display:flex;flex-direction:column}.online-scanner-video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.online-scanner-frame{pointer-events:none;border:2px solid #ffffffd9;border-radius:24px;width:min(72vw,280px);aspect-ratio:1;margin:auto;box-shadow:0 0 0 9999px #00000073;position:relative;z-index:1}.online-scanner-ui{z-index:2;box-sizing:border-box;background:linear-gradient(180deg,transparent,#000000e6 46%);padding:24px 20px calc(24px + var(--ion-safe-area-bottom,env(safe-area-inset-bottom,0px)));position:absolute;left:0;right:0;bottom:0;display:grid;gap:14px;justify-items:center}.online-scanner-ui p{text-align:center;color:#fff;margin:0;max-width:280px;font-size:15px;line-height:1.35}.online-scanner-close{appearance:none;color:var(--bk-ink);cursor:pointer;background:#fff;border:0;border-radius:14px;min-height:48px;min-width:160px;padding:12px 18px;font:inherit;font-size:17px;font-weight:600;-webkit-tap-highlight-color:transparent}.online-scanner-close:active{opacity:.88}
/* Larger tap target for toolbar back (Ionic ios mode defaults ~32px / icon-width) */
ion-header ion-buttons[slot="start"]{
  margin:0;
  min-width:52px;
  min-height:44px;
  align-items:center;
}
ion-back-button{
  --min-width:52px;
  --min-height:44px;
  --padding-start:10px;
  --padding-end:14px;
  --padding-top:8px;
  --padding-bottom:8px;
  --icon-margin-start:0;
  --icon-margin-end:0;
  --icon-font-size:30px;
  --border-radius:12px;
  min-width:52px !important;
  min-height:44px !important;
  width:52px;
  height:44px;
  margin:0;
  display:block;
}
ion-back-button.show-back-button,
ion-back-button.ion-activated,
.can-go-back>ion-header ion-back-button{
  min-width:52px !important;
  min-height:44px !important;
}
ion-back-button::part(native){
  min-width:52px;
  min-height:44px;
  padding-inline:10px 14px;
  padding-block:8px;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:center;
}
/* Freelance cards — project-grid layout, native Ionic chrome */
.freelance-screen{padding-bottom:calc(20px + var(--ion-safe-area-bottom,env(safe-area-inset-bottom,0px)))}
.freelance-card{padding-bottom:12px}
.freelance-card.is-taken{opacity:.72}
.freelance-cover{display:grid;place-items:center;background:linear-gradient(135deg,#e5e7eb,#9ca3af)}
.freelance-cover-scratch{background:linear-gradient(135deg,#fde68a,#f59e0b)}
.freelance-cover-web{background:linear-gradient(135deg,#a7f3d0,#10b981)}
.freelance-cover-python{background:linear-gradient(135deg,#ddd6fe,#8b5cf6)}
.freelance-cover-roblox{background:linear-gradient(135deg,#bfdbfe,#3b82f6)}
.freelance-cover-design{background:linear-gradient(135deg,#fbcfe8,#ec4899)}
.freelance-cover-other{background:linear-gradient(135deg,#e5e7eb,#94a3b8)}
.freelance-emoji{font-size:42px;line-height:1;filter:drop-shadow(0 2px 6px #0000001f)}
.freelance-emoji.is-lg{font-size:52px}
.freelance-taken{background:#64748b!important}
.freelance-price{color:var(--bk-brand-dark);letter-spacing:-.2px;margin:8px 10px 0;font-size:15px;font-weight:700;line-height:1.2;display:block}
.freelance-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--bk-ink);min-height:2.6em;margin:4px 10px 0;font-size:13px;font-weight:700;line-height:1.3;display:-webkit-box;overflow:hidden}
.freelance-modal .freelance-dialog{padding-bottom:calc(18px + var(--ion-safe-area-bottom,env(safe-area-inset-bottom,0px)))}
.freelance-dialog-cover{border-radius:14px;aspect-ratio:16/9;margin:0 0 12px;overflow:hidden}
.freelance-dialog-price{color:var(--bk-brand-dark);letter-spacing:-.3px;margin:0 0 4px;font-size:22px;font-weight:700}
.freelance-dialog h2{color:var(--bk-ink);letter-spacing:-.3px;margin:0 0 4px;font-size:20px;font-weight:700;line-height:1.25}
.freelance-dialog-meta{color:var(--bk-muted);margin:0 0 12px;font-size:13px}
.freelance-dialog-desc{color:#334155;margin:0 0 12px;font-size:15px;line-height:1.4;white-space:pre-line}
.freelance-dialog-tz-title{color:var(--bk-ink);margin:4px 0 6px;font-size:15px;font-weight:700}
.freelance-dialog-tz{color:#475569;margin:0 0 14px;font-size:14px;line-height:1.45;white-space:pre-line}
.freelance-dialog-error{color:var(--bk-danger);margin:0 0 10px;font-size:14px}
.freelance-dialog-taken{color:var(--bk-muted);text-align:center;margin:0 0 8px;font-size:14px}
.project-card-type-design{background:#ec4899}
.project-card-type-other,.project-card-type-file{background:#64748b}
@media (prefers-color-scheme:dark){
.freelance-price,.freelance-dialog-price{color:#8fbf9c}
.freelance-dialog-desc{color:#d1d5db}
.freelance-dialog-tz{color:#9ca3af}
}
/* iOS system alert (UIAlertController) — portaled to body */
.bk-ios-alert-root{
  position:fixed;inset:0;z-index:2147483000;
  display:flex;align-items:center;justify-content:center;
  padding:max(24px, env(safe-area-inset-top)) 28px max(24px, env(safe-area-inset-bottom));
  pointer-events:auto;
  overscroll-behavior:none;
  touch-action:none;
  -webkit-transform:translateZ(0);
  transform:translateZ(0);
}
.bk-ios-alert-backdrop{
  position:absolute;inset:0;
  background:rgba(0,0,0,.45);
  opacity:0;
}
.bk-ios-alert{
  position:relative;z-index:1;
  width:min(340px, calc(100vw - 48px));
  background:rgba(242,242,242,.94);
  -webkit-backdrop-filter:saturate(180%) blur(20px);
  backdrop-filter:saturate(180%) blur(20px);
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 12px 40px rgba(0,0,0,.22);
  opacity:0;
  -webkit-transform:scale(1.2);
  transform:scale(1.2);
  will-change:transform,opacity;
  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
}
.bk-ios-alert-root.is-enter .bk-ios-alert-backdrop{
  animation:bk-ios-alert-fade-in .28s ease forwards;
}
.bk-ios-alert-root.is-enter .bk-ios-alert{
  animation:bk-ios-alert-pop-in .38s cubic-bezier(.16,1.08,.38,1) forwards;
}
.bk-ios-alert-root.is-leave .bk-ios-alert-backdrop{
  animation:bk-ios-alert-fade-out .22s ease forwards;
}
.bk-ios-alert-root.is-leave .bk-ios-alert{
  animation:bk-ios-alert-pop-out .22s cubic-bezier(.4,0,1,1) forwards;
}
@keyframes bk-ios-alert-fade-in{from{opacity:0}to{opacity:1}}
@keyframes bk-ios-alert-fade-out{from{opacity:1}to{opacity:0}}
@keyframes bk-ios-alert-pop-in{
  0%{opacity:0;-webkit-transform:scale(1.2);transform:scale(1.2)}
  100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}
}
@keyframes bk-ios-alert-pop-out{
  0%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}
  100%{opacity:0;-webkit-transform:scale(1.12);transform:scale(1.12)}
}
.bk-ios-alert-body{padding:24px 22px 20px;text-align:center}
.bk-ios-alert-title{
  margin:0;color:#000;
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue",sans-serif;
  font-size:19px;font-weight:600;line-height:1.25;letter-spacing:-.45px
}
.bk-ios-alert-message{
  margin:10px 0 0;color:#000;
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue",sans-serif;
  font-size:15px;font-weight:400;line-height:1.4;letter-spacing:-.1px;
  white-space:pre-line
}
.bk-ios-alert-actions{border-top:.5px solid rgba(60,60,67,.36);display:flex}
.bk-ios-alert-btn{
  appearance:none;flex:1;margin:0;border:0;background:transparent;color:#007aff;
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue",sans-serif;
  font-size:18px;font-weight:600;line-height:1.2;min-height:52px;padding:14px 12px;
  -webkit-tap-highlight-color:transparent
}
.bk-ios-alert-btn:active{background:rgba(0,0,0,.08)}
@media (prefers-color-scheme:dark){
  .bk-ios-alert{background:rgba(30,30,30,.94)}
  .bk-ios-alert-title,.bk-ios-alert-message{color:#fff}
  .bk-ios-alert-actions{border-top-color:rgba(84,84,88,.65)}
  .bk-ios-alert-btn{color:#0a84ff}
  .bk-ios-alert-btn:active{background:rgba(255,255,255,.08)}
}
/* Lock page behind alert without layout jump */
html.bk-ios-alert-open{
  overflow:hidden!important;
  overscroll-behavior:none;
}
html.bk-ios-alert-open body{
  overflow:hidden!important;
  overscroll-behavior:none;
  touch-action:none;
}
html.bk-ios-alert-open ion-content{
  --overflow:hidden!important;
  pointer-events:none!important;
  touch-action:none!important;
}
html.bk-ios-alert-open ion-content::part(scroll){
  overflow:hidden!important;
  overscroll-behavior:none!important;
  touch-action:none!important;
}
html.bk-ios-alert-open .freelance-screen,
html.bk-ios-alert-open ion-router-outlet,
html.bk-ios-alert-open ion-page{
  touch-action:none!important;
  overscroll-behavior:none!important;
}

/* Web viewer */
.web-section-page ion-content{
  --background:var(--bk-page);
  --overflow:hidden;
  position:relative;
}
.web-section-page ion-content::part(scroll){
  position:absolute;
  inset:0;
  overflow:hidden!important;
  overscroll-behavior:none;
}
.web-section-host{
  background:var(--bk-page);
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  min-height:0!important;
  overflow:hidden;
}
.web-section-loader{
  z-index:2;
  background:var(--bk-page);
  place-items:center;
  display:grid;
  position:absolute;
  inset:0;
}
.web-section-host .embed-frame,
.embed-frame{
  background:var(--bk-page);
  border:0;
  display:block;
  width:100%;
  height:100%;
  position:absolute;
  inset:0;
  overflow:auto;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-y;
}
.web-section-host .embed-frame.is-loading{pointer-events:none}

/* Report/document: scroll inside ion-content; do not touch ion-page display/transform */
.web-section-page--doc ion-content{
  --background:#eceae4;
  --overflow:hidden;
}
.web-section-page--doc ion-content::part(scroll){
  position:absolute!important;
  inset:0!important;
  overflow:hidden!important;
  contain:none;
}
.web-section-doc-scroll{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  overflow-x:hidden;
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-y:contain;
  touch-action:pan-y;
  background:#eceae4;
  z-index:1;
  -webkit-overflow-scrolling:touch;
}
.web-section-doc-scroll .web-section-loader{
  position:absolute;
  inset:0;
  background:#eceae4;
}
.web-section-doc-scroll .bk-report-root{
  min-height:100%;
  width:100%;
  padding-bottom:max(160px, calc(120px + env(safe-area-inset-bottom, 0px)));
  box-sizing:border-box;
}
.web-section-doc-scroll .bk-report-root.parent-report{
  background:#eceae4;
}
/* Ensure leaving report page can hide during Ionic transition */
.web-section-page--doc.ion-page-hidden,
.ion-page-hidden.web-section-page--doc{
  display:none!important;
}
.web-section-page--doc.ion-page-invisible{
  opacity:0!important;
}
.splash-root-loader{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}
.splash-root-loader ion-spinner{width:28px;height:28px;color:#fff;--color:#fff}.splash-root-loader .boot-spinner,.splash-ios-spinner{position:relative;box-sizing:border-box;width:32px;height:32px;margin:0;flex:none;border:0;background:transparent;overflow:visible}.splash-root-loader .boot-spinner i,.splash-ios-spinner i{position:absolute;left:50%;top:0;width:3px;height:9px;margin:0 0 0 -1.5px;border-radius:1.5px;background:#fff;opacity:.25;transform-origin:center 16px;animation:boot-ios-fade 1s linear infinite;will-change:opacity}.splash-root-loader .boot-spinner i:nth-child(1),.splash-ios-spinner i:nth-child(1){transform:rotate(0deg);animation-delay:0s}.splash-root-loader .boot-spinner i:nth-child(2),.splash-ios-spinner i:nth-child(2){transform:rotate(30deg);animation-delay:-.0833s}.splash-root-loader .boot-spinner i:nth-child(3),.splash-ios-spinner i:nth-child(3){transform:rotate(60deg);animation-delay:-.1667s}.splash-root-loader .boot-spinner i:nth-child(4),.splash-ios-spinner i:nth-child(4){transform:rotate(90deg);animation-delay:-.25s}.splash-root-loader .boot-spinner i:nth-child(5),.splash-ios-spinner i:nth-child(5){transform:rotate(120deg);animation-delay:-.3333s}.splash-root-loader .boot-spinner i:nth-child(6),.splash-ios-spinner i:nth-child(6){transform:rotate(150deg);animation-delay:-.4167s}.splash-root-loader .boot-spinner i:nth-child(7),.splash-ios-spinner i:nth-child(7){transform:rotate(180deg);animation-delay:-.5s}.splash-root-loader .boot-spinner i:nth-child(8),.splash-ios-spinner i:nth-child(8){transform:rotate(210deg);animation-delay:-.5833s}.splash-root-loader .boot-spinner i:nth-child(9),.splash-ios-spinner i:nth-child(9){transform:rotate(240deg);animation-delay:-.6667s}.splash-root-loader .boot-spinner i:nth-child(10),.splash-ios-spinner i:nth-child(10){transform:rotate(270deg);animation-delay:-.75s}.splash-root-loader .boot-spinner i:nth-child(11),.splash-ios-spinner i:nth-child(11){transform:rotate(300deg);animation-delay:-.8333s}.splash-root-loader .boot-spinner i:nth-child(12),.splash-ios-spinner i:nth-child(12){transform:rotate(330deg);animation-delay:-.9167s}@keyframes boot-ios-fade{0%{opacity:1}100%{opacity:.15}}

/* Native iOS profile tab */
.profile-page ion-content{--background:var(--bk-page)}
.profile-screen{display:grid;gap:14px;padding:8px 16px calc(28px + var(--ion-safe-area-bottom,env(safe-area-inset-bottom,0px)))}
.profile-hero{text-align:center;padding:8px 0 4px}
.profile-avatar-wrap{width:96px;height:96px;margin:0 auto;border-radius:50%;background:var(--bk-brand-soft);position:relative;overflow:hidden}
.profile-avatar{width:100%;height:100%;object-fit:cover;display:block;position:relative;z-index:1;background:#fff}
.profile-avatar-letter{position:absolute;inset:0;place-items:center;display:grid;color:var(--bk-brand-dark);font-size:34px;font-weight:700;background:var(--bk-brand-soft);z-index:0}
.profile-name{margin:12px 0 0;font-size:22px;font-weight:700;letter-spacing:-.35px;color:var(--bk-ink)}
.profile-login{margin:2px 0 0;color:var(--bk-muted);font-size:14px}
.profile-meta{margin:4px 0 0;color:var(--bk-muted);font-size:13px}
.profile-lessons-card{width:100%;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:0;border-radius:16px;background:#fff;box-shadow:0 1px 2px #0f172a0a;font:inherit;color:inherit}
.profile-lessons-card span{display:block;color:var(--bk-muted);font-size:12px;font-weight:700}
.profile-lessons-card small{display:block;margin-top:2px;color:#3c3c4399;font-size:11px}
.profile-lessons-card strong{color:var(--bk-brand-dark);font-size:28px;font-weight:700;letter-spacing:-.4px}
.profile-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.profile-stat{appearance:none;border:0;border-radius:16px;background:#fff;padding:14px;text-align:center;font:inherit;color:inherit;box-shadow:0 1px 2px #0f172a0a}
.profile-stat span{display:block;color:var(--bk-muted);font-size:12px;font-weight:700}
.profile-stat strong{display:block;margin-top:4px;color:var(--bk-brand-dark);font-size:22px;font-weight:700;letter-spacing:-.3px}
.profile-card{background:#fff;border-radius:16px;padding:14px;box-shadow:0 1px 2px #0f172a0a}
.profile-card h2{margin:0;font-size:17px;font-weight:700;letter-spacing:-.2px}
.profile-card-hint{margin:4px 0 0;color:var(--bk-muted);font-size:13px}
.profile-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.profile-card-head h2{margin:0}
.profile-link{appearance:none;border:0;background:0 0;color:var(--bk-brand);font:inherit;font-size:15px;font-weight:600;padding:0}
.profile-qr{display:grid;place-items:center;margin-top:12px;padding:12px;border-radius:14px;background:#fff;border:1px solid #e5e7eb}
.profile-qr canvas{width:168px;height:168px;display:block}
.profile-password{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}
.profile-password code{font-size:16px;letter-spacing:.08em;color:var(--bk-ink)}
.profile-password button{appearance:none;border:0;background:0 0;color:var(--bk-brand);font:inherit;font-size:15px;font-weight:600}
.profile-achievements{display:grid;gap:8px;margin-top:10px}
.profile-ach{border-radius:12px;background:var(--bk-page);padding:10px 12px;opacity:.55}
.profile-ach.is-on{opacity:1;background:var(--bk-brand-soft)}
.profile-ach strong{display:block;font-size:14px;font-weight:700}
.profile-ach span{display:block;margin-top:2px;color:var(--bk-muted);font-size:11px;font-weight:600}
.profile-ach p{margin:2px 0 0;color:#3c3c4399;font-size:12px;line-height:1.3}
.profile-projects{display:grid;gap:8px;margin-top:4px}
.profile-project-row{appearance:none;border:0;border-radius:12px;background:var(--bk-page);padding:12px;text-align:left;font:inherit;color:inherit}
.profile-project-row strong{display:block;font-size:15px;font-weight:700}
.profile-project-row span{display:block;margin-top:2px;color:var(--bk-muted);font-size:12px}
.profile-empty{margin:8px 0 0;color:var(--bk-muted);font-size:14px}
.profile-action{appearance:none;width:100%;margin-top:8px;border:0;border-radius:12px;background:var(--bk-page);padding:14px;text-align:left;font:inherit;font-size:16px;font-weight:600;color:var(--bk-brand-dark)}
@media (prefers-color-scheme:dark){
.profile-lessons-card,.profile-stat,.profile-card{background:#1c1c1e;box-shadow:none}
.profile-qr{background:#111;border-color:#545458a6}
.profile-ach,.profile-project-row,.profile-action{background:#2c2c2e}
.profile-ach.is-on{background:#1e2a21}
}

.profile-avatar-wrap{cursor:pointer}
.profile-avatar-wrap:focus-visible{outline:2px solid var(--bk-brand,#3a6b4a);outline-offset:3px}
.profile-avatar-edit{position:absolute;left:0;right:0;bottom:0;z-index:2;background:#0009;color:#fff;text-align:center;font-size:11px;font-weight:600;line-height:1.2;padding:5px 4px 6px}
.profile-avatar-msg{margin:8px auto 0;color:var(--bk-brand-dark,#3a6b4a);font-size:13px;font-weight:600;text-align:center}
/* bk-task-native */
.bk-header-coins{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:4px 10px 4px 8px;margin-right:2px;border-radius:12px;border:1px solid rgba(217,119,6,.35);background:linear-gradient(180deg,#fffbeb 0%,#fef3c7 100%);color:#9a3412;font-size:14px;font-weight:700;line-height:1;box-shadow:inset 0 1px 0 rgba(255,255,255,.7);cursor:default;-webkit-user-select:none;user-select:none}
.bk-header-coins-svg{display:block;flex:0 0 auto;width:17px;height:17px;color:#d97706}
.bk-header-coins strong{font-variant-numeric:tabular-nums;font-weight:800;letter-spacing:.01em}
@media (prefers-color-scheme:dark){
.bk-header-coins{background:linear-gradient(180deg,#422006 0%,#78350f 100%);border-color:rgba(251,146,60,.45);color:#fdba74;box-shadow:none}
.bk-header-coins-svg{color:#fbbf24}
}

.bk-module-progress-meta{color:var(--bk-muted,#6b7280);font-size:13px;margin:4px 0 8px!important}
.bk-module-progress-track{height:8px;margin:0 0 2px;border-radius:999px;background:rgba(58,107,74,.14);overflow:hidden}
.bk-lesson-progress-track{height:7px;margin-top:8px;border-radius:999px;background:rgba(58,107,74,.14);overflow:hidden}
.bk-module-progress-track .progress-fill,.bk-lesson-progress-track .progress-fill{height:100%;border-radius:999px;background:var(--bk-brand,#059669);transition:width .25s ease}
ion-accordion.accordion-expanding .bk-module-progress-track,ion-accordion.accordion-expanded .bk-module-progress-track{margin-bottom:4px}



.bk-update-overlay{position:fixed;inset:0;z-index:2147483000;display:flex;align-items:flex-end;justify-content:center;padding:16px 16px calc(16px + env(safe-area-inset-bottom,0px));background:rgba(15,23,42,.45);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:bk-update-fade .2s ease}
@media (min-width:560px){.bk-update-overlay{align-items:center}}
.bk-update-modal{width:min(420px,100%);background:#fff;color:#111827;border-radius:22px;padding:22px 20px 18px;box-shadow:0 24px 60px rgba(0,0,0,.28);transform:translateY(8px);animation:bk-update-up .22s ease forwards}
.bk-update-badge{display:inline-flex;align-items:center;justify-content:center;min-height:22px;padding:0 8px;border-radius:999px;background:#059669;color:#fff;font-size:11px;font-weight:800;letter-spacing:.04em;margin-bottom:10px}
.bk-update-modal h2{margin:0 0 8px;font-size:22px;line-height:1.2;font-weight:800}
.bk-update-modal p{margin:0 0 18px;color:#4b5563;font-size:15px;line-height:1.45}
.bk-update-actions{display:grid;gap:10px}
.bk-update-btn{appearance:none;border:0;border-radius:14px;min-height:48px;padding:12px 16px;font:inherit;font-size:16px;font-weight:800}
.bk-update-btn.primary{background:#059669;color:#fff}
.bk-update-btn.primary:disabled{opacity:.7}
.bk-update-btn.ghost{background:#f3f4f6;color:#374151}
@keyframes bk-update-fade{from{opacity:0}to{opacity:1}}
@keyframes bk-update-up{from{opacity:.6;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media (prefers-color-scheme:dark){
.bk-update-modal{background:#111827;color:#f9fafb}
.bk-update-modal p{color:#9ca3af}
.bk-update-btn.ghost{background:#1f2937;color:#e5e7eb}
}

/* Sticky reports header: custom back while in-page report is open */
button.bk-ion-back{
  appearance:none;
  -webkit-appearance:none;
  border:0;
  background:transparent;
  color:var(--ion-color-primary, #3880ff);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:44px;
  height:44px;
  margin:0;
  padding:0 6px 0 2px;
  cursor:pointer;
}
button.bk-ion-back svg{display:block}

/* Reports: keep title instantly visible (no IonTitle fade on prop updates) */
.reports-page ion-header ion-title,
.reports-page ion-toolbar ion-title{
  opacity:1!important;
  transform:none!important;
  transition:none!important;
  animation:none!important;
}
.reports-page ion-header{
  transition:none!important;
}

.reports-page.ion-page,
.reports-page{
  opacity:1!important;
}
.reports-page ion-header,
.reports-page ion-toolbar,
.reports-page ion-title,
.reports-page ion-buttons{
  opacity:1!important;
  transform:none!important;
  transition:none!important;
  animation:none!important;
}
.reports-page ion-title::part(title),
.reports-page ion-title::part(native){
  opacity:1!important;
  transform:none!important;
  transition:none!important;
}
/* bk-picker-css-start */

.bk-composer-tools{display:flex;align-items:center;gap:10px;width:100%}
.bk-composer-tools ion-button{flex:1;margin:0}
.bk-composer-icons{display:inline-flex;align-items:center;gap:8px;flex:none}
.bk-composer-icon-btn{min-width:42px;height:42px;border:0;border-radius:12px;background:#eef5f0;color:var(--bk-ink,#111);font-size:18px;font-weight:800;line-height:1;display:inline-flex;align-items:center;justify-content:center;padding:0 10px;box-shadow:inset 0 0 0 .55px #3c3c4326}
.bk-composer-icon-btn.is-active{background:var(--bk-brand-soft,#d1fae5);color:var(--bk-brand-dark,#065f46);box-shadow:inset 0 0 0 1.5px var(--bk-brand,#059669)}
ion-modal.home-qr-modal.bk-picker-modal{--height:auto;--max-height:calc(100% - 18px - var(--ion-safe-area-top,env(safe-area-inset-top,0px)))}
.bk-picker-dialog{width:100%;max-width:100%;text-align:left;justify-items:stretch;gap:10px;padding:12px 16px 16px;display:grid}
.bk-picker-dialog .home-qr-handle{justify-self:center;align-self:center;margin:0 auto;width:36px;height:5px;border-radius:999px;background:#3c3c4333}
.bk-picker-dialog h2{text-align:center;letter-spacing:-.3px;margin:0;font-size:20px;font-weight:750}
.bk-picker-dialog .bk-picker-toolbar{display:flex;align-items:center;gap:8px;margin:0}
.bk-picker-dialog .bk-picker-toolbar input{flex:1;min-width:0;border:0;border-radius:14px;background:#f3f4f6;padding:10px 12px;font:inherit;font-size:15px;outline:none}
.bk-picker-dialog .bk-picker-action,.bk-picker-dialog .bk-picker-close{border:0;background:#f3f4f6;border-radius:12px;min-width:40px;height:40px;padding:0 12px;font:inherit;font-weight:700;color:var(--bk-muted,#6b7280)}
.bk-picker-dialog .bk-gif-hint{text-align:center;color:var(--bk-muted);font-size:13px;margin:0}
.bk-picker-dialog .bk-emoji-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:4px;max-height:min(48vh,320px);overflow:auto;-webkit-overflow-scrolling:touch;padding:4px 0}
.bk-picker-dialog .bk-emoji-cell{border:0;background:transparent;border-radius:12px;aspect-ratio:1;font-size:24px;line-height:1;display:flex;align-items:center;justify-content:center;padding:0}
.bk-picker-dialog .bk-emoji-cell:active{background:#eef5f0}
.bk-picker-dialog .bk-gif-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-height:min(62vh,460px);overflow:auto;align-content:start;-webkit-overflow-scrolling:touch;padding:4px 0 6px}
.bk-picker-dialog .bk-gif-cell{border:0;background:#f1f5f9;border-radius:16px;overflow:hidden;padding:0;width:100%;height:0;padding-bottom:100%;min-width:0;position:relative;display:block;isolation:isolate;box-shadow:inset 0 0 0 .55px #3c3c4326;aspect-ratio:auto}
.bk-picker-dialog .bk-gif-skeleton{position:absolute;inset:0;z-index:1;border-radius:inherit;background:linear-gradient(110deg,#e8eef5 20%,#f7fafc 37%,#e8eef5 54%);background-size:200% 100%;animation:bk-gif-shimmer 1.15s ease-in-out infinite;pointer-events:none}
.bk-picker-dialog .bk-gif-cell img{position:absolute;inset:0;z-index:2;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;display:block;pointer-events:none;opacity:0;transition:opacity .18s ease}
.bk-picker-dialog .bk-gif-cell:not(.is-loading) img{opacity:1}
.bk-picker-dialog .bk-gif-cell:not(.is-loading) .bk-gif-skeleton{opacity:0;animation:none}
@keyframes bk-gif-shimmer{0%{background-position:100% 0}100%{background-position:-100% 0}}
.bk-picker-dialog .bk-gif-empty{grid-column:1/-1;text-align:center;padding:24px 8px;color:var(--bk-muted)}
.bk-picker-dialog .home-qr-close{margin-top:4px}
.bk-comment-body{margin-top:6px}
.comment-gifs{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.comment-gif-sticker{width:96px;height:96px;object-fit:cover;border-radius:12px;display:block;background:#f3f4f6}
@media (prefers-color-scheme:dark){
.bk-composer-icon-btn{background:#1f2937;color:#e5e7eb;box-shadow:inset 0 0 0 .55px #ffffff22}
.bk-picker-dialog .home-qr-handle{background:#ffffff44}
.bk-picker-dialog .bk-picker-toolbar input,.bk-picker-dialog .bk-picker-action,.bk-picker-dialog .bk-picker-close{background:#1f2937;color:#e5e7eb}
.bk-picker-dialog .bk-gif-cell{background:#1f2937}
.bk-picker-dialog .bk-gif-skeleton{background:linear-gradient(110deg,#1f2937 20%,#374151 37%,#1f2937 54%);background-size:200% 100%}
.bk-picker-dialog .bk-emoji-cell:active{background:#374151}
}

/* Comments page: restore scroll; compact loader */
.project-detail{overflow:visible}
.project-comments{overflow:visible;min-width:0}
.project-comments-loader{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:64px;
  max-height:88px;
  padding:12px 8px;
  margin:4px 0 8px;
}
.project-comments-loader ion-spinner{
  width:28px;
  height:28px;
}
.project-comments-list{
  min-width:0;
  padding-bottom:8px;
}

.project-comment{
  scroll-margin-top:88px;
  scroll-margin-bottom:calc(168px + env(safe-area-inset-bottom,0px));
}
.project-comments-list{
  padding-bottom:12px;
}

/* Sticky project comment composer */
.project-comment-composer{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  z-index:40;
  width:100%;
  margin:0;
  box-sizing:border-box;
  pointer-events:auto;
  padding:10px 16px calc(10px + var(--ion-safe-area-bottom, env(safe-area-inset-bottom, 0px)));
  background:var(--bk-page,#f2f2f7);
  border-top:.55px solid var(--bk-separator,#3c3c4326);
  box-shadow:0 -10px 28px rgba(15,23,42,.08);
}
.project-detail.page-pad,
.page-pad.project-detail{
  padding-bottom:calc(168px + var(--ion-safe-area-bottom, env(safe-area-inset-bottom, 0px)));
}
.project-comment-composer .project-comment-field textarea{
  max-height:120px;
}
@media (prefers-color-scheme:dark){
.project-comment-composer{
  background:var(--bk-page,#000);
  border-top-color:#ffffff22;
  box-shadow:0 -10px 28px rgba(0,0,0,.35);
}
}

/* bk-dark-home-css-start */
:root, html {
  color-scheme: light dark;
}
@media (prefers-color-scheme: dark) {
  :root, html {
    color-scheme: dark;
  }
  html, body, ion-app {
    background: #000;
    color: #fff;
  }
  ion-content {
    --background: #000;
    --color: #fff;
  }
  ion-item {
    --background: #1c1c1e;
    --color: #fff;
    --border-color: #545458a6;
    --detail-icon-color: #8e8e93;
  }
  ion-header, ion-toolbar {
    --background: #1c1c1e;
    --color: #fff;
    --border-color: #545458a6;
  }
  ion-header ion-button,
  ion-toolbar ion-button {
    --background: transparent;
    --background-hover: rgba(255,255,255,.08);
    --background-activated: rgba(255,255,255,.12);
    --background-focused: transparent;
    --color: var(--bk-brand, #7dba90);
    --box-shadow: none;
  }
  ion-title, ion-back-button { --color: #fff; color: #fff; }
  ion-modal, ion-popover {
    --background: #1c1c1e;
    --ion-background-color: #1c1c1e;
    --ion-text-color: #fff;
    color: #fff;
  }
  ion-accordion-group, ion-list, ion-accordion {
    --background: #000;
    background: transparent;
  }
  ion-fab-button {
    --background: var(--bk-brand, #3a6b4a);
    --color: #fff;
  }

  /* Home */
  .home-page ion-content { --background: #000; --color: #fff; color: #fff; }
  .home-header h1, .home-brand, .section-title { color: #fff; }
  .home-notification, .home-link, .home-link.home-subscription { color: var(--bk-brand, #7dba90); }
  .home-push-banner, .home-qr-card, .home-stats button, .section-tile, .metric, .bk-card {
    background: #1c1c1e; color: #fff; border-color: #545458a6; box-shadow: none;
  }
  .home-push-banner { border: 1px solid #545458a6; }
  .home-push-banner strong { color: #fff; }
  .home-push-banner p { color: #ebebf599; }
  .home-push-banner > button { background: var(--bk-brand, #3a6b4a); color: #fff; }
  .home-qr-card strong, .home-stats span { color: #aeaeb2; }
  .home-stats strong { color: var(--bk-brand, #c5e3cf); }
  .home-qr-card canvas { background: #fff; border-radius: 12px; }
  .home-course-row, .home-course-row.home-paid-plaque { background: #1e2a21; color: #fff; }
  .home-course-row > strong, .home-paid-plaque > strong { color: #fff; }
  .home-course-row > span, .home-paid-plaque > span { color: #aeaeb2; }
  .home-course-row b, .home-paid-plaque b, .section-tile ion-icon { color: var(--bk-brand, #7dba90); }
  .section-tile span { color: #fff; }
  .progress-fill { background: var(--bk-brand, #3a6b4a); }

  /* Projects — course chips */
  .projects-chip {
    background: #2c2c2e;
    color: #fff;
  }
  .projects-chip.is-active {
    background: var(--bk-brand, #3a6b4a);
    color: #fff;
  }
  .projects-more {
    background: #1c1c1e;
    color: var(--bk-brand, #7dba90);
  }
  .project-card, .project-card-skeleton, .certs-card, .shop-card, .simple-row, .course-card {
    background: #1c1c1e;
    color: #fff;
    border-color: #545458a6;
  }
  .project-card > strong, .project-detail-head h1, .project-comments h2 { color: #fff; }
  .project-card-meta { color: var(--bk-brand, #c5e3cf); }
  .project-card-placeholder, .shop-card-placeholder, .shop-detail-placeholder {
    background: linear-gradient(135deg, #243328, #1c1c1e);
  }
  .project-detail-cover { background: #2c2c2e; }
  .project-detail-chip {
    background: #1e2a21;
    color: var(--bk-brand, #c5e3cf);
  }
  .project-detail-chip.is-static {
    background: #2c2c2e;
    color: #aeaeb2;
  }
  .project-card-badge, .shop-card-badge {
    background: var(--bk-brand, #3a6b4a);
    color: #fff;
  }

  /* Project comments + send */
  .project-comment {
    background: #1c1c1e;
    color: #fff;
    box-shadow: inset 0 0 0 .55px #ffffff22;
  }
  .project-comment-heading strong,
  .project-comment-text { color: #fff; }
  .project-comment-ops button { color: var(--bk-brand, #7dba90); }
  .project-comment-field,
  .project-comment-edit {
    background: #2c2c2e;
    color: #fff;
    box-shadow: inset 0 0 0 .55px #ffffff22;
  }
  .project-comment-field textarea,
  .project-comment-edit {
    color: #fff;
    caret-color: #fff;
  }
  .project-comment-field textarea::placeholder,
  .project-comment-edit::placeholder { color: #8e8e93; }
  .project-comment-chip {
    background: #1e2a21;
    color: var(--bk-brand, #c5e3cf);
  }
  .project-comment-chip.is-edit {
    background: #2c2c2e;
    color: #aeaeb2;
  }
  .bk-composer-tools ion-button {
    --background: var(--bk-brand, #3a6b4a);
    --background-activated: var(--bk-brand-dark, #2f563c);
    --background-focused: var(--bk-brand, #3a6b4a);
    --background-hover: var(--bk-brand, #4e7a5c);
    --color: #fff;
    --border-radius: 14px;
    font-weight: 700;
  }
  .bk-composer-tools ion-button.button-disabled,
  .bk-composer-tools ion-button[disabled] {
    --background: #2c2c2e;
    --color: #8e8e93;
    opacity: 1;
  }
  .bk-composer-icon-btn.is-active {
    background: #1e2a21;
    color: var(--bk-brand, #c5e3cf);
  }

  /* Shop / lists / attendance / remarks */
  .shop-coins strong, .shop-status, .shop-detail-price, .freelance-price, .freelance-dialog-price { color: var(--bk-brand, #c5e3cf); }
  .shop-detail h2, .shop-detail p, .shop-heading h1, .simple-list-heading h1 { color: #fff; }
  .shop-detail p, .shop-heading p, .simple-list-heading p { color: #aeaeb2; }
  .shop-filter, .shop-coins { background: #1c1c1e; color: #fff; }
  .simple-row-body { color: #d1d5db; }
  .simple-row.tone-summary { background: #13251a; color: #bbf7d0; border-color: #166534; }
  .simple-row.tone-summary .simple-row-meta,
  .simple-row.tone-summary .simple-row-body { color: #86efac; }
  .simple-row.tone-positive { background: #13251a; color: #bbf7d0; border-color: #166534; }
  .simple-row.tone-positive .simple-row-meta,
  .simple-row.tone-positive .simple-row-body { color: #86efac; }
  .simple-row.tone-negative { background: #2a1212; color: #fecaca; border-color: #7f1d1d; }
  .simple-row.tone-negative .simple-row-meta,
  .simple-row.tone-negative .simple-row-body { color: #fca5a5; }
  .simple-row.tone-warning { background: #2a1f0a; color: #fde68a; border-color: #854d0e; }
  .simple-row.tone-warning .simple-row-meta,
  .simple-row.tone-warning .simple-row-body { color: #fbbf24; }
  .simple-row.tone-info { background: #0f1c33; color: #bfdbfe; border-color: #1e3a8a; }
  .simple-row.tone-info .simple-row-meta,
  .simple-row.tone-info .simple-row-body { color: #93c5fd; }
  .attendance-summary strong { color: #fff; }

  /* Notifications */
  .notif-row ion-label h2 { color: #fff; }
  .notif-row ion-label p { color: #ebebf599; }

  /* Online / login / forms */
  .online-hero-icon { color: var(--bk-brand, #7dba90); background: #1e2a21; }
  .online-code { --background: #1c1c1e; --color: #fff; --placeholder-color: #8e8e93; }
  .online-scanner-close { background: #1c1c1e; color: #fff; }
  .login-ios-input::placeholder { color: #ebebf54d; }
  .ios-form-list ion-item { --background: #1c1c1e; --color: #fff; --border-color: #545458a6; }
  .ios-form-list ion-list-header { color: #ebebf599; }
  .ios-form-input {
    --color: #fff;
    --placeholder-color: #ebebf54d;
  }
  .ios-form-input .native-input,
  .ios-form-input input,
  .ios-form-input textarea { color: #fff !important; }
  .ios-form-input::placeholder,
  .ios-form-input .native-input::placeholder { color: #ebebf54d !important; }
  .ios-settings-swatch { box-shadow: inset 0 0 0 1px #ffffff22; }
  .ios-settings-slider ion-range { --bar-background-active: var(--bk-brand, #3a6b4a); }

  /* Profile leftovers */
  .profile-lessons-card small, .profile-ach p { color: #ebebf599; }
  .profile-action { color: var(--bk-brand, #c5e3cf); }

  /* Assistant bubbles that missed the existing dark block */
  .bubble { background: #1c1c1e; color: #fff; }
  .bubble.user { background: var(--bk-brand, #3a6b4a); color: #fff; }
  .assistant-bubble.bot { color: #fff; }
  .assistant-send.ready { color: var(--bk-brand, #7dba90); }

  /* Modules / practice accordion */
  ion-accordion h2, ion-item h2 { color: #fff; }
  ion-accordion p, ion-item p, .bk-module-progress-meta { color: #aeaeb2; }
  .empty-state, .empty-state p { color: #aeaeb2; }

  /* Certs / reports chrome */
  .certs-viewer-frame { background: #000; }
  .certs-card-media { background: linear-gradient(180deg, #1e2a21, #1c1c1e); }
  .certs-btn-primary { background: var(--bk-brand, #3a6b4a); color: #fff; }

  .embed-frame, .web-section-host iframe, .web-section-host, .web-section-loader {
    background: #000;
    color-scheme: dark;
  }
  .web-section-page ion-content { --background: #000; }
}
/* bk-dark-home-css-end */


/* bk-homework-native-css-start */
.hw-card{
  appearance:none;
  -webkit-appearance:none;
  width:100%;
  text-align:left;
  font:inherit;
  cursor:pointer;
}
.hw-card-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}
.hw-card-top strong{
  min-width:0;
  flex:1;
}
.hw-chip{
  flex:none;
  border-radius:999px;
  padding:4px 8px;
  font-size:11px;
  font-weight:700;
  line-height:1.2;
  background:rgba(58,107,74,.14);
  color:var(--bk-brand-dark,#2f563c);
}
.simple-row.tone-warning .hw-chip{background:#fff3cd;color:#92400e}
.simple-row.tone-positive .hw-chip{background:#dcfce7;color:#166534}
.simple-row.tone-summary .hw-chip{background:#e8f2eb;color:#14532d}
.simple-row.tone-info .hw-chip{background:#dbeafe;color:#1e40af}
.hw-block,.hw-submit{
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:14px;
  padding:14px;
  display:grid;
  gap:10px;
}
.hw-block h2,.hw-submit h2{
  margin:0;
  font-size:16px;
  font-weight:700;
}
.hw-resource-link{
  color:var(--bk-brand,#3a6b4a);
  font-size:14px;
  font-weight:600;
  word-break:break-all;
}
.hw-input,.hw-textarea{
  box-sizing:border-box;
  width:100%;
  border:0;
  border-radius:12px;
  background:#f2f2f7;
  color:var(--bk-ink,#111);
  font:inherit;
  font-size:16px;
  padding:12px 14px;
  outline:none;
}
.hw-textarea{min-height:84px;resize:vertical}
.hw-file{position:absolute;opacity:0;width:1px;height:1px;overflow:hidden}
.hw-file-btn{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  border-radius:12px;
  background:#eef5f0;
  color:var(--bk-ink,#111);
  font-weight:650;
  cursor:pointer;
  position:relative;
}
.hw-action{
  appearance:none;
  border:0;
  border-radius:14px;
  min-height:48px;
  padding:12px 16px;
  background:#3a6b4a;
  color:#fff;
  font:inherit;
  font-size:16px;
  font-weight:700;
}
.hw-action:disabled{opacity:.55}
.hw-ok{margin:0;color:#166534;font-size:14px;font-weight:650}
@media (prefers-color-scheme:dark){
  .hw-chip{background:#1e2a21;color:#c5e3cf}
  .simple-row.tone-warning .hw-chip{background:#2a1f0a;color:#fde68a}
  .simple-row.tone-positive .hw-chip,.simple-row.tone-summary .hw-chip{background:#13251a;color:#86efac}
  .simple-row.tone-info .hw-chip{background:#0f1c33;color:#93c5fd}
  .hw-block,.hw-submit{background:#1c1c1e;border-color:#545458a6;color:#fff}
  .hw-input,.hw-textarea{background:#2c2c2e;color:#fff}
  .hw-file-btn{background:#2c2c2e;color:#e5e7eb}
  .hw-ok{color:#86efac}
  .hw-action{background:var(--bk-brand,#3a6b4a);color:#fff}
}
/* bk-homework-native-css-end */

/* bk-header-refresh-css-start */
ion-header ion-button,
ion-toolbar ion-button {
  --background: transparent;
  --background-hover: rgba(58,107,74,.1);
  --background-activated: rgba(58,107,74,.16);
  --background-focused: transparent;
  --color: var(--bk-brand, #3a6b4a);
  --box-shadow: none;
}
@media (prefers-color-scheme: dark) {
  ion-header ion-button,
  ion-toolbar ion-button {
    --background: transparent;
    --background-hover: rgba(255,255,255,.08);
    --background-activated: rgba(255,255,255,.12);
    --color: var(--bk-brand, #7dba90);
  }
  .embed-frame, .web-section-host iframe, .web-section-host, .web-section-loader {
    background: #000 !important;
    color-scheme: dark;
  }
  .web-section-page ion-content { --background: #000; }
}
/* bk-header-refresh-css-end */

/* bk-shop-detail-image-css-start */
.shop-detail-image-wrap{
  width:100%;
  aspect-ratio:4/3;
  min-height:180px;
  max-height:240px;
  border-radius:12px;
  overflow:hidden;
  background:var(--bk-brand-soft,#e8f2eb) center/cover no-repeat;
}
.shop-detail-image{
  width:100%;
  height:100%;
  min-height:180px;
  max-height:240px;
  object-fit:cover;
  display:block;
  background:var(--bk-brand-soft,#e8f2eb) center/cover no-repeat;
}
.shop-detail-placeholder{min-height:180px}
.embed-frame.is-loading{opacity:0}
/* bk-shop-detail-image-css-end */

/* bk-notif-modal-css-start */
.bk-notif-modal{
  --width:100%;
  --height:100%;
  --max-width:100%;
  --max-height:100%;
  --border-radius:0;
  --backdrop-opacity:.35;
  --background:var(--ion-background-color,#fff);
}
.bk-notif-modal::part(content){
  margin:0;
  border-radius:0;
  height:100%;
  max-height:100%;
  overflow:hidden;
  display:flex;
  flex-direction:column;
}
.bk-notif-sheet{
  height:100%;
  max-height:100%;
  min-height:0;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  background:var(--ion-background-color,var(--ion-background-color-step-50,#f2f2f7));
  padding-top:var(--ion-safe-area-top,env(safe-area-inset-top,0px));
  padding-bottom:var(--ion-safe-area-bottom,env(safe-area-inset-bottom,0px));
  box-sizing:border-box;
}
.bk-notif-sheet-bar{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:52px;
  padding:6px 8px 6px 4px;
  flex:0 0 auto;
  position:relative;
  z-index:2;
  background:inherit;
}
.bk-notif-sheet-bar h1{
  flex:1;
  margin:0;
  font-size:17px;
  font-weight:600;
  text-align:center;
}
.bk-notif-sheet-scroll{
  flex:1 1 auto;
  min-height:0;
  overflow-x:hidden;
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;
  touch-action:pan-y;
}
.bk-notif-sheet-body{padding-bottom:24px}
.bk-notif-sheet-scroll .empty-state{margin-top:48px}
/* bk-notif-modal-css-end */

/* bk-notif-projlink-css-start */
.bk-notif-a{color:#2563eb;text-decoration:underline;font-weight:600}
.bk-notif-open-proj{display:block;width:100%;margin-top:14px;padding:12px 14px;border-radius:12px;border:0;background:#2563eb;color:#fff;font-weight:700;font-size:15px}
.bk-notif-proj-hint{color:#2563eb!important;font-weight:600!important;margin-top:4px!important}
/* bk-notif-projlink-css-end */


/* bk-home-paid-plaque-css-start */
.home-courses-split{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(96px,118px);
  gap:12px;
  align-items:stretch;
}
.home-course-row.home-paid-plaque{
  width:auto;
  min-width:0;
  height:100%;
  min-height:104px;
  padding:19px 12px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.home-course-row.home-paid-plaque>strong{
  margin-bottom:10px;
  font-size:14px;
  font-weight:700;
  white-space:normal;
  text-align:center;
  overflow:visible;
}
.home-course-row.home-paid-plaque>span{
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:4px;
}
.home-course-row.home-paid-plaque>span>span{font-size:13px}
.home-course-row.home-paid-plaque b{
  margin-left:0;
  font-size:28px;
  font-weight:700;
  line-height:1;
  letter-spacing:-0.02em;
}
@media (max-width:360px){
  .home-courses-split{grid-template-columns:minmax(0,1fr) minmax(84px,100px);gap:10px}
  .home-course-row.home-paid-plaque{padding:16px 10px}
  .home-course-row.home-paid-plaque b{font-size:24px}
}
/* bk-home-paid-plaque-css-end */

/* bk-section-badges-css-start */
.section-tile{
  position:relative;
  overflow:visible;
}
.section-tile .section-badges{
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  margin:0;
  padding:0;
  line-height:1;
}
.section-tile .section-badge,
.section-tile span.section-badge,
.section-tile div.section-badge{
  position:absolute;
  right:4px;
  box-sizing:border-box;
  width:auto;
  min-width:20px;
  height:20px;
  margin:0;
  padding:0 4px;
  border-radius:999px;
  display:flex !important;
  align-items:center;
  justify-content:center;
  text-align:center;
  font-size:11px;
  font-weight:750;
  line-height:20px;
  letter-spacing:0;
  color:#fff;
  box-shadow:0 0 0 1.5px #fff;
  -webkit-font-smoothing:antialiased;
}
.section-tile .section-badge-red{
  top:4px;
  bottom:auto;
  background:#EF4444;
}
.section-tile .section-badge-blue{
  bottom:4px;
  top:auto;
  background:#3B82F6;
}
/* bk-section-badges-css-end */

/* bk-section-badges-dark-start */
@media (prefers-color-scheme: dark) {
  .section-badge{box-shadow:0 0 0 1.5px #1c1c1e}
}
html.ion-palette-dark .section-badge,
body.dark .section-badge,
.ion-palette-dark .section-badge{
  box-shadow:0 0 0 1.5px #1c1c1e;
}
/* bk-section-badges-dark-end */

/* bk-home-avatar-css-start */
.home-header-user{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
  flex:1;
}
.home-header-text{
  min-width:0;
}
.home-header-text h1,
.home-header-text p{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.home-avatar{
  position:relative;
  flex:0 0 52px;
  width:52px;
  height:52px;
  border-radius:50%;
  overflow:hidden;
  background:var(--bk-brand-soft,#eef5f0);
}
.home-avatar-letter{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:var(--bk-brand,#2f6b45);
  font-size:20px;
  font-weight:750;
  line-height:1;
}
.home-avatar-img{
  position:relative;
  z-index:1;
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  background:transparent;
}
/* bk-home-avatar-css-end */

/* bk-home-avatar-dark-start */
@media (prefers-color-scheme: dark) {
  .home-avatar{background:#1e2a21}
  .home-avatar-letter{color:#c5e3cf}
}
html.ion-palette-dark .home-avatar,
body.dark .home-avatar,
.ion-palette-dark .home-avatar{background:#1e2a21}
html.ion-palette-dark .home-avatar-letter,
body.dark .home-avatar-letter,
.ion-palette-dark .home-avatar-letter{color:#c5e3cf}
/* bk-home-avatar-dark-end */

/* bk-no-swipe-back-css-start */
html, body, ion-app, ion-router-outlet, ion-content {
  overscroll-behavior-x: none;
}
/* bk-no-swipe-back-css-end */

/* bk-game-player-ios-fit */
.game-player-stage{
  inset:0 !important;
  top:0 !important;
  left:0 !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  transform:none !important;
}
.game-player-frame{
  width:100% !important;
  height:100% !important;
  inset:0 !important;
}
.game-player .game-joystick-zone{
  min-width:152px;
  min-height:152px;
}
.game-joystick-ghost,
.game-joystick-base{
  width:78%!important;
  height:78%!important;
  min-width:120px!important;
  min-height:120px!important;
  max-width:176px!important;
  max-height:176px!important;
}
.game-joystick-knob{
  width:34%!important;
  height:34%!important;
  min-width:52px!important;
  min-height:52px!important;
  max-width:78px!important;
  max-height:78px!important;
}
.game-action-btn.is-b{
  width:76px!important;
  height:76px!important;
  font-size:24px!important;
}
.game-action-btn.is-a{
  width:92px!important;
  height:92px!important;
  font-size:28px!important;
}
.game-player .game-action-pad{
  gap:16px!important;
}
.game-player .game-player-close,
.game-player .game-player-restart{
  width:52px!important;
  height:52px!important;
  border-radius:16px!important;
}
/* bk-game-player-ios-fit-end */

/* bk-project-play-btn */
.project-detail-actions{
  align-items:center;
  gap:12px;
}
.project-play-btn{
  appearance:none !important;
  -webkit-appearance:none !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  min-width:160px !important;
  min-height:64px !important;
  height:64px !important;
  margin:0 !important;
  padding:14px 28px !important;
  border:0 !important;
  border-radius:18px !important;
  background:#3a6b4a !important;
  color:#fff !important;
  font-size:22px !important;
  font-weight:800 !important;
  letter-spacing:-.3px !important;
  line-height:1 !important;
  box-shadow:0 6px 16px #22412c40;
}
.project-play-btn ion-icon,
.project-play-btn svg{
  width:28px !important;
  height:28px !important;
  font-size:28px !important;
  color:#fff !important;
}
/* bk-project-play-btn-end */

/* bk-game-player-start */
.game-player-start{
  z-index:9;
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:176px;
  height:176px;
  padding:0;
  border:4px solid #fff;
  border-radius:50%;
  background:linear-gradient(180deg,#4caf50,#2e7d32);
  color:#fff;
  font:700 28px/1.1 -apple-system,BlinkMacSystemFont,system-ui,sans-serif;
  letter-spacing:-.3px;
  box-shadow:0 10px 28px #000000a6,0 0 0 6px #4caf5066;
}
.game-player-start:active{transform:translate(-50%,-50%) scale(.96)}
/* bk-game-player-start-end */

/* bk-abonement-pay-btn-start */

#bk-pay-cta-bar{
  position:fixed !important;
  left:12px !important;
  right:12px !important;
  bottom:calc(14px + env(safe-area-inset-bottom,0px)) !important;
  z-index:2147483000 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:54px !important;
  padding:14px 16px !important;
  border:0 !important;
  border-radius:16px !important;
  background:#2f6b45 !important;
  color:#fff !important;
  font:700 17px/1.2 system-ui,-apple-system,sans-serif !important;
  box-shadow:0 10px 28px rgba(0,0,0,.28) !important;
}
.abonement-pay-btn{
  display:flex !important;
  visibility:visible !important;
  opacity:1 !important;
  width:calc(100% - 32px) !important;
  max-width:520px !important;
  margin:12px 16px 18px !important;
  align-items:center !important;
  justify-content:center !important;
  padding:16px 18px !important;
  border:0 !important;
  border-radius:16px !important;
  background:#2f6b45 !important;
  color:#fff !important;
  font-size:17px !important;
  font-weight:700 !important;
  box-shadow:0 8px 20px rgba(47,107,69,.22) !important;
}
.abonement-pay-toolbar{
  color:#2f6b45 !important;
  font-weight:700 !important;
  font-size:16px !important;
}

/* bk-abonement-pay-btn-end */










/* bk-payment-embed-smooth-start */
.embed-frame.is-loading{opacity:0;pointer-events:none}
@media (prefers-color-scheme: dark) {
  .web-section-page ion-content { --background:#000 !important; }
  .web-section-host,
  .web-section-loader { background:#000 !important; }
}
/* bk-payment-embed-smooth-end */

.project-detail-3d-wrap{position:relative;width:100%;border-radius:14px;overflow:hidden;background:#111827;padding:14px;display:flex;flex-direction:column;gap:10px}
.project-detail-3d-placeholder{min-height:180px;display:flex;align-items:center;justify-content:center;color:#e5e7eb;font:600 18px/1.3 -apple-system,BlinkMacSystemFont,system-ui,sans-serif;background:linear-gradient(160deg,#1f2937 0%,#111827 100%);border-radius:10px}
.project-detail-3d-open{display:inline-flex;align-items:center;justify-content:center;width:auto;max-width:100%;align-self:flex-start;padding:8px 12px;border-radius:10px;background:#2563eb;color:#fff!important;border:0;text-decoration:none;font:600 13px/1.2 -apple-system,BlinkMacSystemFont,system-ui,sans-serif;cursor:pointer;margin-top:8px}
.project-detail-blend-note{padding:12px 14px;border-radius:12px;background:#fff7ed;color:#9a3412;font-size:14px;line-height:1.45}
@media (prefers-color-scheme:dark){.project-detail-blend-note{background:#431407;color:#fdba74}}

/* bk-popular-html-20260910 */
.projects-filters{display:flex;gap:8px;padding:4px 12px 8px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.projects-filters::-webkit-scrollbar{display:none}
.projects-filter{flex:none;white-space:nowrap;font:inherit;font-size:12px;font-weight:700;color:var(--bk-ink);background:#fff;border:1px solid #dbe3ea;border-radius:999px;padding:7px 12px}
.projects-filter.is-active{background:#fff7ed;border-color:#fdba74;color:#c2410c}
.game-player.is-site-scroll{overflow:auto!important;touch-action:auto;overscroll-behavior:auto;background:#fff}
.game-player.is-site-scroll.is-css-landscape,.game-player.is-site-scroll[style*="rotate"]{transform:none!important;inset:0!important;left:0!important;top:0!important;width:100%!important;height:100%!important}
.game-player.is-site-scroll .game-player-stage{overflow:auto!important;-webkit-overflow-scrolling:touch;top:0!important;left:0!important;right:0!important;bottom:0!important;width:100%!important;height:100%!important;transform:none!important;background:#fff}
.game-player.is-site-scroll .game-player-frame{background:#fff;min-height:100%}
/* bk-projects-soft-20260910 */
.projects-screen.is-soft-loading .projects-grid{opacity:.55;transition:opacity .15s}

/* bk-popular-3d-parity */
.project-card-3d{position:absolute;inset:0;width:100%;height:100%;border:0;background:#0f172a;z-index:1;pointer-events:auto}
.project-card-media:has(.project-card-3d){background:#0f172a}
.project-card-media .project-card-badge,.project-card-media .project-card-type{z-index:3}
.project-detail-3d-wrap{position:relative;width:100%;border-radius:14px;overflow:hidden;background:#111827;padding:0;display:flex;flex-direction:column;gap:0}
.project-detail-3d-frame{width:100%;height:min(62vw,380px);min-height:260px;border:0;display:block;background:#111827}
.project-detail-3d-open{display:flex;align-items:center;justify-content:center;width:100%;padding:14px 16px;border-radius:0;background:#2563eb;color:#fff!important;border:0;text-decoration:none;font:700 17px/1.2 -apple-system,BlinkMacSystemFont,system-ui,sans-serif;cursor:pointer}
.project-detail-3d-placeholder{min-height:180px;display:flex;align-items:center;justify-content:center;color:#e5e7eb;font:600 18px/1.3 -apple-system,BlinkMacSystemFont,system-ui,sans-serif;background:linear-gradient(160deg,#1f2937 0%,#111827 100%)}
.project-detail-blend-note{padding:12px 14px;border-radius:12px;background:#fff7ed;color:#9a3412;font-size:14px;line-height:1.45}
@media (prefers-color-scheme:dark){.project-detail-blend-note{background:#431407;color:#fdba74}}
.projects-filters{display:flex;gap:8px;padding:4px 12px 8px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.projects-filters::-webkit-scrollbar{display:none}
.projects-filter{flex:none;white-space:nowrap;font:inherit;font-size:12px;font-weight:700;color:var(--bk-ink);background:#fff;border:1px solid #dbe3ea;border-radius:999px;padding:7px 12px}
.projects-filter.is-active{background:#fff7ed;border-color:#fdba74;color:#c2410c}

/* bk-force-visible-filters */
.projects-filters{display:flex!important;gap:8px;padding:8px 12px 10px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;background:rgba(58,107,74,.06)}
.projects-filters::-webkit-scrollbar{display:none}
.projects-filter{flex:none;white-space:nowrap;font:inherit;font-size:13px;font-weight:800;color:#14532d;background:#fff;border:2px solid #86efac;border-radius:999px;padding:8px 14px}
.projects-filter.is-active{background:#3A6B4A;border-color:#3A6B4A;color:#fff}
.projects-chip.is-active{background:#3A6B4A;border-color:#3A6B4A;color:#fff}

/* bk-projects-build-banner */
.bk-projects-build-banner{margin:8px 12px 0;padding:10px 12px;border-radius:12px;background:#14532d;color:#fff;font:800 13px/1.3 -apple-system,BlinkMacSystemFont,system-ui,sans-serif;text-align:center}

.bk-projects-build-banner{display:flex;flex-direction:column;gap:8px;align-items:center}
.bk-projects-update-btn{appearance:none;border:0;border-radius:999px;padding:8px 14px;font:800 13px/1 -apple-system,BlinkMacSystemFont,system-ui,sans-serif;background:#fff;color:#14532d}

/* bk-inline-3d */
.project-card-3d-mount{position:absolute;inset:0;width:100%;height:100%;background:#0f172a;z-index:1;touch-action:none}
.project-card-3d-mount canvas,.project-card-3d-mount .lab-3d-viewer-mount,.project-card-3d-mount .lab-3d-viewer-mount canvas{width:100%!important;height:100%!important;display:block}
.project-card-media:has(.project-card-3d-mount){background:#0f172a}
.project-detail-3d-frame{width:100%;height:min(62vw,380px);min-height:260px;border:0;display:block;background:#111827;position:relative;touch-action:none}
.project-detail-3d-frame canvas,.project-detail-3d-frame .lab-3d-viewer-mount,.project-detail-3d-frame .lab-3d-viewer-mount canvas{width:100%!important;height:100%!important;display:block}
.project-detail-3d-fallback{min-height:260px;display:flex;align-items:center;justify-content:center;color:#e5e7eb;font:600 16px/1.3 -apple-system,BlinkMacSystemFont,system-ui,sans-serif;padding:16px;text-align:center}

/* bk-ios-3d-cta */
.project-card-3d-cta{position:absolute;inset:0;z-index:2;border:0;width:100%;height:100%;
background:linear-gradient(160deg,#1e293b,#0f172a 55%,#064e3b);color:#ecfdf5;
font:800 16px/1.2 -apple-system,BlinkMacSystemFont,system-ui,sans-serif;cursor:pointer}
.project-detail-3d-ios-hero{min-height:180px;display:flex;align-items:center;justify-content:center;
color:#e5e7eb;font:700 20px/1.2 -apple-system,BlinkMacSystemFont,system-ui,sans-serif;
background:linear-gradient(160deg,#1f2937,#111827 60%,#064e3b)}
.project-detail-3d-open{font-size:18px!important;padding:16px!important;background:#16a34a!important}

/* bk-popular-mega */
.bk-popular-hdr{appearance:none;border:0;border-radius:999px;padding:6px 10px;margin-right:4px;
background:#facc15;color:#14532d;font:800 12px/1 -apple-system,BlinkMacSystemFont,system-ui,sans-serif}
.projects-filters{display:flex!important;gap:8px;padding:10px 12px!important;margin:0!important;
background:#ecfdf5!important;border-bottom:2px solid #86efac!important;overflow-x:auto!important;z-index:5!important}
.projects-filter{flex:none!important;white-space:nowrap!important;font:800 14px/1.2 -apple-system,BlinkMacSystemFont,system-ui,sans-serif!important;
color:#14532d!important;background:#fff!important;border:2px solid #16a34a!important;border-radius:999px!important;padding:10px 14px!important}
.projects-filter.is-active{background:#16a34a!important;border-color:#16a34a!important;color:#fff!important}
.projects-chip[aria-selected="true"]{background:#16a34a!important;color:#fff!important}
.project-card-3d-cta{font-size:18px!important;background:linear-gradient(160deg,#14532d,#0f766e)!important}
.project-detail-3d-open{background:#16a34a!important;font-size:18px!important;padding:18px!important}

/* bk-fix-card-3d-iframe */
.project-card-3d{position:absolute;inset:0;width:100%;height:100%;border:0;background:#0f172a;z-index:1;pointer-events:auto}
.project-card-media:has(.project-card-3d){background:#0f172a}
.project-card-media .project-card-badge,.project-card-media .project-card-type{z-index:3}

/* bk-ios-3d-fix */
.project-card-3d-cta{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;margin:0;border:0;background:linear-gradient(160deg,#1e293b,#0f172a 55%,#064e3b);color:#6ee7b7;font:700 15px/1.2 -apple-system,BlinkMacSystemFont,system-ui,sans-serif;cursor:pointer}
.project-card-3d-cta:active{opacity:.9}
.project-detail-3d-frame{width:100%;height:min(62vw,380px);min-height:260px;border:0;display:block;background:#111827}

/* bk-ios-3d-deep */
.project-detail-3d-ios-hero{min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:20px;color:#e5e7eb;background:linear-gradient(160deg,#1f2937,#111827 60%,#064e3b);text-align:center}
.project-detail-3d-ios-title{font:700 22px/1.2 -apple-system,BlinkMacSystemFont,system-ui,sans-serif}
.project-detail-3d-ios-sub{font:500 14px/1.35 -apple-system,BlinkMacSystemFont,system-ui,sans-serif;opacity:.85;max-width:280px}
.project-card-3d-cta{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;margin:0;border:0;background:linear-gradient(160deg,#1e293b,#0f172a 55%,#064e3b);color:#6ee7b7;font:700 15px/1.2 -apple-system,BlinkMacSystemFont,system-ui,sans-serif}

/* bk-hide-dup-project-filters */
.projects-filters{display:none!important;height:0!important;overflow:hidden!important;padding:0!important;margin:0!important;border:0!important}

/* bk-3d-open-compact */
.project-detail-3d-open{
  display:flex!important;align-items:center;justify-content:center;
  width:auto!important;max-width:220px;margin:10px auto 12px!important;
  padding:8px 14px!important;border-radius:10px!important;
  background:#3A6B4A!important;color:#fff!important;border:0!important;
  font:700 14px/1.2 -apple-system,BlinkMacSystemFont,system-ui,sans-serif!important;
}

/* bk-project-image-lightbox */
.project-detail-cover-btn{
  display:block;width:100%;padding:0;border:0;background:transparent;cursor:pointer;
  border-radius:14px;overflow:hidden;position:relative;-webkit-tap-highlight-color:transparent;
}
.project-detail-cover-btn::after{
  content:"Нажмите, чтобы открыть";position:absolute;left:10px;bottom:10px;
  background:rgba(0,0,0,.55);color:#fff;font:600 12px/1.2 -apple-system,BlinkMacSystemFont,system-ui,sans-serif;
  padding:6px 10px;border-radius:8px;pointer-events:none;
}
.project-detail-cover{
  width:100%;height:auto;max-height:min(62vh,420px);object-fit:contain;background:#111;display:block;
}
.bk-img-lightbox{
  position:fixed;inset:0;z-index:10000;background:rgba(0,0,0,.92);
  display:flex;align-items:center;justify-content:center;
  padding:max(12px, env(safe-area-inset-top)) 12px max(12px, env(safe-area-inset-bottom));
  -webkit-overflow-scrolling:touch;
}
.bk-img-lightbox-img{
  max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;
  touch-action:none;user-select:none;-webkit-user-drag:none;
}
.bk-img-lightbox-close{
  position:absolute;top:max(10px, env(safe-area-inset-top));right:12px;z-index:10001;
  border:0;border-radius:999px;padding:10px 14px;background:rgba(255,255,255,.18);
  color:#fff;font:700 14px/1 -apple-system,BlinkMacSystemFont,system-ui,sans-serif;
}
.project-open-image-btn{background:#1f4f7a!important}

/* bk-project-image-lightbox-zoom */
.bk-img-lightbox{position:fixed;inset:0;z-index:10000;background:rgba(0,0,0,.94);display:flex;align-items:center;justify-content:center;padding:max(12px, env(safe-area-inset-top)) 12px max(12px, env(safe-area-inset-bottom));overscroll-behavior:none;touch-action:none;}
.bk-img-lightbox-stage{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:none;overscroll-behavior:none;-webkit-user-select:none;user-select:none;}
.bk-img-lightbox-img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;touch-action:none;user-select:none;-webkit-user-drag:none;transform-origin:0 0;will-change:transform;pointer-events:auto;}
.bk-img-lightbox-close{position:absolute;top:max(10px, env(safe-area-inset-top));right:12px;z-index:10001;border:0;border-radius:999px;padding:10px 14px;background:rgba(255,255,255,.18);color:#fff;font:700 14px/1 -apple-system,BlinkMacSystemFont,system-ui,sans-serif;}

/* bk-assistant-embed-css-start */
.assistant-page.bk-assistant-embed,
.web-section-page.bk-assistant-embed{
  --background:var(--bk-page,#fff);
}
.assistant-page.bk-assistant-embed ion-content,
.web-section-page.bk-assistant-embed ion-content{
  --background:var(--bk-page,#fff);
  --overflow:hidden;
  --padding-top:0;
  --padding-bottom:0;
  --padding-start:0;
  --padding-end:0;
  position:relative;
}
.assistant-page.bk-assistant-embed ion-content::part(scroll),
.web-section-page.bk-assistant-embed ion-content::part(scroll){
  position:absolute;
  inset:0;
  overflow:hidden!important;
  overscroll-behavior:none;
}
.assistant-page.bk-assistant-embed .web-section-host,
.web-section-page.bk-assistant-embed .web-section-host{
  background:var(--bk-page,#fff);
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  min-height:0!important;
  overflow:hidden;
}
.assistant-page.bk-assistant-embed .embed-frame,
.web-section-page.bk-assistant-embed .embed-frame{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
  display:block;
  background:var(--bk-page,#fff);
  color-scheme:inherit;
  -webkit-overflow-scrolling:touch;
}
/* bk-assistant-embed-css-end */


/* bk-login-qr-css-start */
.login-ios-qr{
  display:block!important;visibility:visible!important;opacity:1!important;
  box-sizing:border-box;width:100%;margin-top:10px;padding:14px 16px;
  border:1.5px solid var(--bk-brand,#3a6b4a)!important;border-radius:12px;
  background:#fff!important;color:var(--bk-brand,#3a6b4a)!important;
  font:inherit;font-size:16px;font-weight:700;flex-shrink:0;
}
.login-qr-overlay{touch-action:none}
/* bk-login-qr-css-end */

/* bk-certs-dialog-fit-start */
.certs-modal{
  --width:min(calc(100% - 20px),390px);
  --max-height:calc(100% - 24px - var(--ion-safe-area-top,env(safe-area-inset-top,0px)) - var(--ion-safe-area-bottom,env(safe-area-inset-bottom,0px)));
}
.certs-modal .certs-dialog{
  width:100%;
  max-width:100%;
  max-height:100%;
  min-height:0;
  box-sizing:border-box;
  overflow-x:hidden;
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-items:stretch;
  gap:10px;
  padding:12px 14px calc(14px + var(--ion-safe-area-bottom,env(safe-area-inset-bottom,0px)));
}
.certs-dialog h2{
  flex:0 0 auto;
  font-size:18px;
  line-height:1.25;
  padding:0 4px;
  overflow-wrap:anywhere;
}
.certs-dialog-meta{
  flex:0 0 auto;
  margin:0;
}
.certs-viewer-frame{
  flex:1 1 auto;
  min-height:0;
  margin:0;
  display:flex;
  align-items:center;
  justify-content:center;
}
.certs-viewer-frame img{
  width:100%;
  max-width:100%;
  height:auto;
  max-height:min(42vh,360px);
  object-fit:contain;
}
.certs-dialog-actions{
  flex:0 0 auto;
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
}
.certs-btn{
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  min-height:44px;
  padding:10px 12px;
  font-size:16px;
  white-space:nowrap;
}
/* bk-certs-dialog-fit-end */
/* bk-fix-pwa-3d-detail-iframe */
.project-detail-3d-frame{width:100%;height:min(62vw,380px);min-height:260px;border:0;display:block;background:#111827;position:relative;touch-action:none}
.project-detail-3d-frame canvas,.project-detail-3d-frame .lab-3d-viewer-mount,.project-detail-3d-frame .lab-3d-viewer-mount canvas,.project-detail-3d-frame .lab-gltf-anim-root,.project-detail-3d-frame .lab-gltf-anim-root canvas{width:100%!important;height:100%!important;display:block}
/* bk-fix-anim-near-fullscreen */
.project-detail-3d-wrap{gap:0!important}
.project-detail-3d-frame{margin:0!important}
.project-detail-3d-open{margin-top:0!important}
