:root{--navy:#1e2a45;--rust:#c64e13;--paper:#ffffff;--line:#eee4da;--muted:#5e6c82;--mint:#def3ed;--teal:#0e8075;--peach:#ffeadc;--blue:#e4efff}*{box-sizing:border-box}body{margin:0;font:14px 'Segoe UI',Arial,sans-serif;background:#ffffff;color:var(--navy)}button,input,select,textarea{font:inherit}button,a,select{cursor:pointer}button{border:1px solid var(--line);color:var(--navy);background:white;border-radius:11px;padding:12px 16px;font-weight:600}button:hover{filter:brightness(.97)}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible{outline:3px solid #4d8ef0;outline-offset:2px}.top{max-width:1180px;margin:auto;padding:20px 32px;background:white;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{color:var(--navy);font-size:16px;text-decoration:none;font-weight:800;display:flex;align-items:center;gap:10px}.brand b{display:inline-grid;place-items:center;background:var(--rust);color:white;border-radius:8px;width:29px;height:29px;font-size:16px}.top-right{display:flex;align-items:center;gap:14px}.top-right button{padding:8px 12px;font-size:11px}.connection{font-size:11px;color:#927447;display:flex;align-items:center;gap:7px}.connection:before{content:'';width:7px;height:7px;background:currentColor;border-radius:100%}.connection.live{color:var(--teal)}.connection.off{color:#b94f35}.pilot{font-size:10px;text-align:center;padding:9px 15px;color:#8c7654;background:#fff0cd;max-width:1180px;margin:auto;line-height:1.7}main{background:var(--paper);max-width:1180px;min-height:calc(100vh - 110px);margin:auto;padding:36px 40px 100px}.eyebrow{font-size:11px;color:#657897;margin-bottom:8px}.heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:25px}h1{font-size:27px;letter-spacing:-.7px;margin:5px 0;line-height:1.4}h2{font-size:16px;line-height:1.5;margin:0 0 6px}h3{font-size:14px;margin:0 0 6px}p{font-size:12px;color:var(--muted);line-height:1.75;margin:5px 0}.avatar{width:42px;height:42px;display:grid;place-items:center;background:var(--mint);color:var(--teal);border-radius:50%;font-weight:700;flex-shrink:0}.primary{background:var(--rust);color:white;border-color:var(--rust)}.primary.wide{width:100%;margin-top:18px}.summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.summary>div{padding:18px;border:1px solid var(--line);border-radius:14px;background:white}.summary strong{font-size:25px;display:block;margin-bottom:4px}.summary small{font-size:11px;color:var(--muted)}.summary .mint{background:var(--mint);border-color:var(--mint)}.summary .peach{background:var(--peach);border-color:var(--peach)}.summary .mint strong{color:var(--teal)}.summary .peach strong{color:var(--rust)}.columns{display:grid;grid-template-columns:1.5fr 1fr;gap:24px}.card{border:1px solid var(--line);border-radius:16px;padding:22px;background:white;margin-bottom:15px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.badge{font-size:10px;padding:6px 9px;border-radius:7px;background:#f1f3f7;display:inline-block}.badge.mint{color:var(--teal);background:var(--mint)}.badge.peach{color:var(--rust);background:var(--peach)}.row{display:flex;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid var(--line)}.row:last-child{border:0}.row .body{flex:1;min-width:0}.row strong{font-size:12px;display:block}.row p{font-size:10px;margin-top:4px}.initials{width:36px;height:36px;background:#eef1f7;border-radius:50%;display:grid;place-items:center;font-size:11px;flex-shrink:0}.status{display:flex;gap:5px;flex-shrink:0}.status button{font-size:10px;padding:8px 9px;border-radius:8px}.status .present.selected{background:var(--mint);border-color:var(--teal);color:var(--teal)}.status .absent.selected{background:var(--rust);border-color:var(--rust);color:white}.status .late.selected{background:#fff0c4;border-color:#b98d22;color:#856114}.pending{color:#9a8876;font-size:10px}.toolbar{display:flex;gap:12px;align-items:end;margin:22px 0;flex-wrap:wrap}.toolbar label{flex:1}.toolbar select,.toolbar input{width:100%}label{display:block;font-size:11px;color:#667086;margin:12px 0 5px}input,select,textarea{display:block;border:1px solid var(--line);border-radius:9px;background:white;color:var(--navy);padding:12px;width:100%;margin-top:6px}input:focus,select:focus,textarea:focus{outline:2px solid #83a9bd}.lesson{display:flex;gap:16px;margin:15px 0}.lesson-time{width:45px;flex-shrink:0;font-size:12px;padding-top:15px;text-align:center;font-weight:600}.lesson-time small{font-size:10px;display:block;font-weight:400;margin-top:5px;color:var(--muted)}.lesson .card{flex:1;margin:0;padding:18px}.lesson .card.current{border-color:#ec9e75;background:#fff3e9}.lesson button{font-size:11px;padding:9px 13px;margin-top:12px}.quick{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0}.quick button{padding:18px 8px;font-size:11px}.quick button span{display:block;font-size:19px;margin-bottom:10px}.hint{border-radius:12px;padding:18px;background:#fff1ca;color:#89713c;font-size:11px;line-height:1.8}.hint.mint{background:var(--mint);color:#26736c}.hint.error{background:#fff0eb;color:#ae4c31}.child-card{display:flex;gap:12px;align-items:center}.child-card .avatar{background:#fff0c6;color:#9d7416}.live-state{border-radius:16px;background:var(--mint);padding:25px;margin:18px 0}.live-state.absent{background:var(--peach)}.live-state.pending{background:#f5efe6;color:var(--navy)}.live-state h2{font-size:21px;margin:10px 0}.live-state p{color:inherit;opacity:.8}.periods{display:flex;gap:7px;margin-top:20px;flex-wrap:wrap}.periods button{font-size:11px;padding:10px 12px;border:1px solid transparent}.periods button.selected{border-color:var(--navy)}.periods button.absent{background:var(--rust);color:white}.periods button.present{background:white;color:var(--teal)}.periods button.late{background:#fff0c6;color:#89671a}.periods button.unknown{background:#eae5dd;color:#746a60}.history{border-left:2px solid var(--line);margin-left:6px;padding-left:18px}.event{padding:0 0 20px;position:relative}.event:before{content:'';position:absolute;left:-23px;top:4px;border-radius:100%;width:8px;height:8px;background:#e6b294}.event strong{font-size:12px}.event p{font-size:11px}nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);display:flex;justify-content:space-around;gap:8px;width:min(1180px,100%);border-top:1px solid var(--line);background:white;padding:10px 20px max(12px,env(safe-area-inset-bottom));z-index:5}nav button{border:0;background:transparent;font-size:11px;padding:8px 18px;border-radius:12px;color:#69748b}nav button.active{background:var(--peach);color:var(--rust)}.loading{text-align:center;padding:70px;color:var(--muted)}.landing{max-width:470px;margin:35px auto}.landing h1{font-size:30px}.landing .banner{background:var(--peach);padding:30px;border-radius:18px;margin-bottom:20px}.empty{text-align:center;padding:25px;color:var(--muted);font-size:12px}.invite-link{word-break:break-all;background:#f4f6f8;padding:12px;border-radius:8px;font-size:11px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}.actions button{font-size:11px}.muted{color:var(--muted)}.table-row{display:grid;grid-template-columns:1fr auto;gap:10px;padding:15px 0;border-bottom:1px solid var(--line)}.pill-code{background:var(--blue);color:#315a9a;border-radius:7px;padding:6px 9px;font-size:11px}.offline-strip{background:#fff0ca;border:1px solid #e5c76f;border-radius:9px;padding:12px;margin-bottom:18px;font-size:12px;color:#8a622c}dialog{border:1px solid var(--line);border-radius:18px;padding:27px;max-width:500px;width:92vw;color:var(--navy)}dialog::backdrop{background:#1e2a4555;backdrop-filter:blur(3px)}dialog .close{margin-top:20px;width:100%}#toast{position:fixed;left:50%;bottom:90px;transform:translateX(-50%);padding:14px 22px;border-radius:11px;background:var(--navy);color:white;z-index:20;font-size:12px;display:none;width:max-content;max-width:90vw}.date-split{display:flex;align-items:center;gap:12px}.date-box{background:#fff3e9;padding:10px;border-radius:9px;text-align:center;min-width:45px}.date-box strong{font-size:19px;display:block}.date-box small{font-size:9px}.skeleton{height:80px;background:#f1eee8;border-radius:12px;margin:15px 0}.mobile-only{display:none}
@media(max-width:700px){body{background:var(--paper)}.top{padding:15px 18px}.brand{font-size:13px}.brand b{width:25px;height:25px;font-size:14px}.top-right{gap:9px}.connection{font-size:9px}.top-right button{font-size:9px;padding:7px}.pilot{font-size:9px;padding:7px 15px}main{padding:25px 18px 105px}.heading{margin-bottom:18px}h1{font-size:22px}.columns{grid-template-columns:1fr;gap:0}.card{padding:16px;border-radius:14px}.summary{gap:8px;margin:15px 0}.summary>div{padding:14px 10px}.summary strong{font-size:23px}.summary small{font-size:9px}.row{gap:8px;flex-wrap:wrap}.row .body{min-width:130px}.status{margin-left:auto}.status button{padding:8px;font-size:9px}.initials{width:30px;height:30px;font-size:10px}.live-state{padding:20px}.live-state h2{font-size:18px}.periods{gap:6px}.periods button{padding:9px 10px}.quick button{padding:16px 8px}.lesson{gap:10px}.lesson .card{padding:16px}.toolbar{gap:10px}.toolbar label{min-width:120px}nav{padding-left:6px;padding-right:6px;gap:2px}nav button{font-size:10px;padding:10px 9px}.desktop-only{display:none}.landing{margin:10px auto}.landing .banner{padding:25px}.heading p{font-size:11px}.mobile-only{display:block}}

/* White page with distinct tinted content panels. */
.card{background:#f0f6ff;border-color:#c4d6ed}
.lesson .card{background:#eef5ff;border-color:#b9d0ec}
.lesson .card.current{background:#fff0e4;border-color:#d77a48}
.quick button:nth-child(1){background:#e1f3ef;border-color:#94cabe;color:#14695f}
.quick button:nth-child(2){background:#e6efff;border-color:#acc5e9;color:#274d87}
.quick button:nth-child(3){background:#fff0e3;border-color:#e8b48b;color:#944113}
.summary>div:not(.mint):not(.peach){background:#e2edff;border-color:#a8c1e5}
.summary .mint{border-color:#91c8b9}
.summary .peach{border-color:#e6b18d}
.child-card{background:#edf3ff;border-color:#acc5e9}
.landing .card{background:#f0f6ff;border-color:#c4d6ed}

.login-tabs{display:flex;gap:8px;background:#f2f5f8;border-radius:12px;padding:5px;margin-bottom:18px}.login-tabs button{flex:1;background:transparent;border-color:transparent}.login-tabs button.active{background:#e1efff;border-color:#a7c6eb;color:#264f85}.login-secondary{background:transparent;width:100%;font-size:12px;margin-top:15px}.login-error{color:#a33c25}.parent-code{font-size:30px;font-weight:800;letter-spacing:2px;background:#e7f3ee;color:#17695c;padding:20px 10px;text-align:center;border-radius:12px;margin:15px 0;font-variant-numeric:tabular-nums}@media(max-width:500px){.parent-code{font-size:22px;letter-spacing:1px}}
/* Modern Molyvaki visual system */
:root{--navy:#17243b;--rust:#5146df;--line:#e4e8f0;--muted:#758096;--mint:#e8f7f0;--teal:#148562;--peach:#fff0ee;--blue:#eef0ff}
body{-webkit-font-smoothing:antialiased}.top{max-width:1280px;padding:24px 40px;border-bottom:0}.brand{font-size:22px;letter-spacing:-.7px;gap:11px}.brand b{width:36px;height:36px;border-radius:11px;background:#5146df;box-shadow:0 4px 10px #5146df20}.connection{color:#778397}.pilot{max-width:none;background:#f7f8fb;color:#8891a1;font-size:10px;border-block:1px solid #edf0f5}main{max-width:1280px}button{transition:background .18s,box-shadow .18s}.primary{background:#5146df;border-color:#5146df;box-shadow:0 4px 12px #5146df20}.primary:hover{background:#4338ca;filter:none}.card,.landing .card,.lesson .card{background:white;border-color:#e4e8f0;box-shadow:0 3px 14px #14213b04}.lesson .card.current{background:#f5f5ff;border-color:#b7b2ee;border-left:3px solid #5146df}.quick button:nth-child(n){background:#f7f8fc;color:#34415b;border-color:#e4e8f0}.quick button:hover{background:#eef0ff}.quick button span{color:#5146df}.summary>div:not(.mint):not(.peach){background:#f5f6ff;border-color:#e0e2fa}.summary .mint{border-color:#ccebdd}.summary .peach{border-color:#f3d6d1}.summary .peach strong{color:#ce5447}.status .absent.selected,.periods button.absent{background:#dc554f;border-color:#dc554f}.hint{background:#f7f8fc;color:#647086;border:1px solid #e9ecf3}.hint.mint{background:#f6f8fb;color:#647086;border-color:#e7edf3}.child-card{background:#f7f8ff;border-color:#e1e4f4}.child-card .avatar{background:#e9e9ff;color:#5750c6}nav{box-shadow:0 -5px 25px #14213b05}nav button.active{background:#eeedff;color:#5146df}.date-box{background:#f0f1fb}.live-state.pending{background:#f1f4f8}.periods button.unknown{background:#e7ebf1;color:#647086}.parent-code{background:#eef0ff;color:#4338ca}.event:before{background:#a09aeb}
.landing{max-width:1000px;margin:65px auto 0;display:grid;grid-template-columns:1.1fr 1fr;column-gap:100px;align-items:start}.landing .banner{grid-column:1;grid-row:1/5;background:transparent;padding:45px 0;margin:0;border-radius:0}.landing .banner .eyebrow{font-size:10px;letter-spacing:1.6px;font-weight:650;color:#7d74ac;margin-bottom:25px}.landing h1{font-size:53px;line-height:1.14;letter-spacing:-2px;font-weight:750;margin:0 0 25px}.landing .banner p{font-size:16px;line-height:1.9;color:#8790a2;max-width:330px}.landing .banner:after{content:'Παρουσίες σε πραγματικό χρόνο.\AΞεχωριστή πρόσβαση για κάθε παιδί.\AΗ σχολική μέρα, με μια ματιά.';white-space:pre-line;display:block;margin-top:45px;padding:23px 0 23px 23px;border-left:3px solid #d8d4fa;font-size:12px;line-height:2.5;color:#6e7890}.login-tabs{grid-column:2;border:1px solid #eceef5;background:#f5f6fa;border-radius:12px;padding:5px;gap:5px;margin-bottom:0}.login-tabs button{font-size:12px;border:0;color:#8a92a2;padding:12px 5px;border-radius:8px}.login-tabs button.active{background:white;color:#5146df;box-shadow:0 2px 8px #1925450d}.landing .card{grid-column:2;padding:28px;border:1px solid #e6e9f1;border-radius:18px;box-shadow:0 14px 50px #16253f06;margin:15px 0}.landing .card h2{font-size:20px;letter-spacing:-.5px;margin-bottom:24px}.landing label{font-size:11px;font-weight:600;color:#5c6880;margin-top:18px}.landing input{border-color:#e1e5ee;background:#fcfcfe;padding:14px;border-radius:9px;font-size:12px;margin-top:9px}.landing input::placeholder{color:#a1a9b7}.landing input:focus{outline:3px solid #eeedff;border-color:#938bea;background:white}.landing .primary.wide{padding:14px;margin-top:25px;font-size:12px}.login-secondary{border:0;color:#7c7698;padding:8px;font-size:10px;margin-top:14px}.login-error:empty{display:none}.landing .hint{grid-column:2;font-size:10px;padding:14px 17px;line-height:1.8;border-radius:10px}.landing>p:last-child{grid-column:2;font-size:9px;text-align:center;color:#9aa1af;margin-top:18px}.landing a{color:#8981aa;text-decoration:none}
@media(max-width:1000px){.landing{column-gap:45px}.landing h1{font-size:44px}}
@media(max-width:700px){.top{padding:18px 22px}.brand{font-size:19px}.brand b{width:32px;height:32px;font-size:16px}.landing{display:block;max-width:430px;margin:0 auto}.landing .banner{padding:12px 3px 25px}.landing .banner .eyebrow{font-size:8px;margin-bottom:17px}.landing h1{font-size:36px;letter-spacing:-1.3px;margin-bottom:14px}.landing .banner p{font-size:13px;max-width:none}.landing .banner:after{display:none}.landing .card{padding:25px 22px}.pilot{font-size:8px}.connection{font-size:9px}}
@media(prefers-reduced-motion:reduce){button{transition:none}}
.landing .remember-choice{display:flex;align-items:center;gap:9px;font-weight:400;font-size:11px;margin:19px 0 0;cursor:pointer}.landing .remember-choice input{width:16px;height:16px;padding:0;margin:0;accent-color:#5146df;flex-shrink:0}
/* Burgundy sliding access panels, inspired by the supplied motion reference. */
:root{--rust:#960c35;--blue:#faedf1}.brand b,.primary{background:#960c35;border-color:#960c35;box-shadow:0 4px 12px #960c3520}.primary:hover{background:#78082a;border-color:#78082a}.quick button span,nav button.active,.login-tabs button.active{color:#960c35}nav button.active,.parent-code{background:#faedf1;color:#960c35}.landing input:focus{outline-color:#fae9ef;border-color:#bc6d85}.landing .remember-choice input{accent-color:#960c35}
.login-scene{position:relative;isolation:isolate;max-width:1100px;min-height:580px;grid-template-columns:1fr 1fr;column-gap:125px;padding:35px 30px 30px;margin:30px auto 0}.login-scene .banner{position:relative;grid-column:1;grid-row:1/5;padding:70px 16px 65px 5px;align-self:stretch;view-transition-name:access-welcome}.login-scene .banner:before{content:'';position:absolute;z-index:-1;inset:-35px -30px -25px -100px;background:linear-gradient(150deg,#45031b 0%,#790627 52%,#a30c39 100%);transform:skewX(13deg);border-radius:6px;box-shadow:0 20px 55px #650a2315}.login-scene .banner h1{font-size:47px;letter-spacing:-1.8px;color:white;line-height:1.17}.login-scene .banner .eyebrow{color:#e5b5c4;font-size:9px;letter-spacing:1.4px}.login-scene .banner p{color:#e2bdca;font-size:14px}.login-scene .banner:after{color:#e7c6d2;border-left-color:#b24a6c;margin-top:33px;font-size:11px;padding-left:17px}.login-scene .login-tabs{grid-column:2;view-transition-name:access-tabs}.login-scene>.card{grid-column:2;background:#ffffffed;border-color:#eae7ec;box-shadow:0 18px 55px #3d12200a;view-transition-name:access-form}.login-scene>.hint{grid-column:2;view-transition-name:access-hint}.login-scene>p:last-child{grid-column:2;view-transition-name:access-footer}.login-scene.parent-mode .banner{grid-column:2;padding-left:20px;padding-right:0}.login-scene.parent-mode .banner:before{inset:-35px -100px -25px -30px}.login-scene.parent-mode .login-tabs,.login-scene.parent-mode>.card,.login-scene.parent-mode>.hint,.login-scene.parent-mode>p:last-child{grid-column:1}.login-scene .login-tabs{grid-row:1}.login-scene>.card{grid-row:2}.login-scene>.hint{grid-row:3}.login-scene>p:last-child{grid-row:4}.login-scene .login-tabs button.active{color:#960c35}.login-scene .login-secondary{color:#986273}.login-scene a{color:#986273}
::view-transition-group(access-welcome),::view-transition-group(access-form),::view-transition-group(access-tabs),::view-transition-group(access-hint),::view-transition-group(access-footer){animation-duration:700ms;animation-timing-function:cubic-bezier(.22,.75,.2,1)}::view-transition-old(access-form){animation:180ms ease-out both access-fade-out}::view-transition-new(access-form){animation:350ms 180ms ease-out both access-fade-in}@keyframes access-fade-out{to{opacity:0}}@keyframes access-fade-in{from{opacity:0;filter:blur(3px)}to{opacity:1;filter:blur(0)}}
@media(max-width:1100px) and (min-width:701px){.login-scene{column-gap:65px;padding-inline:20px}.login-scene .banner h1{font-size:40px}.login-scene .banner:before{inset:-35px -15px -25px -45px}.login-scene.parent-mode .banner:before{inset:-35px -45px -25px -15px}}
@media(max-width:700px){.login-scene{display:block;padding:0;min-height:0;margin:0 auto;max-width:430px}.login-scene .banner,.login-scene.parent-mode .banner{padding:27px 25px 26px;margin:0 0 23px;overflow:hidden;border-radius:17px}.login-scene .banner:before,.login-scene.parent-mode .banner:before{inset:0 -30px 0 -30px;box-shadow:none;transform:skewX(10deg)}.login-scene .banner h1{font-size:32px;letter-spacing:-1px;margin-bottom:12px}.login-scene .banner .eyebrow{font-size:8px;margin-bottom:15px}.login-scene .banner p{font-size:12px;line-height:1.8}.login-scene .banner:after{display:none}::view-transition-group(access-welcome),::view-transition-group(access-form){animation-duration:350ms}}
@media(prefers-reduced-motion:reduce){::view-transition-group(*){animation-duration:0s!important}::view-transition-old(*),::view-transition-new(*){animation:none!important}}
@media(min-width:701px) and (max-width:1100px){.login-scene{display:block;padding:0;min-height:0;margin:0 auto;max-width:470px}.login-scene .banner,.login-scene.parent-mode .banner{padding:30px;margin:0 0 23px;overflow:hidden;border-radius:17px}.login-scene .banner:before,.login-scene.parent-mode .banner:before{inset:0 -30px;box-shadow:none}.login-scene .banner h1{font-size:36px}.login-scene .banner:after{display:none}}
.brand img{display:block;width:112px;height:auto;max-height:104px;object-fit:contain}.top{padding-top:10px;padding-bottom:10px}.brand{line-height:0}@media(max-width:700px){.brand img{width:86px;max-height:80px}.top{padding-top:8px;padding-bottom:8px}}
.back-button{display:inline-flex;align-items:center;gap:8px;margin:0 0 20px;padding:9px 15px;background:#fff;border-color:#e5e7ee;color:#7c1535;font-size:12px}.edit-student-name{display:inline-block;padding:5px 0;margin:4px 0 0;border:0;background:transparent;color:#960c35;font-size:10px;text-align:left}.edit-student-name:hover{background:transparent;text-decoration:underline}.row .body .edit-student-name+p{margin-top:2px}@media(max-width:700px){.back-button{margin-bottom:16px}.row>.edit-student-name{padding:8px}}
.landing .login-secondary,.login-scene .login-secondary{display:block;width:100%;min-height:50px;margin-top:18px;padding:14px 16px;border:1.5px solid #960c35;border-radius:10px;background:#fff5f8;color:#960c35;font-size:13px;font-weight:700;line-height:1.5}.landing .login-secondary:hover{background:#fbe5ed;filter:none}
.legal-footer{max-width:1200px;margin:0 auto;padding:24px 30px 95px;border-top:1px solid #eceef3;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:11px;color:#8991a0}.legal-footer div{display:flex;gap:20px;flex-wrap:wrap}.legal-footer a{color:#6e6371;text-decoration:none}.legal-footer a:hover{text-decoration:underline;color:#960c35}main{min-height:calc(100vh - 235px)}@media(max-width:700px){.legal-footer{padding:22px 20px 105px;line-height:1.8}.legal-footer div{gap:12px 18px}}
.lesson .card.lesson-color-0{background:#eef5ff;border-color:#c5d8f3;border-left:4px solid #6b95cf}.lesson .card.lesson-color-1{background:#f5f0ff;border-color:#dacdf1;border-left:4px solid #a287cf}.lesson .card.lesson-color-2{background:#edf8f3;border-color:#c4e5d5;border-left:4px solid #6eaf91}.lesson .card.lesson-color-3{background:#fff6e9;border-color:#ecd9b9;border-left:4px solid #d1ab6e}.lesson .card.ongoing{border:2px solid #960c35;border-left:5px solid #960c35;box-shadow:0 5px 20px #960c3510}.lesson .card.finished{opacity:.57;filter:saturate(.35)}.lesson .card.finished:hover,.lesson .card.finished:focus-within{opacity:.9}.lesson .card.no-lesson{background:#f1f3f6;border-color:#d9dee6;border-left-color:#96a0af}.lesson .card-head{margin-bottom:8px}.lesson .card-head h3{margin:0}.lesson-actions{display:flex;gap:10px;flex-wrap:wrap}.schedule-toolbar{display:flex;align-items:end;gap:18px;margin-bottom:24px;flex-wrap:wrap}.schedule-toolbar label{min-width:220px;flex:1}.schedule-toolbar button{margin-bottom:5px}.schedule-banner{padding:20px 24px;margin:20px 0;background:#f9edf2;border:1px solid #dca7b9;border-left:4px solid #960c35;border-radius:12px}.schedule-banner strong{color:#960c35}.schedule-banner p{margin-top:7px}@media(max-width:700px){.lesson .badge{font-size:9px}.lesson .card-head{flex-wrap:wrap}.schedule-toolbar label{min-width:160px}}
.forgot-password{display:block;margin:14px auto 0;border:0;background:transparent;color:#960c35;font-size:12px;text-decoration:underline}.reset-password{max-width:470px;margin:50px auto}
.teacher-context{display:flex;align-items:end;gap:20px;flex-wrap:wrap;margin:0 0 24px}.compact-date{max-width:310px;flex:1;min-width:220px}.compact-date label{margin:0}.compact-date select{padding:10px 12px}.teacher-clock{font-size:11px;color:#6c7587;padding-bottom:12px}.teacher-clock strong{color:#26344c;margin-left:6px}.day-option{margin-left:auto;font-size:11px;padding:11px 14px;background:#fff;color:#7d5a68;border-color:#eadce2}.teacher-focus{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:28px 30px;background:#fff5f8;border:1px solid #e8bfcc;border-left:5px solid #960c35;border-radius:16px;margin-bottom:20px}.focus-kicker{color:#960c35;font-size:10px;font-weight:750;letter-spacing:1px}.teacher-focus h2{font-size:24px;letter-spacing:-.5px;margin:9px 0}.teacher-focus p{font-size:13px}.teacher-focus .focus-help{font-size:11px;margin-top:10px;max-width:500px}.focus-action{flex-shrink:0;padding:17px 22px;min-width:215px;font-size:13px}.focus-action span{margin-left:15px}.teacher-tools{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}.teacher-tools button{display:flex;align-items:center;gap:14px;text-align:left;padding:18px;background:#fff;border-color:#e1e5ed;box-shadow:0 2px 8px #17243b03}.teacher-tools button>span:nth-child(2){flex:1}.teacher-tools strong{display:block;font-size:13px}.teacher-tools small{display:block;color:#8290a3;font-size:11px;margin-top:5px;font-weight:400}.tool-number{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#f4f1f5;color:#946775;font-size:12px}.teacher-overview{display:flex;gap:28px;flex-wrap:wrap;padding:10px 3px 24px;color:#8490a2;font-size:11px}.teacher-overview strong{color:#34425b;font-size:15px;margin-right:3px}.program-heading{border-top:1px solid #e8ebf1;padding-top:23px;margin-bottom:16px}.program-heading h2{font-size:17px}.program-heading p{font-size:11px}.program-lesson{display:flex;align-items:center;gap:22px;padding:20px 22px;margin-bottom:12px;border:1px solid #e0e5ee;border-left:4px solid #92aacb;border-radius:12px;background:#f3f7ff}.program-lesson.lesson-color-1{background:#f7f2ff;border-left-color:#aa92cf}.program-lesson.lesson-color-2{background:#eff9f4;border-left-color:#78ad96}.program-lesson.lesson-color-3{background:#fff8ed;border-left-color:#c8a470}.program-lesson.finished{background:#f7f8fa;border-color:#e4e7ec;border-left-color:#c1c7d0;filter:none;opacity:1}.program-lesson.finished h3,.program-lesson.finished .program-time{color:#768092}.program-lesson.ongoing{border-color:#be8194;border-left-color:#960c35;background:#fff5f8}.program-lesson.no-lesson{background:#f1f3f6;border-left-color:#9fa8b7}.program-time{width:55px;flex-shrink:0;font-size:13px;color:#364969}.program-time small{display:block;margin-top:6px;font-size:11px;font-weight:400;color:#8b95a7}.program-body{flex:1}.program-title{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.program-title h3{margin:0;font-size:14px}.program-title .badge{font-size:9px}.program-status{display:inline-block;font-size:10px;margin-top:6px;color:#778394}.needs-entry{color:#9a6630;background:#fff0d8;border-radius:5px;padding:4px 7px}.entries-done{color:#288268}.program-actions{display:flex;gap:8px;align-items:center;flex-shrink:0}.program-actions button{font-size:11px;padding:10px 12px}.program-actions .quiet-button{border-color:transparent;background:transparent;color:#8690a0;padding-inline:6px}@media(max-width:850px){.teacher-focus{align-items:stretch;flex-direction:column;gap:20px}.focus-action{width:100%}.program-actions{flex-direction:column;align-items:stretch}}@media(max-width:600px){.teacher-focus{padding:23px 21px}.teacher-focus h2{font-size:21px}.teacher-tools{grid-template-columns:1fr;gap:10px}.teacher-tools button{padding:16px}.teacher-overview{gap:12px 20px;padding-bottom:20px}.program-lesson{flex-wrap:wrap;gap:14px;padding:17px 15px}.program-body{min-width:160px}.program-actions{width:100%;margin-left:69px;flex-direction:row;flex-wrap:wrap}.day-option{margin-left:0}.teacher-context{gap:12px}.teacher-clock{padding-bottom:5px}.compact-date{max-width:none}.program-title{gap:8px}}
/* Main categories stay visible at the top, with equal, clear targets. */
#nav{position:sticky;top:0;left:auto;bottom:auto;transform:none;width:auto;max-width:1200px;margin:0 auto;padding:10px 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;border-top:0;border-bottom:1px solid #e5e8ef;background:#fff;box-shadow:0 5px 14px #1e2a4506;z-index:10}#nav[hidden]{display:none}#nav button{min-height:53px;padding:14px 18px;border:1px solid #e0e4ed;border-radius:10px;background:#f5f6fa;font-size:15px;font-weight:700;color:#37445d;text-align:center}#nav button.active{background:#960c35;border-color:#960c35;color:#fff;box-shadow:0 3px 9px #960c3520}#nav button:hover:not(.active){background:#f9eaf0;border-color:#d3a1b2;color:#960c35}main{padding-top:25px;padding-bottom:45px}.legal-footer{padding-bottom:30px}.teacher-focus{padding:22px 26px}.teacher-context{margin-bottom:18px}.teacher-tools{margin-bottom:14px}@media(max-width:1250px){#nav{margin-inline:24px}}@media(max-width:700px){#nav{margin:0;padding:10px 14px;gap:6px}#nav button{min-height:47px;font-size:12px;padding:12px 4px;border-radius:8px}main{padding-top:20px;padding-bottom:30px}.legal-footer{padding-bottom:28px}}
/* Desktop application sidebar */
@media(min-width:901px){#nav{position:fixed;top:0;bottom:0;left:0;width:224px;max-width:none;margin:0;padding:132px 18px 28px;display:flex;flex-direction:column;justify-content:flex-start;gap:10px;border:0;border-right:1px solid #e5e8ef;border-radius:0;background:#f8f9fc;box-shadow:none;z-index:8}#nav:before{content:'ΕΡΓΑΛΕΙΟΘΗΚΗ';font-size:10px;letter-spacing:1.4px;font-weight:700;color:#9299a9;padding:0 14px 12px}#nav button{flex:none;text-align:left;min-height:53px;padding:16px 17px;border-color:transparent;background:transparent;font-size:14px;border-radius:10px}#nav button.active{background:#960c35;color:#fff}#nav button:hover:not(.active){background:#f1e5eb;border-color:transparent}body:has(#nav:not([hidden])){padding-left:224px}body:has(#nav:not([hidden])) .top{max-width:none;margin:0;padding:12px 36px;border-bottom:1px solid #edf0f5;min-height:108px}body:has(#nav:not([hidden])) .brand{position:fixed;top:12px;left:55px;z-index:12}body:has(#nav:not([hidden])) .top-right{margin-left:auto}body:has(#nav:not([hidden])) main{padding:28px 36px 45px;max-width:1350px}body:has(#nav:not([hidden])) .legal-footer{padding-inline:36px;max-width:1350px}}
@media(min-width:901px) and (max-width:1150px){#nav{width:190px;padding-inline:12px}body:has(#nav:not([hidden])){padding-left:190px}body:has(#nav:not([hidden])) .brand{left:39px}body:has(#nav:not([hidden])) main{padding-inline:24px}.program-actions{flex-direction:column;align-items:stretch}.teacher-focus{flex-direction:column;align-items:stretch}.teacher-tools{grid-template-columns:1fr}}
@media(max-width:900px){#nav{position:sticky;top:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:10px 14px;gap:6px}#nav button{min-height:47px;font-size:12px;padding:12px 4px}#nav[hidden]{display:none}}
/* Readable application scale and stronger visual grouping. */
body:has(#nav:not([hidden])){background:#f1f3f8;font-size:16px}body:has(#nav:not([hidden])) main{background:transparent}body:has(#nav:not([hidden])) h1{font-size:32px;line-height:1.3}body:has(#nav:not([hidden])) h2{font-size:21px}body:has(#nav:not([hidden])) h3{font-size:17px}body:has(#nav:not([hidden])) p{font-size:14px;color:#5b6880}body:has(#nav:not([hidden])) label{font-size:13px;color:#4c5971;font-weight:600}body:has(#nav:not([hidden])) .eyebrow{font-size:12px;color:#65718a}body:has(#nav:not([hidden])) button{font-size:14px}body:has(#nav:not([hidden])) .card{background:#fff;border-color:#dce2ed;box-shadow:0 4px 16px #26375406}body:has(#nav:not([hidden])) .row strong{font-size:15px}body:has(#nav:not([hidden])) .row p{font-size:12px}body:has(#nav:not([hidden])) .status button{font-size:12px;padding:10px 12px}body:has(#nav:not([hidden])) .badge{font-size:11px;padding:7px 10px}body:has(#nav:not([hidden])) .hint{font-size:13px;line-height:1.8}body:has(#nav:not([hidden])) .summary small{font-size:12px;color:#647089}.teacher-context{background:#e7ecf5;padding:17px 20px;border:1px solid #d8e0ed;border-radius:13px}.teacher-clock{font-size:13px;color:#5b6880}.teacher-focus{background:#fae7ee;border-color:#d7a0b3;border-left-width:6px;box-shadow:0 4px 15px #8c14320a}.teacher-focus h2{font-size:27px!important;color:#592039}.teacher-focus p{font-size:15px!important;color:#6b4c5c!important}.teacher-focus .focus-help{font-size:13px!important}.focus-kicker{font-size:12px}.focus-action{font-size:15px!important;padding:18px 24px}.teacher-tools button{background:#fff;border-color:#d2dbe9;padding:21px}.teacher-tools button:first-child{background:#e7effc;border-color:#c7d8f1}.teacher-tools button:last-child{background:#e8f4ef;border-color:#c6dfd3}.teacher-tools strong{font-size:16px}.teacher-tools small{font-size:13px;color:#5f7087;line-height:1.5}.tool-number{font-size:15px;width:38px;height:38px;background:#ffffffb5}.teacher-overview{padding:17px 20px;margin:4px 0 24px;background:#fff;border:1px solid #dbe1ec;border-radius:12px;font-size:13px;color:#5f6c83}.teacher-overview strong{font-size:20px;color:#293a56}.program-heading{border:0;padding-top:5px}.program-heading h2{font-size:22px!important}.program-heading p{font-size:13px!important}.program-lesson{padding:23px 24px;border-color:#cbd9ec;background:#e7effb;box-shadow:0 3px 10px #24344b04}.program-lesson.lesson-color-1{background:#eee7f8;border-color:#d8c9eb}.program-lesson.lesson-color-2{background:#e3f2e9;border-color:#c0dece}.program-lesson.lesson-color-3{background:#faf0db;border-color:#e7d6b0}.program-lesson.finished{background:#e9edf3;border-color:#d4dbe6;border-left-color:#a2adbe}.program-lesson.finished h3,.program-lesson.finished .program-time{color:#59667b}.program-lesson.ongoing{background:#fbe6ee;border-color:#c9869e;border-left-width:6px}.program-title h3{font-size:17px!important}.program-time{font-size:16px}.program-time small{font-size:13px;color:#6d7c93}.program-body p{font-size:13px!important}.program-status{font-size:12px;padding:5px 9px}.needs-entry{background:#ffe2a8;color:#815015;font-weight:600}.entries-done{background:#d9eee1;color:#286744}.program-actions button{font-size:13px!important;padding:12px 14px}.program-actions .quiet-button{color:#68758b}.program-title .badge{font-size:11px!important;background:#ffffffc4;color:#58647b}.program-lesson.ongoing .badge{background:#960c35;color:#fff}.back-button{font-size:14px!important;background:#fff!important}.legal-footer{background:transparent;color:#69768c}.legal-footer a{font-size:12px}.initials{background:#e4eaf5;color:#435573}.table-row{font-size:15px}.pending{font-size:12px;color:#8a744f}
@media(min-width:901px){#nav{background:#e4e9f3;border-right-color:#cdd6e6}#nav:before{color:#596a84;font-size:11px}#nav button{font-size:16px;padding:18px 17px;background:#ffffff80;border:1px solid #d0d9e8;min-height:58px;color:#30425e}#nav button.active{color:white;background:#960c35;border-color:#960c35}body:has(#nav:not([hidden])) .top{background:#fff}#nav button:hover:not(.active){background:#f9e3eb;border-color:#d6a2b5}}
@media(max-width:900px){#nav{background:#e4e9f3;border-bottom-color:#cdd6e6}#nav button{font-size:14px;background:#ffffffaa;border-color:#d0d9e8}#nav button.active{background:#960c35;color:white}.teacher-focus h2{font-size:23px!important}}
@media(max-width:600px){body:has(#nav:not([hidden])) h1{font-size:27px}body:has(#nav:not([hidden])) .status button{font-size:11px;padding:10px}.teacher-context{padding:15px}.teacher-focus{padding:22px 19px}.teacher-tools button{padding:18px}.program-lesson{padding:19px 16px}.teacher-overview{gap:15px;padding:16px}.teacher-tools strong{font-size:15px}#nav button{font-size:13px;padding:12px 3px}}
.home-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:32px 0 25px}.home-choice{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:30px 26px;min-height:285px;border:1px solid #d3dce9;border-radius:18px;background:#fff;box-shadow:0 5px 18px #26375406;transition:transform .15s,box-shadow .15s}.home-choice:hover{transform:translateY(-3px);filter:none;box-shadow:0 9px 25px #26375412}.home-choice strong{font-size:23px;line-height:1.3;margin:22px 0 14px;letter-spacing:-.5px}.choice-icon{display:grid;place-items:center;width:49px;height:49px;border-radius:13px;background:#ffffffb5;font-size:25px}.choice-description{font-size:14px;line-height:1.8;font-weight:400;color:#57677f;flex:1}.choice-link{font-size:13px;font-weight:700;margin-top:25px}.home-choice.main-choice{background:#f8e4ec;border-color:#d6a3b5;color:#861236}.home-choice.students-choice{background:#e5eefb;border-color:#bbd0ed;color:#2b5688}.home-choice.parents-choice{background:#e4f3eb;border-color:#bbdccc;color:#276d51}.home-program{border:0;background:transparent;color:#647187;padding:12px 0;font-size:13px!important;text-decoration:underline}.first-step{display:flex;align-items:center;justify-content:space-between;gap:25px;background:#fff;border:1px solid #d9dfeb;border-left:4px solid #960c35;padding:23px 26px;border-radius:14px;margin:26px 0 15px}.first-step span{font-size:10px;font-weight:750;letter-spacing:1px;color:#960c35}.first-step h2{margin:8px 0;font-size:21px!important}.first-step button{flex-shrink:0}.first-step p{font-size:13px!important}@media(max-width:1200px){.home-choices{grid-template-columns:1fr;gap:14px}.home-choice{min-height:0;padding:23px;display:grid;grid-template-columns:48px 1fr;column-gap:19px;align-items:start}.home-choice strong{font-size:21px;margin:0 0 7px}.choice-icon{grid-row:1/4}.choice-description{grid-column:2;font-size:13px}.choice-link{grid-column:2;margin-top:15px}.first-step{align-items:start;flex-direction:column;gap:15px}}@media(max-width:600px){.home-choices{margin-top:24px}.home-choice{padding:21px 18px;column-gap:14px}.home-choice strong{font-size:20px}.first-step{padding:20px}.first-step button{width:100%}}
.trip-control{display:flex;align-items:center;gap:20px;margin:22px 0;padding:25px;background:#fff0cf;border:1px solid #e1c16d;border-left:5px solid #c08b23;border-radius:15px}.trip-control-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:#f6dfa2;color:#795217;font-size:28px;flex-shrink:0}.trip-control-copy{flex:1}.trip-control-copy h2{color:#725018;font-size:23px!important;margin:0 0 8px}.trip-control-copy p{font-size:14px!important;color:#7c663c!important;max-width:650px}.trip-control button{padding:16px 23px;min-width:190px;flex-shrink:0;font-size:15px!important}.trip-control.trip-active{background:#f8e4ec;border-color:#cf91a7;border-left-color:#960c35}.trip-active .trip-control-icon{background:#edc9d6;color:#960c35}.trip-active .trip-control-copy h2{color:#861437}@media(max-width:850px){.trip-control{flex-wrap:wrap;gap:15px;padding:22px}.trip-control-copy{min-width:180px}.trip-control button{width:100%}}
.time-inputs{display:grid;grid-template-columns:1fr 1fr;gap:15px}@media(max-width:900px){body:has(#leave:not([hidden])) #nav{grid-template-columns:repeat(5,minmax(0,1fr))}body:has(#leave:not([hidden])) #nav button{font-size:11px;padding:12px 3px}}.first-step .primary{white-space:normal}
.class-title-form{display:flex;gap:16px;align-items:end}.class-title-form label{flex:1;margin:0}.class-title-form button{margin-bottom:0}@media(max-width:600px){.class-title-form{flex-direction:column;align-items:stretch}}
.trip-buttons{display:flex;flex-direction:column;gap:9px;flex-shrink:0}.trip-buttons button:last-child{background:transparent;color:#805465;border:0;box-shadow:none;font-size:12px!important;padding:8px}.schedule-banner.trip-started{background:#fff2ce;border-color:#d4af51;border-left-color:#b48218}.schedule-banner.trip-started strong{color:#7e5c16}.schedule-banner.trip-ended{background:#e5f4ec;border-color:#98c9ad;border-left-color:#287e54}.schedule-banner.trip-ended strong{color:#256944}.trip-finished-label{font-size:17px;font-weight:700;color:#287e54;padding:15px}
#otherSubjectLabel[hidden]{display:none}
.attendance-tabs{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0 24px;padding:8px;background:#e1e7f1;border:1px solid #cdd6e5;border-radius:15px}.attendance-tabs button{padding:18px 20px!important;min-height:62px;border:1px solid transparent;background:#f5f7fb;color:#4a5871;font-size:20px!important;font-weight:750;border-radius:10px}.attendance-tabs button.active{background:#960c35;border-color:#960c35;color:white;box-shadow:0 4px 10px #960c3520}.attendance-tabs button:hover:not(.active){background:#fae6ee;color:#960c35}.attendance-tabs+.trip-control{margin-top:0}@media(max-width:600px){.attendance-tabs{gap:8px;padding:6px}.attendance-tabs button{font-size:18px!important;padding:15px 12px!important;min-height:55px}}
.grade-entry-list{max-height:360px;overflow:auto;margin:17px 0;padding-right:6px}.grade-entry{display:flex;align-items:center;gap:12px;padding:12px 0;margin:0;border-bottom:1px solid #e5e8ee}.grade-entry span{flex:1}.grade-entry strong{font-size:13px;color:#26334b}.grade-entry small{display:block;font-size:11px;color:#7d899c;margin-top:5px}.grade-entry input{width:85px;margin:0;text-align:center;font-size:16px}.parent-grade{display:flex;align-items:baseline;gap:8px;padding:17px 0;color:#960c35}.parent-grade strong{font-size:38px}.parent-grade span{font-size:18px;color:#6e7c92}@media(max-width:900px){body:has(#leave:not([hidden])) #nav{grid-template-columns:repeat(auto-fit,minmax(85px,1fr))}}@media(max-width:600px){#nav button{min-height:42px;font-size:11px!important;padding:9px 5px!important}}
.nav-section-label{border-top:1px solid #bfcadd;margin-top:15px;padding:21px 12px 7px;font-size:11px;font-weight:750;letter-spacing:.7px;color:#7e3e57}#nav button{line-height:1.45}.test-flow-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:25px 0}.test-flow-preview>div{background:#edf1f8;border:1px solid #dce3ee;border-radius:12px;padding:19px}.test-flow-preview strong{font-size:16px;color:#69203d}.test-flow-preview p{font-size:13px!important;margin-top:9px}@media(min-width:901px){#nav{overflow-y:auto;padding-top:124px;gap:8px}#nav button{min-height:51px;padding-top:13px;padding-bottom:13px}}@media(max-width:900px){.nav-section-label{grid-column:1/-1;margin-top:0;padding:9px 5px 4px}.test-flow-preview{grid-template-columns:1fr}#nav{position:relative}}
