/* Numernabis Exclusive Tech — shared visual system for every product surface. */
:root{--axio-night:#11152a;--axio-night-2:#191731;--axio-blue:#3973ff;--axio-violet:#8b5cf6;--axio-cyan:#75d8ff;--axio-bg:#f6f7fc;--axio-card:rgba(255,255,255,.76);--axio-edge:rgba(112,130,190,.14);--axio-shadow:0 24px 70px rgba(24,31,70,.1);--axio-font:"Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",sans-serif}
.dashboard-page,.dashboard-page button,.dashboard-page input,.dashboard-page textarea,.dashboard-page select{font-family:var(--axio-font)}
.dashboard-page .app-logo,.dashboard-page .app-logo>b,.dashboard-page .dash-header h1,.dashboard-page .continue-card h2,.dashboard-page .dash-section h2,.dashboard-page .streak-card>strong,.dashboard-page .note-card h3,.dashboard-page .plans-grid article>span,.dashboard-page .plans-grid h3,.dashboard-page .plans-grid h3 small,.dashboard-page .sidebar-upgrade strong{font-family:var(--axio-font)}
body{background-color:var(--axio-bg)}
body:before,body:after{content:"";position:fixed;z-index:-1;pointer-events:none;border-radius:50%;filter:blur(110px)}
body:before{width:520px;height:520px;left:8%;top:-260px;background:rgba(73,120,255,.2)}body:after{width:460px;height:460px;right:-180px;bottom:-180px;background:rgba(139,92,246,.17)}
.logo-mark,.app-logo>img{background:var(--axio-night);border:1px solid rgba(120,145,255,.16);box-shadow:0 12px 32px rgba(37,47,105,.24)}
.logo,.app-logo{letter-spacing:2px}.logo>span:last-child>span,.app-logo em{color:#ff7a59}
.button-primary,.login-button{color:#fff;background:linear-gradient(135deg,var(--axio-blue),var(--axio-violet));box-shadow:0 13px 32px rgba(78,92,230,.25)}
.button-primary:hover,.login-button:hover{box-shadow:0 17px 40px rgba(78,92,230,.36)}

/* Public website */
.site-header{position:absolute;border-color:rgba(26,33,63,.09);background:rgba(248,249,253,.7);backdrop-filter:blur(20px)}
.nav-cta{color:#fff;border:0;background:var(--axio-night);border-radius:12px;padding:13px 19px;box-shadow:0 10px 24px rgba(17,21,42,.14)}.nav-cta:hover{background:linear-gradient(135deg,var(--axio-blue),var(--axio-violet))}
.hero{background:radial-gradient(circle at 70% 36%,rgba(106,142,255,.12),transparent 32%)}.hero h1 em,.section-heading h2 em{color:#5669ca}.eyebrow{color:#596aa9}.eyebrow span{background:linear-gradient(90deg,var(--axio-blue),var(--axio-violet))}
.hero-visual:before{background:linear-gradient(145deg,rgba(205,220,255,.8),rgba(232,217,255,.82))}.orbit{border-color:rgba(84,105,210,.18)}.lesson-card{border:1px solid rgba(255,255,255,.9);border-radius:22px;box-shadow:0 38px 90px rgba(39,47,91,.18);background:rgba(255,255,255,.82);backdrop-filter:blur(22px)}.formula{background:var(--axio-night)}.formula-two{color:#fff;background:linear-gradient(135deg,var(--axio-blue),var(--axio-violet))}.result-badge{border:1px solid rgba(255,255,255,.9);border-radius:16px}.result-badge strong{color:var(--axio-violet)}
.stats-strip,.contact-section{background:linear-gradient(145deg,var(--axio-night),var(--axio-night-2))}.offer-card,.testimonial,.contact-form{border-radius:20px;border-color:var(--axio-edge);box-shadow:0 20px 55px rgba(34,42,80,.06)}.offer-card.featured{background:linear-gradient(145deg,rgba(228,237,255,.9),rgba(241,231,255,.9));border-color:rgba(105,111,225,.22)}.popular,.card-icon{background:linear-gradient(135deg,var(--axio-blue),var(--axio-violet))}.method-section{background:linear-gradient(145deg,#172348,#221938)}.method-copy h2 em,.contact-copy h2 em{color:#aabaff}.stars{color:var(--axio-violet)}

/* Authentication */
.auth-page{background:var(--axio-bg)}.auth-intro{background:linear-gradient(150deg,#11162b 0%,#181a3d 55%,#25183c 100%)}.auth-intro:after{content:"";position:absolute;width:480px;height:480px;border-radius:50%;right:-210px;top:18%;background:radial-gradient(circle,rgba(92,121,255,.28),transparent 66%)}.auth-message h1 i{color:#9db2ff}.auth-message p{color:#b7c0dc}.auth-equation path{stroke:url(#axioGradient)}.auth-panel{background:radial-gradient(circle at 80% 20%,rgba(139,92,246,.11),transparent 34%)}.auth-card{padding:34px;border:1px solid rgba(255,255,255,.9);border-radius:24px;background:rgba(255,255,255,.7);box-shadow:var(--axio-shadow);backdrop-filter:blur(24px)}.auth-card input{border-radius:12px;background:rgba(255,255,255,.82)}.auth-card input:focus{border-color:var(--axio-blue);box-shadow:0 0 0 3px rgba(57,115,255,.1)}.auth-tabs{padding:4px;background:#edf0f8;border-radius:13px}.auth-tabs button{border-radius:10px}.auth-tabs button.active{background:#fff;color:var(--axio-blue);box-shadow:0 5px 15px rgba(33,42,80,.08)}

/* Dashboard and whiteboard refinements */
.modern-variant .dash-sidebar{background:linear-gradient(165deg,#11162b,#1a1835 62%,#121b31)}.modern-variant .new-board,.modern-variant .section-top>button,.modern-variant .share-button{background:linear-gradient(135deg,var(--axio-blue),var(--axio-violet));box-shadow:0 10px 24px rgba(77,91,220,.2)}
.modern-variant .continue-card,.modern-variant .streak-card,.modern-variant .note-card,.modern-variant .plans-grid article,.modern-variant .left-rail,.modern-variant .assistant-panel,.modern-variant .board-area{border-color:rgba(255,255,255,.92);box-shadow:var(--axio-shadow)}
.modern-variant .workspace-header{border-color:rgba(255,255,255,.95);box-shadow:0 12px 42px rgba(24,31,70,.09)}.modern-variant .assistant-badge,.modern-variant .chat-input button:last-child{background:linear-gradient(135deg,var(--axio-blue),var(--axio-violet))}.modern-variant .message.user p{background:linear-gradient(135deg,#202641,#171a2b)}
@media(max-width:900px){.auth-card{padding:26px}.site-header{background:rgba(248,249,253,.9)}}
.auth-equation path{stroke:#718cff}
.auth-card{animation:auth-enter .7s cubic-bezier(.2,.8,.2,1) both}.auth-card>label,.auth-card>div,.auth-card>.login-button{animation:auth-item .55s both}.auth-card>label:nth-of-type(1){animation-delay:.12s}.auth-card>label:nth-of-type(2){animation-delay:.18s}.auth-card>label:nth-of-type(3){animation-delay:.24s}.auth-tabs button{position:relative;transition:color .25s,transform .25s}.auth-tabs button:active{transform:scale(.97)}.register-only{transform-origin:top}.register-mode .register-only{animation:auth-expand .4s cubic-bezier(.2,.8,.2,1) both}.login-button{transition:transform .25s,box-shadow .25s,opacity .25s}.login-button:hover{transform:translateY(-2px)}.login-button:disabled{opacity:.65;cursor:wait}.auth-loading .login-button span:last-child{animation:auth-spin .8s linear infinite}.auth-success{animation:auth-success .45s ease both}.auth-failed{animation:auth-shake .35s ease}.auth-error{min-height:18px;margin:10px 0 0!important;color:#c43e56!important;font-size:11px!important;text-align:center}.auth-equation svg{animation:auth-drift 7s ease-in-out infinite alternate}
@keyframes auth-enter{from{opacity:0;transform:translateY(28px) scale(.97)}to{opacity:1;transform:none}}@keyframes auth-item{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes auth-expand{from{opacity:0;transform:scaleY(.65) translateY(-10px)}to{opacity:1;transform:none}}@keyframes auth-spin{to{transform:rotate(360deg)}}@keyframes auth-success{to{opacity:0;transform:translateY(-16px) scale(.98)}}@keyframes auth-shake{25%{transform:translateX(-7px)}50%{transform:translateX(6px)}75%{transform:translateX(-3px)}}@keyframes auth-drift{to{transform:translate(18px,-9px)}}
@media(prefers-reduced-motion:reduce){.auth-card,.auth-card>label,.auth-card>div,.auth-card>.login-button,.register-mode .register-only,.auth-equation svg{animation:none!important}.login-button{transition:none}}
.auth-panel{position:relative;overflow:hidden}.auth-panel:before,.auth-panel:after{content:"";position:absolute;border-radius:50%;filter:blur(4px);pointer-events:none;animation:auth-orbit 9s ease-in-out infinite alternate}.auth-panel:before{width:210px;height:210px;right:-70px;top:8%;background:rgba(91,116,255,.13)}.auth-panel:after{width:170px;height:170px;left:-55px;bottom:8%;background:rgba(153,86,245,.1);animation-delay:-4s}.auth-card{position:relative;z-index:1;transition:min-height .4s cubic-bezier(.2,.8,.2,1),box-shadow .3s}.auth-switching{animation:auth-panel-switch .58s cubic-bezier(.2,.8,.2,1)}.auth-switching>div:not(.auth-tabs),.auth-switching>label,.auth-switching>.auth-options,.auth-switching>.login-button{animation:auth-content-switch .52s cubic-bezier(.2,.8,.2,1) both}.auth-tabs button.active{animation:auth-tab-pop .38s cubic-bezier(.2,.9,.2,1)}.register-mode .auth-card{box-shadow:0 25px 70px rgba(82,72,205,.22)}
@keyframes auth-panel-switch{0%{transform:translateX(0) scale(1)}38%{transform:translateX(12px) scale(.985)}100%{transform:translateX(0) scale(1)}}@keyframes auth-content-switch{0%{opacity:0;transform:translateY(14px)}45%{opacity:0;transform:translateY(9px)}100%{opacity:1;transform:none}}@keyframes auth-tab-pop{0%{transform:scale(.9)}65%{transform:scale(1.04)}100%{transform:scale(1)}}@keyframes auth-orbit{to{transform:translate(35px,45px) scale(1.18)}}
@media(prefers-reduced-motion:reduce){.auth-switching,.auth-switching>div,.auth-switching>label,.auth-switching>.auth-options,.auth-switching>.login-button,.auth-panel:before,.auth-panel:after,.auth-tabs button.active{animation:none!important}}
.auth-notice{display:none;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;margin:-42px 0 18px;padding:11px 12px;border:1px solid #f2bdc7;border-radius:13px;background:#fff3f5;color:#82243a;box-shadow:0 12px 28px rgba(151,47,71,.12)}.auth-notice.show{display:grid;animation:notice-in .45s cubic-bezier(.2,.9,.2,1) both}.auth-notice-icon{display:grid;place-items:center;width:27px;height:27px;border-radius:9px;background:#dc4968;color:#fff;font-weight:800}.auth-notice strong{display:block;font-size:11px}.auth-notice p{margin:2px 0 0!important;color:#a04c5e!important;font-size:9px!important;line-height:1.35}.auth-notice button{border:0;border-radius:8px;background:#dc4968;color:#fff;padding:8px 10px;font-size:9px;font-weight:700;cursor:pointer}.auth-notice button:hover{background:#bd3552}.auth-notice button[hidden]{display:none}.auth-error{display:none}.auth-failed{animation:none}.auth-switching{animation:none}.auth-switching .auth-heading{animation:heading-swap .42s cubic-bezier(.2,.8,.2,1) both}.auth-switching>label:not(.register-only),.auth-switching .register-only,.auth-switching>.auth-options,.auth-switching>.login-button{animation:field-swap .42s cubic-bezier(.2,.8,.2,1) both}.auth-switching>label:nth-of-type(2){animation-delay:.035s}.auth-switching>label:nth-of-type(3){animation-delay:.07s}.auth-tabs button{outline:0}.auth-tabs button:focus-visible{box-shadow:inset 0 0 0 2px #607cff}.auth-message .kicker{animation:left-copy-in .65s .12s both}.auth-message h1{animation:left-copy-in .75s .22s cubic-bezier(.2,.8,.2,1) both}.auth-message h1 i{display:inline-block;animation:line-float 4.2s 1.1s ease-in-out infinite}.auth-message p{animation:left-copy-in .65s .4s both}.auth-intro .app-logo{animation:logo-in .65s both}.auth-equation span{animation:formula-float 4s ease-in-out infinite}.auth-equation path{stroke-dasharray:760;stroke-dashoffset:760;animation:draw-equation 1.8s .45s ease forwards}.auth-panel{animation:panel-light-in .8s both}
@keyframes notice-in{0%{opacity:0;transform:translateY(-10px) scale(.97)}60%{transform:translateY(2px) scale(1.01)}100%{opacity:1;transform:none}}@keyframes heading-swap{0%{opacity:0;transform:translateY(9px)}100%{opacity:1;transform:none}}@keyframes field-swap{0%{opacity:.25;transform:translateY(6px)}100%{opacity:1;transform:none}}@keyframes left-copy-in{from{opacity:0;transform:translateX(-28px)}to{opacity:1;transform:none}}@keyframes line-float{50%{transform:translateY(-7px);text-shadow:0 10px 30px rgba(118,143,255,.28)}}@keyframes logo-in{from{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}@keyframes formula-float{50%{transform:translateY(-8px) rotate(-2deg)}}@keyframes draw-equation{to{stroke-dashoffset:0}}@keyframes panel-light-in{from{opacity:0}to{opacity:1}}
@media(max-height:820px) and (min-width:901px){.auth-card{padding:25px}.back-link{margin-bottom:48px}.auth-card>div>p{margin-bottom:24px}.auth-card>label{margin:14px 0}}
@media(max-width:520px){.auth-notice{grid-template-columns:28px 1fr;margin-top:-38px}.auth-notice button{grid-column:2/3;justify-self:start}}
@media(prefers-reduced-motion:reduce){.auth-notice.show,.auth-switching .auth-heading,.auth-switching>label,.auth-switching>.auth-options,.auth-switching>.login-button,.auth-message .kicker,.auth-message h1,.auth-message h1 i,.auth-message p,.auth-intro .app-logo,.auth-equation span,.auth-equation path,.auth-panel{animation:none!important}}

/* Logowanie: nieruchomy interfejs; animowane są wyłącznie dekoracyjne koła w tle. */
.auth-card,.auth-card *,.auth-message,.auth-message *,.auth-intro .app-logo,.auth-equation,.auth-equation *,.auth-panel,.auth-notice.show,.auth-switching,.auth-switching *{animation:none!important;transition:none!important;transform:none}.auth-equation path{stroke-dasharray:none;stroke-dashoffset:0}.auth-panel:before,.auth-panel:after{animation:auth-background-dots 12s ease-in-out infinite alternate!important}.auth-panel:after{animation-delay:-6s!important}
@keyframes auth-background-dots{0%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(18px,24px,0) scale(1.06)}100%{transform:translate3d(-12px,38px,0) scale(1.12)}}
@media(prefers-reduced-motion:reduce){.auth-panel:before,.auth-panel:after{animation:none!important}}
.password-wrap #show-password{top:12px;right:10px;width:30px;height:30px;display:grid;place-items:center;padding:4px;border-radius:8px;color:#58706b}.password-wrap #show-password:hover{background:#edf2f1;color:#17302d}.password-wrap #show-password svg{grid-area:1/1;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.password-wrap #show-password .eye-closed{display:none}.password-wrap #show-password.showing .eye-open{display:none}.password-wrap #show-password.showing .eye-closed{display:block}

/* Animacje wyłącznie lewej części ekranu logowania. */
.auth-intro .app-logo{animation:intro-logo .7s cubic-bezier(.2,.8,.2,1) both!important}.auth-message .kicker{animation:intro-copy .65s .12s cubic-bezier(.2,.8,.2,1) both!important}.auth-message h1{animation:intro-copy .75s .22s cubic-bezier(.2,.8,.2,1) both!important}.auth-message p{animation:intro-copy .7s .38s cubic-bezier(.2,.8,.2,1) both!important}.auth-message h1 i{display:inline-block;animation:intro-accent 4.5s 1.2s ease-in-out infinite!important}.auth-equation span{animation:intro-formula 4.8s 1s ease-in-out infinite!important}.auth-equation path{stroke-dasharray:780;stroke-dashoffset:780;animation:intro-draw 1.8s .5s ease forwards!important}
@keyframes intro-logo{from{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:none}}@keyframes intro-copy{from{opacity:0;transform:translateX(-34px)}to{opacity:1;transform:none}}@keyframes intro-accent{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px);text-shadow:0 14px 34px rgba(116,141,255,.3)}}@keyframes intro-formula{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-9px) rotate(-2deg)}}@keyframes intro-draw{to{stroke-dashoffset:0}}
@media(prefers-reduced-motion:reduce){.auth-intro .app-logo,.auth-message .kicker,.auth-message h1,.auth-message p,.auth-message h1 i,.auth-equation span,.auth-equation path{animation:none!important}.auth-equation path{stroke-dashoffset:0}}
.code-only,.confirmation-only{display:none!important}.register-mode .confirmation-only,.reset-new-mode .confirmation-only{display:block!important}.code-mode .code-only,.reset-code-mode .code-only{display:block!important}.code-mode .register-only,.code-mode .password-field,.reset-start-mode .register-only,.reset-start-mode .password-field,.reset-code-mode .register-only,.reset-code-mode .password-field,.reset-new-mode .register-only,.reset-new-mode .code-only{display:none!important}.code-mode .auth-tabs,.reset-start-mode .auth-tabs,.reset-code-mode .auth-tabs,.reset-new-mode .auth-tabs{display:none!important}.reset-new-mode .password-field{display:block!important}.code-only input{text-align:center;font:700 22px/1 Manrope;letter-spacing:8px}.code-mode .auth-options,.reset-start-mode .auth-options,.reset-code-mode .auth-options,.reset-new-mode .auth-options{display:none}.code-mode .back-link,.reset-start-mode .back-link,.reset-code-mode .back-link,.reset-new-mode .back-link{margin-bottom:42px}
.password-wrap #show-password{top:7px;bottom:0;right:10px;margin:auto 0;width:34px;height:34px;padding:7px;border-radius:50%;line-height:0}.password-wrap #show-password svg{width:19px;height:19px;margin:auto}
.password-wrap #show-confirm-password{top:7px;bottom:0;right:10px;margin:auto 0;width:34px;height:34px;display:grid;place-items:center;padding:7px;border:0;border-radius:50%;background:transparent;color:#58706b;line-height:0}.password-wrap #show-confirm-password:hover{background:#edf2f1;color:#17302d}.password-wrap #show-confirm-password svg{grid-area:1/1;width:19px;height:19px;margin:auto;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.password-wrap #show-confirm-password .eye-closed{display:none}.password-wrap #show-confirm-password.showing .eye-open{display:none}.password-wrap #show-confirm-password.showing .eye-closed{display:block}
.password-wrap input::-ms-reveal,.password-wrap input::-ms-clear{display:none;width:0;height:0}.password-wrap input::-webkit-credentials-auto-fill-button,.password-wrap input::-webkit-textfield-decoration-container{visibility:hidden;display:none!important;pointer-events:none}.password-wrap input{appearance:none;-webkit-appearance:none}
.auth-notice,.code-mode .auth-notice,.reset-start-mode .auth-notice,.reset-code-mode .auth-notice{width:100%;margin:0 0 22px;padding:13px 14px;grid-template-columns:30px minmax(0,1fr) auto;gap:11px;align-items:center}.auth-notice-icon{width:30px;height:30px}.auth-notice strong{font-size:11px;line-height:1.35}.auth-notice p{font-size:9px!important;line-height:1.45}.auth-notice+ .auth-tabs{margin-top:0}@media(max-width:520px){.auth-notice,.code-mode .auth-notice,.reset-start-mode .auth-notice,.reset-code-mode .auth-notice{margin:0 0 20px;grid-template-columns:30px minmax(0,1fr)}.auth-notice button{grid-column:2}}
.auth-card .back-link{margin-bottom:32px}.auth-card:has(.auth-notice.show) .back-link{margin-bottom:22px}.code-mode .back-link,.reset-start-mode .back-link,.reset-code-mode .back-link{margin-bottom:28px}.code-mode .auth-card:has(.auth-notice.show) .back-link,.reset-start-mode .auth-card:has(.auth-notice.show) .back-link,.reset-code-mode .auth-card:has(.auth-notice.show) .back-link{margin-bottom:20px}
.auth-notice.success{border-color:#a9ddca;background:#effbf6;color:#17654f;box-shadow:0 12px 28px rgba(34,132,101,.1)}.auth-notice.success .auth-notice-icon{background:#25a67d}.auth-notice.success p{color:#4a8373!important}

/* Refined whiteboard controls. */
.modern-variant .left-rail{gap:5px}.modern-variant .tool{position:relative;min-height:62px}.modern-variant .tool span{width:34px;height:34px;margin:0 auto 2px;display:grid;place-items:center;border:1px solid rgba(88,105,160,.12);border-radius:10px;background:linear-gradient(145deg,#fff,#f0f3fb);box-shadow:0 5px 13px rgba(31,40,77,.07);transition:.18s}.modern-variant .tool svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.modern-variant .tool:hover span{transform:translateY(-2px);box-shadow:0 8px 18px rgba(57,78,145,.13)}.modern-variant .tool.active span{color:#fff;border-color:transparent;background:linear-gradient(135deg,var(--axio-blue),var(--axio-violet));box-shadow:0 8px 20px rgba(65,91,220,.28)}.modern-variant .tool.active svg{stroke-width:1.9}.modern-variant .tool.active:before{content:"";position:absolute;left:-8px;width:3px;height:24px;border-radius:4px;background:linear-gradient(var(--axio-blue),var(--axio-violet));box-shadow:0 0 12px rgba(71,104,255,.5)}
.modern-variant .tool-options{gap:2px;max-width:calc(100% - 36px)}.modern-variant .colors{display:flex;gap:7px;flex-wrap:wrap;max-width:390px;align-items:center}.modern-variant .colors button{width:23px;height:23px;border:3px solid #fff;outline:1px solid rgba(34,43,74,.12);box-shadow:0 3px 9px rgba(31,39,70,.12);transition:transform .15s,box-shadow .15s}.modern-variant .colors button:hover{transform:translateY(-2px) scale(1.08)}.modern-variant .colors button.active{outline:2px solid var(--axio-blue);outline-offset:2px;box-shadow:0 4px 12px rgba(57,115,255,.24)}
.custom-color{--picked-color:#3973ff;position:relative;width:29px;height:29px;flex:0 0 29px;display:grid;place-items:center;border:2px solid #fff;border-radius:9px;background:conic-gradient(#ff3b30,#ffcc00,#34c759,#00c7be,#007aff,#af52de,#ff2d55,#ff3b30);box-shadow:0 3px 10px rgba(31,39,70,.18);cursor:pointer;transition:.16s}.custom-color:hover{transform:translateY(-2px) scale(1.06)}.custom-color.active{outline:2px solid var(--picked-color);outline-offset:2px}.custom-color input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.custom-color span{width:19px;height:19px;display:grid;place-items:center;border-radius:6px;background:#fff;color:#222b45}.custom-color svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.clear-board-button{width:34px;height:34px;display:grid;place-items:center;border-radius:9px!important;color:#dc4b5d!important;background:#fff1f3!important;transition:.16s}.clear-board-button:hover{transform:translateY(-1px);color:#fff!important;background:#e84b60!important;box-shadow:0 7px 17px rgba(220,75,93,.24)}.clear-board-button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.shape-picker{position:absolute;z-index:8;left:12px;top:245px;width:154px;padding:8px;display:grid;grid-template-columns:1fr 1fr;gap:6px;border:1px solid rgba(112,130,190,.18);border-radius:15px;background:rgba(255,255,255,.94);box-shadow:0 18px 45px rgba(28,37,75,.16);backdrop-filter:blur(18px);opacity:0;visibility:hidden;transform:translateX(-8px) scale(.96);transform-origin:left center;transition:.16s}.shape-picker.open{opacity:1;visibility:visible;transform:none}.shape-picker button{padding:8px 4px;border:1px solid #e8ebf3;border-radius:10px;background:#f8f9fd;color:#626d85;cursor:pointer}.shape-picker button:hover,.shape-picker button.active{color:#fff;border-color:transparent;background:linear-gradient(135deg,var(--axio-blue),var(--axio-violet))}.shape-picker svg{display:block;width:21px;height:21px;margin:auto;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.shape-picker span{display:block;margin-top:4px;font-size:8px;font-weight:700}
#whiteboard.eraser-active{cursor:none}.eraser-cursor{position:absolute;z-index:3;display:none;place-items:center;border:2px solid rgba(57,115,255,.8);border-radius:50%;background:rgba(255,255,255,.62);box-shadow:0 2px 10px rgba(38,56,115,.18),inset 0 0 0 1px rgba(255,255,255,.9);pointer-events:none;transform:translate(-50%,-50%);backdrop-filter:blur(2px)}.eraser-cursor.visible{display:grid}.eraser-cursor svg{width:min(18px,55%);height:min(18px,55%);fill:none;stroke:#53617d;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.board-shortcuts{position:absolute;right:18px;bottom:18px;display:flex;gap:8px;z-index:3;pointer-events:none}.board-shortcuts>span{padding:7px 10px;border:1px solid rgba(255,255,255,.94);border-radius:10px;background:rgba(255,255,255,.72);box-shadow:0 7px 20px rgba(28,36,68,.07);backdrop-filter:blur(16px);font-size:8px;color:#778094}.board-shortcuts kbd{font:700 8px Manrope;color:#3e4a68;background:#eef1f8;border:1px solid #dfe4ef;border-bottom-width:2px;border-radius:5px;padding:2px 5px}
@media(max-width:700px){.board-shortcuts{display:none}.modern-variant .colors{min-width:235px}.modern-variant .tool-options{overflow-x:auto;justify-content:flex-start}}
.modern-variant .tool-options .colors{display:flex;gap:7px;flex-wrap:nowrap;min-width:auto;max-width:none;overflow:visible}.modern-variant .recent-colors{display:flex;gap:7px}.modern-variant .color-palette{display:none}.modern-variant .color-palette.open{display:grid}.modern-variant .palette-trigger{width:25px;height:25px;flex:0 0 25px}.modern-variant .rail-ai-tools{margin-top:auto}.modern-variant .rail-ai-tools .tool{min-height:55px}

/* JSXGraph 3D workspace and resizable assistant. */
.workspace{grid-template-columns:76px minmax(0,1fr) var(--assistant-width,330px)}
.modern-variant .workspace{grid-template-columns:82px minmax(0,1fr) var(--assistant-width,360px)}
.assistant-panel{position:relative}
.assistant-resizer{position:absolute;z-index:12;left:-10px;top:22px;bottom:22px;width:20px;cursor:col-resize;touch-action:none;outline:none}
.assistant-resizer:before{content:"";position:absolute;left:9px;top:50%;width:2px;height:58px;transform:translate(-50%,-50%);border-radius:999px;background:#c7cedd;transition:width .16s ease,height .16s ease,background .16s ease,box-shadow .16s ease}
.assistant-resizer:after{content:none}
.assistant-resizer:hover:before,.assistant-resizer:focus-visible:before,.resizing-assistant .assistant-resizer:before{width:5px;height:82px;background:#5d7cf3;box-shadow:0 0 0 3px rgba(93,124,243,.1)}
.assistant-resizer{left:0;width:20px;transform:translateX(-50%)}.assistant-resizer:before{left:50%;width:4px;height:68px;background:#7187cf;box-shadow:0 2px 9px rgba(58,73,120,.24)}.assistant-resizer:hover:before,.assistant-resizer:focus-visible:before,.resizing-assistant .assistant-resizer:before{width:7px;height:90px;background:#496bf0;box-shadow:0 0 0 4px rgba(85,116,242,.12),0 5px 15px rgba(61,83,184,.3)}
.resizing-assistant,.resizing-assistant *{cursor:col-resize!important;user-select:none!important}
#geometry-board{display:block;width:100%;height:270px;border:0!important;border-radius:0;background:radial-gradient(circle,#21423e,#102c29);touch-action:none;overflow:hidden}
#geometry-board svg{background:transparent!important}
#geometry-board .JXGtext{font-family:"DM Sans",sans-serif!important;font-weight:700!important}
.geometry-error{display:grid;height:100%;place-items:center;margin:0;color:#f6b6b6;font-size:11px}
@media(max-width:900px){.workspace,.modern-variant .workspace{grid-template-columns:64px minmax(0,1fr)}.assistant-resizer{display:none}}
@media(max-width:520px){.workspace,.modern-variant .workspace{grid-template-columns:58px minmax(0,1fr)}}
.geometry-toggles #geometry-angles{color:#70e0be;border-color:rgba(112,224,190,.45)}
.prism-variants{display:flex;flex-wrap:wrap;gap:5px;padding:0 10px 10px}.prism-variants[hidden]{display:none}.prism-variants button{flex:1 1 30%;border:1px solid rgba(142,170,164,.3);border-radius:7px;background:rgba(255,255,255,.04);color:#bdd1cd;padding:7px 5px;font-size:8px;cursor:pointer}.prism-variants button.active{background:#eaf0ff;color:#315fcf;border-color:#7696ed}
.geometry-catalog{position:absolute;z-index:20;inset:58px 0 0;display:flex;flex-direction:column;background:rgba(12,39,36,.98);transform:translateX(102%);transition:transform .2s ease}.geometry-catalog.open{transform:none}.geometry-catalog>header{padding:13px 15px!important;border-bottom:1px solid rgba(255,255,255,.1);cursor:default!important}.geometry-catalog>header button{font-size:18px!important}.geometry-catalog>input{margin:10px;border:1px solid rgba(255,255,255,.18);border-radius:9px;background:rgba(255,255,255,.08);color:#fff;padding:10px 12px;font-size:10px;outline:none}.geometry-catalog>input::placeholder{color:#89a7a1}.geometry-catalog #angle-list{flex:1;overflow:auto;padding:0 10px 12px}.geometry-catalog #angle-list>button{width:100%;display:grid;grid-template-columns:58px 1fr;gap:9px;text-align:left;padding:9px;margin:0 0 6px;border:1px solid rgba(255,255,255,.1);border-radius:9px;background:rgba(255,255,255,.04);color:#fff;cursor:pointer}.geometry-catalog #angle-list>button:hover{background:rgba(112,224,190,.12);border-color:#70e0be}.geometry-catalog #angle-list>button>strong{color:#70e0be;font-size:10px}.geometry-catalog #angle-list span,.geometry-catalog #angle-list small{display:block;font-size:9px}.geometry-catalog #angle-list small{margin-top:3px;color:#8fa9a4}.geometry-catalog #angle-list>p{text-align:center;color:#9dbbb5;font-size:10px;padding:25px 8px}
.geometry-catalog[aria-hidden="true"]{display:none}.geometry-toggles #geometry-angles:disabled{opacity:.48;cursor:not-allowed;border-style:dashed}.geometry-roadmap{margin:0;padding:0 18px 15px;color:#8fa9a4;font-size:8px;line-height:1.45}
.geometry-toggles button:disabled{opacity:.42;cursor:not-allowed}
#geometry-angles,.geometry-roadmap,.geometry-catalog{display:none!important}
.session-time{display:flex!important;align-items:center;justify-content:flex-start!important;gap:10px;margin-top:16px;padding:11px 12px;border-radius:10px;background:#f4f6fb}.session-time>span{display:grid!important;place-items:center;width:30px;height:30px;border-radius:9px;background:#e8edff!important;color:#506de2!important;font-size:17px!important}.session-time div{display:block!important}.session-time small,.session-time strong{display:block}.session-time small{font-size:7px;letter-spacing:1px;color:#87908f}.session-time strong{margin-top:2px;font-size:12px;color:#263331}
.saved-boards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.saved-board-card{overflow:hidden;border:1px solid rgba(94,106,150,.12);border-radius:16px;background:#fff;box-shadow:0 16px 38px rgba(31,40,77,.09)}.board-preview{height:135px;background-color:#f8f9fd;background-size:cover;background-position:center;border-bottom:1px solid #edf0f5}.board-card-copy{padding:17px}.board-card-copy small{font-size:8px;color:#85908e}.board-card-copy h3{margin:7px 0 4px;font:700 15px Manrope}.board-card-copy p{margin:0;color:#7a8583;font-size:9px}.board-card-copy footer{display:flex;gap:8px;margin-top:16px}.board-card-copy a,.board-card-copy button{flex:1;border:0;border-radius:8px;padding:9px;text-align:center;text-decoration:none;font-size:9px;font-weight:700;cursor:pointer}.board-card-copy a{background:linear-gradient(135deg,var(--axio-blue),var(--axio-violet));color:#fff}.board-card-copy button{background:#fff0f2;color:#c44358}.boards-counter{padding:7px 10px;border-radius:999px;background:#edf1ff;color:#4967df;font-size:9px;font-weight:700}.boards-empty{grid-column:1/-1;padding:28px;border:1px dashed #cbd1df;border-radius:12px}@media(max-width:850px){.saved-boards-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.saved-boards-grid{grid-template-columns:1fr}}
.board-preview-empty{position:relative;background-color:#f6f8fe;background-image:radial-gradient(#d4daf0 1px,transparent 1px);background-size:18px 18px}.board-preview-empty:after{content:'Pusta tablica';position:absolute;inset:50% auto auto 50%;translate:-50% -50%;padding:7px 10px;border-radius:8px;background:#fff;color:#7d88a5;font-size:8px;font-weight:700;box-shadow:0 5px 15px rgba(47,58,104,.08)}
#geometry-dimension{display:none!important}.geometry-data{justify-content:flex-end!important}

/* Dashboard typography: one Polish-capable family across every UI component. */
.dashboard-page,.dashboard-page *{font-family:var(--axio-font)!important}
