:root{--ink:#13223b;--muted:#667085;--blue:#3178c6;--blue2:#e7f2ff;--green:#e7f7ea;--line:#e5e9f0;--bg:#f6f9fd;--card:#fff;--danger:#9c2e2e}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);background:var(--bg)}a{color:inherit}.flash-wrap{position:fixed;top:18px;left:50%;transform:translateX(-50%);z-index:50;width:min(720px,92vw)}.flash{padding:13px 18px;border-radius:14px;box-shadow:0 8px 30px #0002;background:#fff;margin-bottom:8px}.flash.success{border-left:5px solid #2c9d55}.flash.error{border-left:5px solid #d65353}.auth-shell{min-height:100vh;display:grid;grid-template-columns:.9fr 1.1fr;gap:36px;align-items:center;max-width:1240px;margin:auto;padding:48px}.brand-panel{padding:36px}.brand-mark{width:82px;height:82px;border-radius:24px;background:linear-gradient(135deg,#67a8ea,#2f6fb5);color:#fff;font-size:30px;font-weight:900;display:grid;place-items:center;box-shadow:0 18px 40px #3178c633}.brand-panel h1{font-size:45px;margin:24px 0 12px}.lead{font-size:23px;line-height:1.45}.soft{color:var(--muted);line-height:1.55}.auth-card,.single-card,.panel,.welcome{background:#fff;border:1px solid #e6edf6;border-radius:26px;box-shadow:0 12px 40px #1b3b6420}.auth-card{padding:34px}.auth-card h2{text-align:center;font-size:30px;margin:0 0 22px}.role-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.role-box{border:1px solid var(--line);border-radius:22px;padding:22px;display:flex;flex-direction:column;gap:13px}.parent-box{background:#fbfdff}.child-box{background:#fffdf7}.role-icon{font-size:42px}.role-box h3{font-size:25px;margin:0}label{display:flex;flex-direction:column;gap:7px;font-weight:700;font-size:14px}input,select{width:100%;padding:13px 14px;border:1px solid #cfd7e3;border-radius:12px;font-size:16px;background:#fff;color:var(--ink);outline:none}input:focus,select:focus{border-color:#6ea9e6;box-shadow:0 0 0 4px #d9edff}.btn{border:0;border-radius:13px;padding:14px 16px;font-size:16px;font-weight:800;cursor:pointer}.btn.primary{background:#276fb9;color:#fff}.btn.child{background:#f0b52e;color:#392b07}.text-link{text-align:center;font-size:14px;font-weight:700;color:#276fb9}.tiny,.prototype{font-size:12px;color:#7d8795}.prototype{text-align:center;margin:22px 0 0}.single-shell{min-height:100vh;display:grid;place-items:center;padding:30px}.single-card{width:min(520px,94vw);padding:36px}.single-card h1{margin:10px 0}.back{text-decoration:none;color:#50709b}.stack-form{display:flex;flex-direction:column;gap:16px;margin-top:22px}.topbar{height:70px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 5vw}.topbar div{display:flex;gap:15px;align-items:center}.topbar span{color:var(--muted);border-left:1px solid var(--line);padding-left:15px}.dashboard{max-width:1180px;margin:auto;padding:34px 24px 70px}.welcome{padding:28px 32px;display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.welcome h1{font-size:35px;margin:6px 0}.eyebrow{font-size:12px;letter-spacing:.16em;color:#4c78aa;font-weight:900}.big-icon{font-size:60px}.dash-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:22px}.panel{padding:25px}.panel h2{margin-top:0}.children-list{display:flex;flex-direction:column;gap:12px}.child-card{display:flex;gap:16px;align-items:center;border:1px solid var(--line);padding:16px;border-radius:18px}.avatar{width:50px;height:50px;border-radius:15px;background:#eef6ff;display:grid;place-items:center;font-size:25px}.child-card h3{margin:0}.child-card p{margin:3px 0;color:var(--muted)}.code{font-size:13px}.badge{margin-left:auto;font-size:12px;background:#e7f7ea;color:#237441;padding:7px 9px;border-radius:999px}.empty{padding:25px;border:1px dashed #cbd6e4;border-radius:16px;color:var(--muted)}.roadmap{margin-top:22px}.mini-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.mini-grid div{padding:15px;background:#f5f8fc;border-radius:14px}.child-header{display:grid;grid-template-columns:1.5fr .9fr .75fr 1fr auto;gap:14px;align-items:center;padding:22px 30px;background:#fff;border-bottom:1px solid #e7edf5}.child-ident,.info-chip{display:flex;align-items:center;gap:12px}.kid-avatar{width:62px;height:62px;border-radius:50%;background:#dff0ff;display:grid;place-items:center;font-size:35px}.child-ident h1{margin:0;font-size:28px}.child-ident p{margin:3px 0;color:var(--muted)}.info-chip{background:#f8fbff;border:1px solid #dce8f5;padding:13px 15px;border-radius:17px;font-size:24px}.info-chip div{display:flex;flex-direction:column;font-size:14px}.info-chip strong{font-size:17px}.info-chip.green{background:#e8f8e9;border-color:#c8e8cc}.logout-mini{font-size:13px;color:#64748b}.lesson-main{padding:28px 22px 36px;max-width:1500px;margin:auto}.lesson-title{text-align:center;font-size:48px;letter-spacing:.02em;margin:6px 0 25px}.schedule-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.day-card{background:#fff;border:1px solid #dfe6ef;border-radius:20px;overflow:hidden;box-shadow:0 7px 20px #1d355715}.day-card h3{text-align:center;margin:0;padding:17px 8px;background:#f6f7fa;font-size:18px}.day-card.today{outline:3px solid #90c8fb}.day-card.today h3{background:#dceeff}.lesson-row{width:100%;border:0;border-bottom:1px solid #edf0f4;background:#fff;display:grid;grid-template-columns:48px 36px 1fr;align-items:center;text-align:left;padding:15px 10px;color:var(--ink);font-size:15px;cursor:default}.lesson-row[onclick]{cursor:pointer}.lesson-row[onclick]:hover{background:#f2f8ff}.lesson-row.math-done{background:#eaf5ff}.time{font-size:13px;color:#475569}.subject-icon{font-size:22px}.kid-bottom{display:grid;grid-template-columns:1fr 1fr 1fr;gap:15px;align-items:center;margin-top:22px}.motivation,.smile,.materials{padding:20px;border-radius:20px;border:0}.motivation{background:#fff2ba}.smile{text-align:center;font-size:20px;font-style:italic;background:#e8f5ff}.materials{background:#fff;text-align:right;font-weight:800;color:var(--ink);font-size:16px;cursor:pointer}@media(max-width:1000px){.auth-shell{grid-template-columns:1fr}.brand-panel{text-align:center;padding:10px}.brand-mark{margin:auto}.dash-grid{grid-template-columns:1fr}.child-header{grid-template-columns:1fr 1fr}.schedule-grid{grid-template-columns:1fr 1fr}.mini-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.auth-shell{padding:20px}.role-grid{grid-template-columns:1fr}.brand-panel h1{font-size:34px}.child-header{grid-template-columns:1fr}.schedule-grid{grid-template-columns:1fr}.kid-bottom{grid-template-columns:1fr}.lesson-title{font-size:35px}.mini-grid{grid-template-columns:1fr}}

/* Zarządzanie kontem dziecka */
.child-card-manage{display:block;padding:0;overflow:hidden}.child-summary{display:flex;gap:16px;align-items:center;padding:16px}.child-main-info{min-width:0;flex:1}.code-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:6px}.copy-btn{border:1px solid #cbd7e5;background:#f7fbff;color:#276fb9;border-radius:9px;padding:6px 9px;font-size:12px;font-weight:800;cursor:pointer}.copy-btn:hover{background:#eaf4ff}.manage-actions{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);background:#fbfcfe}.manage-actions details{padding:12px 14px;border-right:1px solid var(--line)}.manage-actions details:last-child{border-right:0}.manage-actions summary{cursor:pointer;font-size:13px;font-weight:800;color:#39546f;list-style:none}.manage-actions summary::-webkit-details-marker{display:none}.manage-actions summary:after{content:' ▾';color:#8091a5}.manage-actions details[open] summary:after{content:' ▴'}.compact-form{display:flex;flex-direction:column;gap:10px;margin-top:12px}.compact-form label{font-size:12px}.compact-form input,.compact-form select{padding:10px;font-size:14px}.btn.small{padding:10px 12px;font-size:13px}.btn.danger{background:#b73a3a;color:white}.danger-zone summary{color:#a33b3b!important}.danger-zone[open]{background:#fff7f7}@media(max-width:760px){.manage-actions{grid-template-columns:1fr}.manage-actions details{border-right:0;border-bottom:1px solid var(--line)}.manage-actions details:last-child{border-bottom:0}.child-summary{align-items:flex-start}.badge{margin-left:0}}


/* MATH CHECKIN MVP */
.subject-bar{min-height:70px;background:#fff;border-bottom:1px solid var(--line);display:grid;grid-template-columns:auto 1fr 1fr auto auto;gap:20px;align-items:center;padding:10px 4vw;position:sticky;top:0;z-index:20}.plan-back{font-weight:800;text-decoration:none;color:#276fb9;background:#eef6ff;padding:11px 14px;border-radius:13px}.subject-kid{display:flex;align-items:center;gap:10px}.subject-kid>span{font-size:32px}.subject-kid div{display:flex;flex-direction:column}.subject-kid small{color:var(--muted)}.subject-name{text-align:center;font-size:20px}.subject-time{font-weight:800;color:#475569}.math-shell{max-width:980px;margin:0 auto;padding:38px 22px 80px}.math-intro{text-align:center;margin-bottom:25px}.math-intro h1{font-size:38px;margin:8px 0}.math-intro p{color:var(--muted);font-size:17px}.checkin-card,.next-step-card{background:#fff;border:1px solid #e4ebf4;border-radius:28px;box-shadow:0 12px 36px #15365a14;padding:28px;margin-top:20px}.question-block{padding:6px 0 22px}.question-block:not(:last-child){border-bottom:1px solid #eef1f5;margin-bottom:20px}.question-block h2{font-size:20px;margin:0 0 15px}.mood-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.mood-option input{position:absolute;opacity:0}.mood-option span{display:flex;flex-direction:column;align-items:center;gap:8px;font-size:35px;border:2px solid #e1e7ef;border-radius:20px;padding:18px;cursor:pointer;background:#fbfcfe}.mood-option b{font-size:15px}.mood-option input:checked+span{border-color:#75aee8;background:#eaf5ff;box-shadow:0 0 0 4px #e2f1ff}.two-questions{display:grid;grid-template-columns:1fr 1fr;gap:20px}.question-block.compact{border:1px solid #e8edf3!important;border-radius:18px;padding:18px;margin:0!important}.choice-row{display:flex;gap:10px;flex-wrap:wrap}.choice-row label{display:block;border:1px solid #d9e1ea;border-radius:12px;padding:10px 14px;cursor:pointer;font-weight:700}.material-row{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:14px}textarea{width:100%;padding:13px 14px;border:1px solid #cfd7e3;border-radius:12px;font:inherit;resize:vertical;outline:none}textarea:focus{border-color:#6ea9e6;box-shadow:0 0 0 4px #d9edff}.checkin-save{width:100%;font-size:18px}.teacher-bubble{margin-top:18px;background:#eef7ff;border:1px solid #cfe5fb;border-radius:18px;padding:17px 19px;line-height:1.5}.success-bubble{background:#eaf8ee;border-color:#cfe9d6;color:#245c35}.next-step-card{text-align:center}.next-step-card h2{font-size:27px;margin:7px 0}.next-step-card p{color:var(--muted)}.next-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:20px}.next-actions form{margin:0}.next-actions button{width:100%;border:1px solid #dbe5ef;background:#fff;border-radius:16px;padding:16px 10px;font-weight:800;font-size:15px;cursor:pointer}.next-actions button:hover{background:#f0f7ff;border-color:#9cc7ed}@media(max-width:760px){.subject-bar{grid-template-columns:1fr auto}.subject-kid,.subject-name{display:none}.math-intro h1{font-size:29px}.mood-grid,.two-questions,.material-row,.next-actions{grid-template-columns:1fr}.math-shell{padding:25px 14px 60px}}

.materials-admin-card{margin-top:22px;display:flex;align-items:center;justify-content:space-between;gap:22px}.materials-admin-card h2{margin:6px 0}.materials-admin-link{text-decoration:none;white-space:nowrap}.materials-page .topbar a{margin-left:18px}.material-list{display:flex;flex-direction:column;gap:12px}.material-card{display:flex;justify-content:space-between;align-items:center;gap:16px;border:1px solid var(--line);border-radius:17px;padding:16px;background:#fbfdff}.material-card p{margin:5px 0;color:var(--muted)}.material-card small{color:#8a94a3}.material-viewer{margin-top:22px}.hidden{display:none!important}.viewer-head{display:flex;align-items:end;justify-content:space-between;gap:20px}.viewer-head h2{margin:5px 0}.viewer-head label{min-width:180px}.book-page-frame{margin-top:18px;min-height:520px;background:#eef2f7;border:1px solid #d7dee8;border-radius:20px;padding:18px;display:grid;place-items:center;overflow:auto}.book-page-frame img{display:none;max-width:100%;height:auto;border-radius:8px;box-shadow:0 8px 30px #0002;background:#fff}.school-book-box{margin:12px 0 22px;padding:18px;border:1px solid #bad7f5;background:#f3f9ff;border-radius:18px}.school-book-title{display:flex;gap:12px;align-items:center;margin-bottom:14px}.school-book-title>span{font-size:34px}.school-book-title div{display:flex;flex-direction:column}.school-book-title small{color:var(--muted);margin-top:3px}.compact-preview{min-height:360px;max-height:760px;margin-top:14px}.internal-note{padding:14px 16px;background:#fff8dc;border:1px solid #f1df9b;border-radius:14px;margin-bottom:15px}.btn.small{padding:9px 12px;font-size:13px}@media(max-width:650px){.materials-admin-card,.material-card,.viewer-head{align-items:stretch;flex-direction:column}.book-page-frame{min-height:300px}}

.role-grid-three{grid-template-columns:repeat(3,1fr)}.teacher-box{background:#f7f2ff}.btn.teacher{background:#7651b8;color:#fff}.auth-card-wide{padding:30px}.admin-tools-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:22px}.admin-tools-grid .materials-admin-card{margin-top:0}.math-source-menu{margin:0 0 22px}.math-source-menu h2{text-align:center}.source-tiles{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.source-tile{text-decoration:none;background:#fff;border:1px solid #dfe7f1;border-radius:20px;padding:18px 12px;display:flex;min-height:145px;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:7px;box-shadow:0 7px 20px #1d355712;transition:.16s}.source-tile:hover{transform:translateY(-2px);box-shadow:0 10px 25px #1d355720}.source-tile>span{font-size:38px}.source-tile strong{font-size:15px}.source-tile small{color:var(--muted)}.learning-sources{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:22px}.source-section{scroll-margin-top:90px}.task-item{border:1px solid var(--line);border-radius:14px;padding:13px;margin-top:10px;background:#fbfdff}.task-item p{margin:5px 0;color:var(--muted)}@media(max-width:1000px){.role-grid-three{grid-template-columns:1fr}.source-tiles{grid-template-columns:repeat(2,1fr)}.admin-tools-grid{grid-template-columns:1fr}}@media(max-width:650px){.source-tiles,.learning-sources{grid-template-columns:1fr}}

.education-path{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}.education-path span{background:#fff;border:1px solid var(--line);border-radius:999px;padding:9px 12px;font-size:13px;font-weight:800;color:#36516f;box-shadow:0 5px 16px #1b3b6410}.education-path span::before{content:'•';margin-right:7px;color:#7aaee4}.education-path span:first-child::before{content:'';margin-right:0}@media(max-width:650px){.education-path{justify-content:center}}
