body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{margin:0;padding:0}body{font-family:Segoe UI,sans-serif}.app{min-height:100vh;width:100%}.split-layout{display:flex;min-height:100vh}.left-panel{align-items:center;background:linear-gradient(160deg,#1b4332,#2d6a4f,#40916c);display:flex;flex:0 0 50%;flex-direction:column;gap:40px;justify-content:center;padding:0 40px 80px}.right-panel{background:#d8e4d8;flex:0 0 50%}.background-image{display:block;height:100%;object-fit:cover;width:100%}.logo{align-items:center;display:flex;flex-direction:column;gap:10px}.logo-icon{font-size:70px}.logo-name{color:#fff;font-size:42px;font-weight:800;letter-spacing:8px}.subtitle{color:#ffffffb3;font-size:16px}.role-buttons{display:flex;flex-direction:column;gap:20px;width:300px}.role-btn{background:#ffffff1a;border:2px solid #ffffff4d;border-radius:12px;color:#fff;cursor:pointer;font-size:18px;font-weight:600;padding:20px 30px;transition:all .3s}.role-btn:hover{background:#ffffff40;border-color:#fff9;box-shadow:0 10px 30px #0003;transform:translateY(-3px)}.auth-panel{background:linear-gradient(160deg,#1b4332,#2d6a4f,#40916c);flex:0 0 50%;min-height:100vh;padding:32px 40px}.auth-card{margin:4vh auto 0;width:min(100%,420px)}.auth-kicker{color:#ffffffbf;font-size:14px;font-weight:700;letter-spacing:3px;margin-bottom:12px;text-transform:uppercase}.auth-card h2{color:#fff;font-size:34px;margin-bottom:10px}.auth-subtitle{color:#ffffffbf;margin-bottom:28px}.auth-form{gap:17px;text-align:left}.auth-form,.auth-form label{display:flex;flex-direction:column}.auth-form label{color:#fff;font-size:14px;font-weight:600;gap:7px}.auth-form input{border:1px solid #cbd9ce;border-radius:8px;color:#1b4332;font:inherit;outline:none;padding:13px 15px;width:100%}.auth-form input:focus{border-color:#2d6a4f;box-shadow:0 0 0 3px #2d6a4f1f}.submit-btn{background:#1b4332;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;margin-top:8px;padding:14px;transition:background .3s ease,box-shadow .3s ease,transform .3s ease}.submit-btn:hover{background:#102f23;box-shadow:0 8px 18px #102f234d;transform:translateY(-2px)}.form-message{color:#2d6a4f}.form-message,.login-error{font-size:14px;margin-top:18px;text-align:center}.login-error{color:#ffd0c7}.back-btn{background:#1b4332;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-bottom:30px;padding:10px 16px;transition:background .3s ease,box-shadow .3s ease,transform .3s ease}.back-btn:hover{background:#102f23;box-shadow:0 6px 14px #102f234d;transform:translateY(-2px)}.switch-auth{color:#ffffffbf;font-size:14px;margin-top:24px;text-align:center}.switch-auth button{background:none;border:none;color:#fff;cursor:pointer;font:inherit;font-weight:700;padding:0}@media (max-width:900px){.right-panel{display:none}.auth-panel{flex-basis:100%}}.signup-card{margin:2vh auto 0;width:min(100%,620px)}.signup-kicker{color:#ffffffbf;font-size:13px;font-weight:700;letter-spacing:2px;margin-bottom:10px;text-transform:uppercase}.signup-card h2{color:#fff;font-size:32px;margin-bottom:8px}.signup-subtitle{color:#ffffffbf;margin-bottom:20px}.signup-form{display:flex;flex-direction:column;gap:14px;text-align:left}.signup-row{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr 1fr}.signup-form label{color:#fff;display:flex;flex-direction:column;font-size:13px;font-weight:600;gap:6px}.signup-form input,.signup-form select{background:#fff;border:1px solid #cbd9ce;border-radius:7px;color:#1b4332;font:inherit;outline:none;padding:11px 13px;width:100%}.signup-form input:focus,.signup-form select:focus{border-color:#b6d7c0;box-shadow:0 0 0 3px #ffffff26}.suggestion-label{color:#ffffffb3;font-size:11px;font-weight:400;margin-top:3px}.username-suggestions{display:flex;flex-wrap:wrap;gap:6px}.signup-login-link button,.username-suggestions button{background:none;border:none;color:#d8f1dc;cursor:pointer;font:inherit;font-weight:700}.username-suggestions button{border:1px solid #ffffff59;border-radius:20px;font-size:12px;padding:5px 9px}.signup-login-link button:hover,.username-suggestions button:hover{color:#fff;text-decoration:underline}.availability{font-size:11px;font-weight:400}.available{color:#d8f1dc}.signup-error,.taken{color:#ffd0c7}.phone-row{display:flex;gap:8px}.phone-row input{flex:1 1}.otp-btn{background:#1b4332cc;border:1px solid #fff6;border-radius:7px;color:#fff;cursor:pointer;flex:0 0 auto;font:inherit;font-size:12px;font-weight:700;padding:0 12px}.otp-btn:hover{background:#102f23}.signup-error,.signup-message{font-size:12px;margin:0;text-align:center}.signup-message{color:#d8f1dc}.signup-login-link{color:#ffffffbf;font-size:13px;margin-top:18px;text-align:center}@media (max-width:700px){.signup-row{grid-template-columns:1fr}}:root{--teacher-ink:#173329;--teacher-muted:#6a7c72;--teacher-paper:#f4f7f1;--teacher-white:#fff;--teacher-green:#1d5b43;--teacher-light-green:#dcebd9;--teacher-line:#dbe6dc;--teacher-warm:#fff2d9}[data-theme=dark]{--teacher-ink:#e9f2ea;--teacher-muted:#9db3a4;--teacher-paper:#0f1a14;--teacher-white:#16241c;--teacher-green:#7fd6a4;--teacher-light-green:#1e3a2b;--teacher-line:#2a4234;--teacher-warm:#3a3220}[data-theme=dark] .primary-button{color:#0f1a14}[data-theme=dark] .primary-button:hover{background:#a9e6c3}[data-theme=dark] .brand-mark,[data-theme=dark] .calendar-day.is-selected,[data-theme=dark] .todo-check{color:#0f1a14}[data-theme=dark] .progress-bar{background:#2a4234}*{box-sizing:border-box}body{background:#f4f7f1;background:var(--teacher-paper)}button,input{font:inherit}button{cursor:pointer}.teacher-app{color:#173329;color:var(--teacher-ink);min-height:100vh}.teacher-header{align-items:center;background:#fff;background:var(--teacher-white);border-bottom:1px solid #dbe6dc;border-bottom:1px solid var(--teacher-line);display:flex;gap:24px;min-height:76px;padding:0 5vw}.header-actions button,.menu-button{background:#0000;border:0;color:#1d5b43;color:var(--teacher-green);font-size:20px}.header-back-button{color:var(--teacher-green)}.notif-bell{position:relative}.notif-badge{background:#c0392b;border-radius:10px;color:#fff;display:grid;font-size:11px;font-weight:800;height:18px;min-width:18px;padding:0 5px;place-items:center;position:absolute;right:-8px;top:-6px}.notif-backdrop{background:#17332959;inset:0;position:fixed;z-index:30}.notif-panel{background:#fff;background:var(--teacher-white);border-radius:12px;box-shadow:0 20px 60px #1733294d;max-height:70vh;overflow-y:auto;padding:18px;position:fixed;right:5vw;top:84px;width:min(380px,92vw)}.notif-header{align-items:center;border-bottom:1px solid #dbe6dc;border-bottom:1px solid var(--teacher-line);display:flex;font-size:16px;justify-content:space-between;padding-bottom:12px}.notif-header button{background:#0000;border:0;color:#6a7c72;color:var(--teacher-muted);font-size:24px;line-height:1}.notif-section{color:#1d5b43;color:var(--teacher-green);font-size:11px;font-weight:800;letter-spacing:1.4px;margin:14px 0 6px;text-transform:uppercase}.notif-item{border-bottom:1px solid #dbe6dc;border-bottom:1px solid var(--teacher-line);display:flex;font-size:13px;gap:10px;padding:10px 0}.notif-item:last-child{border-bottom:0}.notif-icon{font-size:18px}.notif-item p{font-size:12px;margin:3px 0 0}.notif-item p,.notif-time{color:#6a7c72;color:var(--teacher-muted)}.notif-time{display:block;font-size:11px;margin-top:3px}.notif-empty{color:#6a7c72;color:var(--teacher-muted);font-size:13px;padding:10px 0}.menu-button{font-size:24px}.teacher-greeting{align-items:center;display:flex;gap:12px}.brand-mark{background:var(--teacher-green)}.brand-name,.greeting{margin:0}.brand-name{color:var(--teacher-green)}.header-actions{gap:16px}.drawer-layer{background:#17332959;inset:0;opacity:1;position:fixed;transition:opacity .25s ease;z-index:20}.drawer-layer.closing{opacity:0}.side-drawer{animation:drawer-slide-in .25s ease-out;background:#fff;background:var(--teacher-white);box-shadow:12px 0 35px #1733292e;display:flex;flex-direction:column;height:100%;padding:24px 18px;width:min(310px,86vw)}.drawer-layer.closing .side-drawer{animation:drawer-slide-out .25s ease-in forwards}.drawer-header{border-bottom:1px solid #dbe6dc;border-bottom:1px solid var(--teacher-line);justify-content:space-between;padding:0 8px 24px}.drawer-brand,.drawer-header{align-items:center;display:flex}.drawer-brand{color:#1d5b43;color:var(--teacher-green);font-size:18px;gap:10px}.drawer-close{background:#0000;border:0;font-size:28px;line-height:1}.drawer-close,.drawer-label{color:#6a7c72;color:var(--teacher-muted)}.drawer-label{font-size:10px;font-weight:800;letter-spacing:1.4px;margin:26px 10px 8px;text-transform:uppercase}.drawer-nav{display:flex;flex-direction:column;gap:3px}.drawer-logout,.drawer-nav button{align-items:center;background:#0000;border:0;border-radius:6px;color:#173329;color:var(--teacher-ink);display:flex;font-size:14px;font-weight:700;gap:12px;padding:12px 10px;text-align:left;width:100%}.drawer-logout:hover,.drawer-nav button.selected,.drawer-nav button:hover{background:#dcebd9;background:var(--teacher-light-green);color:#1d5b43;color:var(--teacher-green)}.drawer-logout span,.drawer-nav button span{flex:1 1}.drawer-logout{color:#a24f3c;margin-top:auto}@keyframes drawer-slide-in{0%{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes drawer-slide-out{0%{transform:translateX(0)}to{transform:translateX(-100%)}}.teacher-main{margin:0 auto;padding:28px 0 56px;width:min(1180px,90vw)}.view-tabs{border-bottom:1px solid #dbe6dc;border-bottom:1px solid var(--teacher-line);display:flex;gap:6px;margin-bottom:34px}.view-tabs button{background:#0000;border:0;border-bottom:3px solid #0000;color:#6a7c72;color:var(--teacher-muted);font-weight:700;padding:12px 18px}.view-tabs button.active{border-color:#1d5b43;border-color:var(--teacher-green);color:#1d5b43;color:var(--teacher-green)}.section-heading{align-items:end;display:flex;gap:24px;justify-content:space-between}.dashboard-back-button{background:#0000;border:0;color:#1d5b43;color:var(--teacher-green);font-size:14px;font-weight:800;margin-bottom:22px;padding:8px 0}.dashboard-back-button:hover{color:#123d2e;text-decoration:underline}.section-kicker{color:var(--teacher-green)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(28px,4vw,42px);letter-spacing:-1px}h1,h2{margin-bottom:0}h2{font-size:25px}.outline-button,.text-button{background:#0000;border:1px solid #1d5b43;border:1px solid var(--teacher-green);border-radius:6px;color:#1d5b43;color:var(--teacher-green);font-weight:700;padding:10px 14px}.outline-button:hover,.text-button:hover{background:#dcebd9;background:var(--teacher-light-green)}.overview-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(4,1fr);margin:24px 0 44px}.overview-card{background:#fff;background:var(--teacher-white);border:1px solid #dbe6dc;border:1px solid var(--teacher-line);border-radius:10px;display:flex;flex-direction:column;justify-content:space-between;min-height:112px;padding:20px}.overview-card strong{font-size:34px}.overview-card span{color:#6a7c72;color:var(--teacher-muted);font-size:13px;font-weight:700}.overview-card.warning{border-left:4px solid #d98b35}.classes-heading{margin-bottom:18px}.class-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(2,1fr)}.class-card{background:#fff;background:var(--teacher-white);border:1px solid #dbe6dc;border:1px solid var(--teacher-line);border-radius:10px;min-height:190px;padding:20px}.class-title{align-items:center;display:flex;gap:10px}.class-title h3{flex:1 1;font-size:18px;margin:0}.class-title button{-webkit-text-stroke:1px currentColor;background:#0000;border:0;color:#6a7c72;color:var(--teacher-muted);font-size:20px;padding:4px}.class-delete:hover{color:#a24f3c;transform:scale(1.12)}.student-count{font-weight:700;margin:28px 0 5px}.attention-count{color:#b16e29;font-size:13px;margin-bottom:18px}.insight-button{background:#0000;border:0;color:#1d5b43;color:var(--teacher-green);font-weight:800;padding:0}.insight-button span{margin-left:6px}.recommendation{align-items:center;background:#dcebd9;background:var(--teacher-light-green);border:1px solid #cfe1cf;border-radius:10px;display:flex;gap:16px;margin-top:34px;padding:20px}.ai-dot,.recommendation-icon{color:#1d5b43;color:var(--teacher-green);font-size:27px}.recommendation p:last-child{font-weight:700;margin:0}.primary-button{background:#1d5b43;background:var(--teacher-green);border:0;border-radius:6px;color:#fff;font-weight:800;margin-left:auto;padding:11px 16px}.primary-button:hover{background:#123d2e}.scanner-layout{grid-gap:18px;display:grid;gap:18px;grid-template-columns:1fr 1fr;margin-top:28px}.upload-zone{align-items:center;background:#fff;background:var(--teacher-white);border:2px dashed #a9c7ad;border-radius:10px;color:#6a7c72;color:var(--teacher-muted);display:flex;flex-direction:column;gap:12px;justify-content:center;min-height:360px;padding:30px;text-align:center}.upload-zone input{display:none}.upload-zone strong{color:#173329;color:var(--teacher-ink);font-size:19px}.upload-icon{background:#dcebd9;background:var(--teacher-light-green);border-radius:50%;color:#1d5b43;color:var(--teacher-green);display:grid;font-size:28px;height:52px;place-items:center;width:52px}.analysis-panel{background:#fff;background:var(--teacher-white);border:1px solid #dbe6dc;border:1px solid var(--teacher-line);border-radius:10px;min-height:360px;padding:26px}.analysis-header{align-items:center;border-bottom:1px solid #dbe6dc;border-bottom:1px solid var(--teacher-line);display:flex;gap:12px;padding-bottom:18px}.analysis-header h2{font-size:22px}.empty-analysis,.scan-status{color:#6a7c72;color:var(--teacher-muted);line-height:1.6;margin-top:30px}.scan-status.success{color:#1d5b43;color:var(--teacher-green);font-weight:800}.analysis-results{margin-top:18px}.result-row{border-bottom:1px solid #dbe6dc;border-bottom:1px solid var(--teacher-line);display:flex;font-size:13px;gap:12px;justify-content:space-between;padding:14px 0}.result-row span{color:#6a7c72;color:var(--teacher-muted)}.analysis-results .primary-button{margin:24px 0 0}.modal-backdrop{background:#17332973;display:grid;inset:0;padding:20px;place-items:center;position:fixed;z-index:10}.add-class-modal{background:#fff;background:var(--teacher-white);border-radius:10px;box-shadow:0 20px 60px #17332940;padding:26px;width:min(100%,420px)}.modal-heading{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:22px}.modal-heading h2{color:#173329;color:var(--teacher-ink)}.close-button{background:#0000;border:0;color:#6a7c72;color:var(--teacher-muted);font-size:26px;line-height:1}.add-class-modal label{color:#173329;color:var(--teacher-ink);display:flex;flex-direction:column;font-size:13px;font-weight:700;gap:7px;margin-bottom:16px}.add-class-modal input,.add-class-modal select{background:#fff;background:var(--teacher-white);border:1px solid #dbe6dc;border:1px solid var(--teacher-line);border-radius:6px;color:#173329;color:var(--teacher-ink);font:inherit;outline:none;padding:11px 12px}.add-class-modal input:focus,.add-class-modal select:focus{border-color:#1d5b43;border-color:var(--teacher-green);box-shadow:0 0 0 3px #1d5b431f}.modal-submit{margin:6px 0 0;width:100%}.profile-modal{max-height:85vh;overflow-y:auto}.profile-details p{border-bottom:1px solid #dbe6dc;border-bottom:1px solid var(--teacher-line);display:flex;font-size:13px;gap:12px;justify-content:space-between;padding:9px 0}.profile-details p:last-of-type{border-bottom:0}.profile-details span{color:#6a7c72;color:var(--teacher-muted)}.profile-details strong{text-align:right}.profile-password{border-top:1px solid #dbe6dc;border-top:1px solid var(--teacher-line);margin-top:22px;padding-top:18px}.assignment-list{display:flex;flex-direction:column;gap:14px;margin-top:26px}.assignment-card{background:#fff;background:var(--teacher-white);border:1px solid #dbe6dc;border:1px solid var(--teacher-line);border-radius:10px;padding:20px}.assignment-top{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.assignment-top h3{font-size:17px}.assignment-class{color:#6a7c72;color:var(--teacher-muted);font-size:13px;margin:4px 0 0}.assignment-count{color:#1d5b43;color:var(--teacher-green);font-weight:800;white-space:nowrap}.progress-bar{background:#e8efe8;border-radius:5px;height:8px;margin:14px 0 4px;overflow:hidden}.progress-fill{background:#1d5b43;background:var(--teacher-green);border-radius:5px;height:100%;transition:width .3s ease}.roster-toggle{background:#0000;border:0;color:#1d5b43;color:var(--teacher-green);font-size:13px;font-weight:800;padding:8px 0}.roster{border-top:1px solid #dbe6dc;border-top:1px solid var(--teacher-line);list-style:none;margin:6px 0 0}.roster li{align-items:center;border-bottom:1px solid #dbe6dc;border-bottom:1px solid var(--teacher-line);display:flex;font-size:13px;justify-content:space-between;padding:9px 0}.roster li:last-child{border-bottom:0}.tick-done{color:#1d5b43;color:var(--teacher-green);font-weight:800}.tick-pending{color:#b16e29;font-weight:800}.roster-file-link{color:inherit}.insight-summary{align-items:flex-start;background:#dcebd9;background:var(--teacher-light-green);border:1px solid #cfe1cf;border-radius:10px;display:flex;font-size:14px;gap:14px;line-height:1.6;margin-top:22px;padding:20px}.insight-summary p{font-weight:600;margin:0}.insight-subtitle{margin-top:28px}.insight-list{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(2,1fr);margin-top:12px}.insight-card{background:#fff;background:var(--teacher-white);border:1px solid #dbe6dc;border:1px solid var(--teacher-line);border-radius:10px;font-size:13px;padding:18px}.insight-card .detail-subtitle{margin-top:2px}.insight-reco{font-size:13px;line-height:1.8;margin:12px 0 0 20px}.theme-options{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr);margin-top:26px;max-width:560px}.theme-card{align-items:center;background:#fff;background:var(--teacher-white);border:2px solid #dbe6dc;border:2px solid var(--teacher-line);border-radius:12px;color:#173329;color:var(--teacher-ink);cursor:pointer;display:flex;flex-direction:column;gap:8px;padding:28px 20px;transition:all .2s}.theme-card:hover{box-shadow:0 10px 28px #1733291f;transform:translateY(-3px)}.theme-card.selected{border-color:#1d5b43;border-color:var(--teacher-green);box-shadow:0 0 0 3px #1d5b4326}.theme-card strong{font-size:16px}.theme-card span:last-child{color:#6a7c72;color:var(--teacher-muted);font-size:12px}.theme-preview{border-radius:50%;display:grid;font-size:44px;height:84px;margin-bottom:6px;place-items:center;width:84px}.theme-preview-light{background:#fff7dd}.theme-preview-dark{background:#1c2b22}.calendar-layout{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1.2fr 1fr;margin-top:26px}.calendar-card{background:#fff;background:var(--teacher-white);border:1px solid #dbe6dc;border:1px solid var(--teacher-line);border-radius:10px;padding:22px}.calendar-nav{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.calendar-nav button{background:#0000;border:1px solid #dbe6dc;border:1px solid var(--teacher-line);border-radius:6px;color:#1d5b43;color:var(--teacher-green);font-size:20px;height:36px;line-height:1;width:36px}.calendar-nav button:hover{background:#dcebd9;background:var(--teacher-light-green)}.calendar-nav strong{font-size:17px}.calendar-grid{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(7,1fr)}.calendar-dow{color:#6a7c72;color:var(--teacher-muted);font-size:11px;font-weight:800;padding:6px 0;text-align:center}.calendar-day{align-items:center;aspect-ratio:1;background:#0000;border:1px solid #0000;border-radius:8px;color:#173329;color:var(--teacher-ink);display:flex;flex-direction:column;font-size:13px;font-weight:600;gap:1px;justify-content:center;position:relative}.calendar-day:hover{background:#dcebd9;background:var(--teacher-light-green)}.calendar-day.is-today{border-color:#1d5b43;border-color:var(--teacher-green)}.calendar-day.is-selected{background:#1d5b43;background:var(--teacher-green);color:#fff}.calendar-day.has-events{font-weight:800}.event-dots{color:#b16e29;font-size:10px;line-height:1}.calendar-day.is-selected .event-dots{color:#ffd97a}.calendar-side{display:flex;flex-direction:column;gap:16px}.day-events{list-style:none;margin:12px 0 0}.day-events li{align-items:flex-start;border-bottom:1px solid #dbe6dc;border-bottom:1px solid var(--teacher-line);display:flex;font-size:13px;gap:10px;justify-content:space-between;padding:10px 0}.day-events li:last-child{border-bottom:0}.day-events p{color:#6a7c72;color:var(--teacher-muted);font-size:12px;margin:3px 0 0}.event-form{display:flex;flex-direction:column;gap:10px;margin-top:14px}.event-form input{border:1px solid #dbe6dc;border:1px solid var(--teacher-line);border-radius:6px;color:#173329;color:var(--teacher-ink);outline:none;padding:11px 12px}.event-form input:focus{border-color:#1d5b43;border-color:var(--teacher-green);box-shadow:0 0 0 3px #1d5b431f}.todo-form{display:flex;gap:10px;margin-top:26px}.todo-form input[type=text]{border:1px solid #dbe6dc;border:1px solid var(--teacher-line);border-radius:8px;color:#173329;color:var(--teacher-ink);flex:2 1;outline:none;padding:12px 14px}.todo-form input[type=text]:focus{border-color:#1d5b43;border-color:var(--teacher-green);box-shadow:0 0 0 3px #1d5b431f}.priority-picker{display:flex;flex:3 1;gap:8px}.priority-pill{align-items:center;background:#fff;border:1.5px solid #dbe6dc;border:1.5px solid var(--teacher-line);border-radius:10px;color:#6a7c72;color:var(--teacher-muted);cursor:pointer;display:flex;flex:1 1;font-size:13px;font-weight:700;gap:7px;justify-content:center;padding:12px 8px;transition:all .15s}.priority-pill:before{background:#c9d4cb;border-radius:50%;content:"";height:9px;transition:background .15s;width:9px}.priority-pill.priority-high:before{background:#e0a89a}.priority-pill.priority-medium:before{background:#ecd3a0}.priority-pill.priority-low:before{background:#a9dfbf}.priority-pill:hover{box-shadow:0 4px 12px #1733291a;transform:translateY(-1px)}.priority-pill.selected.priority-high{background:#f8dfd8;border-color:#a24f3c;color:#a24f3c}.priority-pill.selected.priority-high:before{background:#a24f3c}.priority-pill.selected.priority-medium{background:#fff2d9;border-color:#d98b35;color:#9b6725}.priority-pill.selected.priority-medium:before{background:#d98b35}.priority-pill.selected.priority-low{background:#dcebd9;border-color:#1d5b43;border-color:var(--teacher-green);color:#1d5b43;color:var(--teacher-green)}.priority-pill.selected.priority-low:before{background:#1d5b43;background:var(--teacher-green)}.todo-form .primary-button{margin-left:0}.todo-group{margin-top:26px}.todo-group-title{border-left:4px solid #6a7c72;border-left:4px solid var(--teacher-muted);font-size:12px;font-weight:800;letter-spacing:1.2px;margin-bottom:10px;padding-left:10px;text-transform:uppercase}.todo-group-title.priority-high{border-color:#a24f3c;color:#a24f3c}.todo-group-title.priority-medium{border-color:#d98b35;color:#b16e29}.todo-group-title.priority-low{border-color:#1d5b43;border-color:var(--teacher-green);color:#1d5b43;color:var(--teacher-green)}.todo-items{background:#fff;background:var(--teacher-white);border:1px solid #dbe6dc;border:1px solid var(--teacher-line);border-radius:10px;list-style:none;overflow:hidden}.todo-items li{align-items:center;border-bottom:1px solid #dbe6dc;border-bottom:1px solid var(--teacher-line);display:flex;font-size:14px;gap:12px;padding:12px 16px}.todo-items li:last-child{border-bottom:0}.todo-items li.done .todo-text{color:#6a7c72;color:var(--teacher-muted);text-decoration:line-through}.todo-check{background:#0000;border:2px solid #1d5b43;border:2px solid var(--teacher-green);border-radius:50%;color:#fff;display:grid;flex-shrink:0;font-size:14px;height:24px;line-height:1;place-items:center;width:24px}.todo-check.checked{background:#1d5b43;background:var(--teacher-green)}.todo-text{flex:1 1}.worksheet-list{display:flex;flex-direction:column;gap:14px;margin-top:26px}.worksheet-card{background:#fff;background:var(--teacher-white);border:1px solid #dbe6dc;border:1px solid var(--teacher-line);border-radius:10px;padding:20px}.source-badge{border-radius:20px;font-size:11px;font-weight:800;padding:5px 10px;white-space:nowrap}.source-ai{background:#dcebd9;background:var(--teacher-light-green);color:#1d5b43;color:var(--teacher-green)}.source-upload{background:#e3ecf7;color:#2f5b8f}.worksheet-card-actions{align-items:center;display:flex;gap:12px;margin-top:14px}.worksheet-link{display:inline-block;text-decoration:none}@media (max-width:760px){.overview-grid{grid-template-columns:repeat(2,1fr)}.class-grid,.insight-list,.scanner-layout{grid-template-columns:1fr}.recommendation{align-items:flex-start;flex-wrap:wrap}.recommendation .primary-button{margin-left:0}.todo-form{flex-wrap:wrap}.priority-picker,.todo-form input[type=text]{flex:1 1 100%}.view-tabs{overflow-x:auto;scrollbar-width:none}.view-tabs::-webkit-scrollbar{display:none}.view-tabs button{padding:12px 14px;white-space:nowrap}.assignment-top,.roster li{flex-wrap:wrap}.roster li{gap:4px 12px}}@media (max-width:480px){.teacher-main{width:92vw}.teacher-header{gap:10px;padding:0 4vw}.greeting{display:none}.brand-name{font-size:10px}.header-back-button{font-size:12px}.overview-grid{gap:8px}.overview-card{min-height:96px;padding:14px}.overview-card strong{font-size:27px}.section-heading{align-items:flex-start;flex-direction:column}.calendar-day{font-size:12px}}.student-name-field{color:var(--teacher-ink);display:flex;flex-direction:column;font-size:13px;font-weight:800;gap:7px;margin-top:14px}.student-name-field input{border:1px solid var(--teacher-line);border-radius:6px;color:var(--teacher-ink);outline:none;padding:11px 12px}.student-name-field input:focus{border-color:var(--teacher-green);box-shadow:0 0 0 3px #1d5b431f}.analysis-error{color:#a24f3c;font-size:13px;font-weight:700;margin:10px 0 0}.student-insight{color:var(--teacher-muted);line-height:1.4}.classes-view{animation:classes-enter .35s ease-out}.class-detail-heading{align-items:end;display:flex;gap:24px;justify-content:space-between}.detail-subtitle{color:var(--teacher-muted)}.my-class-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr);margin-top:30px}.my-class-card{background:var(--teacher-white);border:1px solid var(--teacher-line);border-radius:10px;color:var(--teacher-ink);min-height:220px;padding:22px;text-align:left;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.my-class-card:hover{border-color:#9fc4a5;box-shadow:0 12px 28px #17332914;transform:translateY(-3px)}.class-card-top,.panel-heading{align-items:center;display:flex;justify-content:space-between}.card-top-actions{align-items:center;display:flex;gap:10px}.card-delete{-webkit-text-stroke:1px currentColor;background:#0000;border:0;cursor:pointer;font-size:23px;line-height:1;opacity:.65;padding:4px}.card-delete:hover{opacity:1;transform:scale(1.12)}.my-class-card{cursor:pointer}.my-class-card:focus-visible{outline:2px solid var(--teacher-green);outline-offset:2px}.detail-actions{align-items:center;display:flex;gap:10px}.delete-class-btn{background:#0000;border:1px solid #c96a5a;border-radius:6px;color:#a24f3c;cursor:pointer;font-size:15px;font-weight:800;padding:12px 18px}.delete-class-btn:hover{background:#f8dfd8}.class-icon{background:var(--teacher-light-green);border-radius:10px;display:grid;font-size:22px;height:42px;place-items:center;width:42px}.card-arrow{color:var(--teacher-green);font-size:20px}.my-class-card h2{font-size:22px;margin:24px 0 20px}.class-card-stats{border-bottom:1px solid var(--teacher-line);display:flex;gap:38px;padding-bottom:18px}.class-card-footer,.class-card-stats span{color:var(--teacher-muted);display:flex;flex-direction:column;font-size:12px;gap:5px}.class-card-stats strong{color:var(--teacher-ink);font-size:24px}.class-card-footer{color:#a2682b;flex-direction:row;justify-content:space-between;padding-top:16px}.detail-metrics{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(5,1fr);margin:28px 0}.detail-metrics article{background:var(--teacher-white);border:1px solid var(--teacher-line);border-radius:8px;display:flex;flex-direction:column;justify-content:space-between;min-height:108px;padding:16px}.detail-metrics strong{font-size:29px}.detail-metrics span{color:var(--teacher-muted);font-size:12px;font-weight:700;line-height:1.3}.detail-metrics .metric-warning{border-left:4px solid #d98b35}.student-panel{background:var(--teacher-white);border:1px solid var(--teacher-line);border-radius:10px;padding:24px}.panel-heading{border-bottom:1px solid var(--teacher-line);padding-bottom:18px}.panel-heading h2{font-size:22px}.panel-actions{align-items:center;display:flex;gap:14px}.panel-actions>span{color:var(--teacher-muted);font-size:13px}.add-student-button{background:#0000;border:1px solid var(--teacher-green);border-radius:6px;color:var(--teacher-green);font-size:12px;font-weight:800;padding:8px 11px}.add-student-button:hover{background:var(--teacher-light-green)}.empty-students{align-items:center;color:var(--teacher-muted);display:flex;flex-direction:column;gap:8px;justify-content:center;min-height:150px;text-align:center}.empty-students strong{color:var(--teacher-ink)}.student-modal-backdrop{background:#17332973;display:grid;inset:0;padding:20px;place-items:center;position:fixed;z-index:15}.student-modal{background:var(--teacher-white);border-radius:10px;box-shadow:0 20px 60px #17332940;padding:26px;width:min(100%,420px)}.student-modal label{color:var(--teacher-ink);display:flex;flex-direction:column;font-size:13px;font-weight:700;gap:7px}.student-modal input{border:1px solid var(--teacher-line);border-radius:6px;color:var(--teacher-ink);outline:none;padding:11px 12px}.student-modal input:focus{border-color:var(--teacher-green);box-shadow:0 0 0 3px #1d5b431f}.student-table{overflow-x:auto}.student-row{grid-gap:16px;align-items:center;border-bottom:1px solid var(--teacher-line);display:grid;font-size:13px;gap:16px;grid-template-columns:1.3fr .7fr .9fr 1.1fr 1.2fr;min-width:780px;padding:15px 0}.student-row:last-child{border-bottom:0}.student-row-header{color:var(--teacher-muted);font-size:11px;font-weight:800;letter-spacing:.8px;text-transform:uppercase}.status-pill.above,.student-solution{color:var(--teacher-green)}.student-solution{font-weight:600;line-height:1.4}.worksheet-button{margin-top:16px;width:100%}.worksheet-modal{background:var(--teacher-white);border-radius:10px;box-shadow:0 20px 60px #17332940;max-height:85vh;overflow-y:auto;padding:26px;width:min(100%,560px)}.worksheet-instructions{color:var(--teacher-muted);font-size:13px;line-height:1.5;margin:0 0 14px}.worksheet-questions{color:var(--teacher-ink);font-size:13px;line-height:1.6;margin:0 0 14px 20px}.worksheet-questions li{margin-bottom:10px}.worksheet-hint{color:var(--teacher-muted);display:block;font-size:12px}.worksheet-checklist{background:var(--teacher-light-green);border-radius:8px;font-size:13px;padding:12px 14px}.worksheet-checklist ul{line-height:1.8;list-style:none;margin:8px 0 0}.worksheet-actions{display:flex;gap:10px;margin-top:18px}.worksheet-actions .primary-button{margin-left:0}@keyframes classes-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:760px){.detail-metrics,.my-class-grid{grid-template-columns:1fr}.class-detail-heading{align-items:flex-start;flex-direction:column}.detail-metrics article{min-height:86px}}.student-app{background:#f4f7f1;color:#173329;min-height:100vh}.student-header{align-items:center;background:#fff;border-bottom:1px solid #dbe6dc;display:flex;gap:24px;min-height:76px;padding:0 5vw}.student-greeting{align-items:center;display:flex;gap:12px}.brand-mark{background:#1d5b43;border-radius:10px;color:#fff;display:grid;font-weight:800;height:34px;place-items:center;width:34px}.brand-name{color:#1d5b43;font-size:12px;font-weight:800;letter-spacing:1px;margin:0;text-transform:uppercase}.greeting{font-size:15px;font-weight:700;margin:0}.header-actions{align-items:center;display:flex;gap:10px;margin-left:auto}.sh-profile-btn{background:#0000;border:0;cursor:pointer;font-size:20px}.sh-profile-btn:hover{transform:scale(1.12)}.sh-logout{background:#0000;border:1px solid #dbe6dc;border-radius:8px;color:#a24f3c;cursor:pointer;font-size:13px;font-weight:800;padding:10px 14px}.sh-logout:hover{background:#f8dfd8}.sh-notif-bell{background:#0000;border:0;cursor:pointer;font-size:20px;position:relative}.sh-notif-badge{background:#c0392b;border-radius:10px;color:#fff;display:grid;font-size:11px;font-weight:800;height:18px;min-width:18px;padding:0 5px;place-items:center;position:absolute;right:-8px;top:-6px}.sh-notif-backdrop{background:#17332959;inset:0;position:fixed;z-index:30}.sh-notif-panel{background:#fff;border-radius:12px;box-shadow:0 20px 60px #1733294d;max-height:70vh;overflow-y:auto;padding:18px;position:fixed;right:5vw;top:84px;width:min(380px,92vw)}.sh-notif-header{align-items:center;border-bottom:1px solid #dbe6dc;display:flex;font-size:16px;justify-content:space-between;padding-bottom:12px}.sh-notif-header button{background:#0000;border:0;color:#6a7c72;cursor:pointer;font-size:24px;line-height:1}.sh-notif-section{color:#1d5b43;font-size:11px;font-weight:800;letter-spacing:1.4px;margin:14px 0 6px;text-transform:uppercase}.sh-notif-item{border-bottom:1px solid #dbe6dc;display:flex;font-size:13px;gap:10px;padding:10px 0}.sh-notif-item:last-child{border-bottom:0}.sh-notif-icon{font-size:18px}.sh-notif-item p{color:#6a7c72;font-size:12px;margin:3px 0 0}.sh-notif-time{color:#6a7c72;display:block;font-size:11px;margin-top:3px}.sh-notif-empty{color:#6a7c72;font-size:13px;padding:10px 0}.student-main{margin:0 auto;padding:28px 0 56px;width:min(1180px,90vw)}.student-main h1{font-size:clamp(28px,4vw,42px);letter-spacing:-1px;margin-bottom:0}.student-main h2{font-size:22px;margin-bottom:0}.sh-tabs{border-bottom:1px solid #dbe6dc;display:flex;gap:6px;margin-bottom:34px}.sh-tabs button{background:#0000;border:0;border-bottom:3px solid #0000;color:#6a7c72;cursor:pointer;font-weight:700;padding:12px 18px}.sh-tabs button.active{border-color:#1d5b43;color:#1d5b43}.section-kicker{color:#1d5b43;font-size:11px;font-weight:800;letter-spacing:1.6px;margin:0 0 8px;text-transform:uppercase}.detail-subtitle{color:#6a7c72;font-size:13px;margin:10px 0 0}.sh-section-head{align-items:end;display:flex;gap:24px;justify-content:space-between}.sh-primary{background:#1d5b43;border:0;border-radius:6px;color:#fff;cursor:pointer;font-weight:800;padding:11px 16px}.sh-primary:hover{background:#123d2e}.sh-outline{background:#0000;border:1px solid #1d5b43;border-radius:6px;color:#1d5b43;cursor:pointer;font-weight:700;padding:10px 14px}.sh-outline:hover{background:#dcebd9}.sh-back{background:#0000;border:0;color:#1d5b43;cursor:pointer;font-size:14px;font-weight:800;margin-bottom:22px;padding:8px 0}.sh-back:hover{text-decoration:underline}.sh-back-top{margin-bottom:18px}.sh-menu-btn{font-size:24px}.header-back-button,.sh-menu-btn{background:#0000;border:0;color:#1d5b43;cursor:pointer}.header-back-button{font-size:14px;font-weight:800;white-space:nowrap}.header-back-button:hover{text-decoration:underline}.sh-drawer-layer{background:#17332959;inset:0;opacity:1;position:fixed;transition:opacity .25s ease;z-index:20}.sh-drawer-layer.closing{opacity:0}.sh-drawer{animation:sh-drawer-in .25s ease-out;background:#fff;box-shadow:12px 0 35px #1733292e;display:flex;flex-direction:column;height:100%;padding:24px 18px;width:min(310px,86vw)}.sh-drawer-layer.closing .sh-drawer{animation:sh-drawer-out .25s ease-in forwards}.sh-drawer-header{align-items:center;border-bottom:1px solid #dbe6dc;display:flex;justify-content:space-between;padding:0 8px 24px}.sh-drawer-brand{align-items:center;color:#1d5b43;display:flex;font-size:18px;gap:10px}.sh-drawer-close{background:#0000;border:0;color:#6a7c72;cursor:pointer;font-size:28px;line-height:1}.sh-drawer-label{color:#6a7c72;font-size:10px;font-weight:800;letter-spacing:1.4px;margin:26px 10px 8px;text-transform:uppercase}.sh-drawer-nav{display:flex;flex-direction:column;gap:3px}.sh-drawer-nav button{align-items:center;background:#0000;border:0;border-radius:6px;color:#173329;cursor:pointer;display:flex;font-size:14px;font-weight:700;gap:12px;padding:12px 10px;text-align:left;width:100%}.sh-drawer-nav button.selected,.sh-drawer-nav button:hover{background:#dcebd9;color:#1d5b43}.sh-drawer-nav button span:last-child{flex:1 1}.sh-drawer-logout{align-items:center;background:#0000;border:0;border-radius:6px;color:#a24f3c;cursor:pointer;display:flex;font-size:14px;font-weight:700;gap:12px;margin-top:auto;padding:12px 10px;text-align:left;width:100%}.sh-drawer-logout:hover{background:#f8dfd8}@keyframes sh-drawer-in{0%{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes sh-drawer-out{0%{transform:translateX(0)}to{transform:translateX(-100%)}}.sh-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr);margin-top:30px}.sh-card{background:#fff;border:1px solid #dbe6dc;border-radius:10px;color:#173329;min-height:200px;padding:22px;text-align:left;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.sh-card[role=button]{cursor:pointer}.sh-card[role=button]:hover{border-color:#9fc4a5;box-shadow:0 12px 28px #17332914;transform:translateY(-3px)}.sh-card-top{align-items:center;display:flex;justify-content:space-between}.sh-card-icon{background:#dcebd9;border-radius:10px;display:grid;font-size:22px;height:42px;place-items:center;width:42px}.sh-card h2{margin:20px 0 12px}.sh-card-stats{align-items:center;display:flex;gap:14px;margin-bottom:12px}.sh-delete{-webkit-text-stroke:1px currentColor;background:#0000;border:0;cursor:pointer;font-size:20px;line-height:1;opacity:.65;padding:4px}.sh-delete:hover{color:#a24f3c;opacity:1;transform:scale(1.12)}.sh-insight{color:#6a7c72;font-size:13px;line-height:1.5;margin:8px 0 0}.sh-scan-card{background:#fff;border:1px solid #dbe6dc;border-radius:10px;margin-top:22px;padding:22px}.sh-scan-card h2{margin-bottom:4px}.sh-file-label{align-items:center;border:2px dashed #a9c7ad;border-radius:10px;color:#6a7c72;cursor:pointer;display:flex;font-size:13px;gap:12px;margin:14px 0 4px;padding:18px}.sh-file-label:hover{background:#f0f7f4;border-color:#1d5b43}.sh-scan-preview{background:#fafafa;border:1px solid #eee;border-radius:8px;margin-top:10px;max-height:220px;max-width:100%;object-fit:contain}.sh-field-label{color:#444;display:block;font-size:12px;font-weight:700;margin-top:12px}.sh-field-label input,.sh-field-label select{background:#fff;border:1px solid #dbe6dc;border-radius:6px;color:#173329;display:block;font-family:inherit;margin-top:6px;outline:none;padding:11px 12px;width:100%}.sh-field-label input:focus,.sh-field-label select:focus{border-color:#1d5b43;box-shadow:0 0 0 3px #1d5b431f}.sh-form-error{margin-top:10px}.sh-scan-actions{margin-top:14px}.sh-scan-result{background:#fafcfb;border:1px solid #dbe6dc;border-radius:10px;font-size:13px;line-height:1.7;margin-top:16px;padding:20px}.sh-progress-box{background:#dcebd9;border-radius:8px;color:#1d5b43;font-size:13px;font-weight:700;margin:12px 0;padding:12px 14px}.sh-card .sh-outline{margin-top:14px}.status-pill{border-radius:20px;font-size:11px;font-weight:800;padding:5px 8px;width:fit-content}.status-pill.above{background:#dcebd9;color:#1d5b43}.status-pill.average{background:#fff2d9;color:#9b6725}.status-pill.below{background:#f8dfd8;color:#a24f3c}.sh-detail-card{background:#fff;border:1px solid #dbe6dc;border-radius:10px;font-size:13px;line-height:1.7;margin-top:22px;padding:22px}.sh-detail-card p{margin:8px 0 0}.sh-empty{align-items:center;color:#6a7c72;display:flex;flex-direction:column;gap:8px;justify-content:center;margin-top:30px;min-height:150px;text-align:center}.sh-empty span:first-child{font-size:50px}.sh-backdrop{background:#17332973;display:grid;inset:0;padding:20px;place-items:center;position:fixed;z-index:20}.sh-modal{background:#fff;border-radius:10px;box-shadow:0 20px 60px #17332940;padding:26px;width:min(100%,420px)}.sh-modal.sh-wide{max-height:85vh;overflow-y:auto;width:min(100%,560px)}.sh-modal-head{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:18px}.sh-close{background:#0000;border:0;color:#6a7c72;cursor:pointer;font-size:26px;line-height:1}.sh-modal label{display:flex;flex-direction:column;font-size:13px;font-weight:700;gap:7px}.sh-modal input{border:1px solid #dbe6dc;border-radius:6px;color:#173329;outline:none;padding:11px 12px}.sh-modal input:focus{border-color:#1d5b43;box-shadow:0 0 0 3px #1d5b431f}.sh-modal select{background:#fff;border:1px solid #dbe6dc;border-radius:6px;color:#173329;font:inherit;outline:none;padding:11px 12px}.sh-modal select:focus{border-color:#1d5b43;box-shadow:0 0 0 3px #1d5b431f}.sh-submit{margin-top:16px;width:100%}.sh-profile-details p{border-bottom:1px solid #dbe6dc;display:flex;font-size:13px;gap:12px;justify-content:space-between;padding:9px 0}.sh-profile-details p:last-of-type{border-bottom:0}.sh-profile-details span{color:#6a7c72}.sh-profile-details strong{text-align:right}.sh-profile-password{border-top:1px solid #dbe6dc;margin-top:22px;padding-top:18px}.sh-profile-msg{color:#1d5b43;font-size:13px;font-weight:700;margin-top:12px}.sh-questions{font-size:13px;line-height:1.6;margin:0 0 14px 20px}.sh-questions li{margin-bottom:10px}.sh-hint{color:#6a7c72;display:block;font-size:12px}.sh-checklist{background:#dcebd9;border-radius:8px;font-size:13px;padding:12px 14px}.sh-checklist ul{line-height:1.8;list-style:none;margin:8px 0 0}.sh-modal-actions{display:flex;gap:10px;margin-top:18px}@media (max-width:760px){.sh-grid{grid-template-columns:1fr}.sh-section-head{align-items:flex-start;flex-direction:column}.sh-todo-form{flex-wrap:wrap}.sh-priority-picker,.sh-todo-form input[type=text]{flex:1 1 100%}.sh-cal-layout{grid-template-columns:1fr}.sh-tabs{overflow-x:auto;scrollbar-width:none}.sh-tabs::-webkit-scrollbar{display:none}.sh-tabs button{padding:12px 14px;white-space:nowrap}}@media (max-width:480px){.student-header{gap:10px;padding:0 4vw}.student-header .greeting{display:none}.student-header .brand-name{font-size:10px}.header-back-button,.sh-cal-day{font-size:12px}}.sh-cal-layout{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1.2fr 1fr;margin-top:26px}.sh-cal-card{background:#fff;border:1px solid #dbe6dc;border-radius:10px;padding:22px}.sh-cal-nav{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.sh-cal-nav button{background:#0000;border:1px solid #dbe6dc;border-radius:6px;color:#1d5b43;cursor:pointer;font-size:20px;height:36px;line-height:1;width:36px}.sh-cal-nav button:hover{background:#dcebd9}.sh-cal-grid{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(7,1fr)}.sh-cal-dow{color:#6a7c72;font-size:11px;font-weight:800;padding:6px 0;text-align:center}.sh-cal-day{align-items:center;aspect-ratio:1;background:#0000;border:1px solid #0000;border-radius:8px;color:#173329;cursor:pointer;display:flex;flex-direction:column;font-size:13px;font-weight:600;gap:1px;justify-content:center;position:relative}.sh-cal-day:hover{background:#dcebd9}.sh-cal-day.is-today{border-color:#1d5b43}.sh-cal-day.is-selected{background:#1d5b43;color:#fff}.sh-event-dots{color:#b16e29;font-size:10px;line-height:1}.sh-cal-day.is-selected .sh-event-dots{color:#ffd97a}.sh-day-events{list-style:none;margin:12px 0 0}.sh-day-events li{align-items:flex-start;border-bottom:1px solid #dbe6dc;display:flex;font-size:13px;gap:10px;justify-content:space-between;padding:10px 0}.sh-day-events li:last-child{border-bottom:0}.sh-day-events p{color:#6a7c72;font-size:12px;margin:3px 0 0}.sh-event-form{display:flex;flex-direction:column;gap:10px;margin-top:14px}.sh-event-form input{border:1px solid #dbe6dc;border-radius:6px;color:#173329;outline:none;padding:11px 12px}.sh-event-form input:focus{border-color:#1d5b43;box-shadow:0 0 0 3px #1d5b431f}.sh-upcoming-title{margin-top:18px}.sh-todo-form{display:flex;gap:10px;margin-top:26px}.sh-todo-form input[type=text]{border:1px solid #dbe6dc;border-radius:8px;color:#173329;flex:2 1;outline:none;padding:12px 14px}.sh-todo-form input[type=text]:focus{border-color:#1d5b43;box-shadow:0 0 0 3px #1d5b431f}.sh-priority-picker{display:flex;flex:3 1;gap:8px}.sh-priority-pill{align-items:center;background:#fff;border:1.5px solid #dbe6dc;border-radius:10px;color:#6a7c72;cursor:pointer;display:flex;flex:1 1;font-size:13px;font-weight:700;gap:7px;justify-content:center;padding:12px 8px;transition:all .15s}.sh-priority-pill:before{background:#c9d4cb;border-radius:50%;content:"";height:9px;width:9px}.sh-priority-pill.priority-high:before{background:#e0a89a}.sh-priority-pill.priority-medium:before{background:#ecd3a0}.sh-priority-pill.priority-low:before{background:#a9dfbf}.sh-priority-pill.selected.priority-high{background:#f8dfd8;border-color:#a24f3c;color:#a24f3c}.sh-priority-pill.selected.priority-high:before{background:#a24f3c}.sh-priority-pill.selected.priority-medium{background:#fff2d9;border-color:#d98b35;color:#9b6725}.sh-priority-pill.selected.priority-medium:before{background:#d98b35}.sh-priority-pill.selected.priority-low{background:#dcebd9;border-color:#1d5b43;color:#1d5b43}.sh-priority-pill.selected.priority-low:before{background:#1d5b43}.sh-todo-group{margin-top:26px}.sh-todo-group-title{border-left:4px solid #6a7c72;font-size:12px;font-weight:800;letter-spacing:1.2px;margin-bottom:10px;padding-left:10px;text-transform:uppercase}.sh-todo-group-title.priority-high{border-color:#a24f3c;color:#a24f3c}.sh-todo-group-title.priority-medium{border-color:#d98b35;color:#b16e29}.sh-todo-group-title.priority-low{border-color:#1d5b43;color:#1d5b43}.sh-todo-items{background:#fff;border:1px solid #dbe6dc;border-radius:10px;list-style:none;overflow:hidden}.sh-todo-items li{align-items:center;border-bottom:1px solid #dbe6dc;display:flex;font-size:14px;gap:12px;padding:12px 16px}.sh-todo-items li:last-child{border-bottom:0}.sh-todo-items li.done .sh-todo-text{color:#6a7c72;text-decoration:line-through}.sh-todo-check{background:#0000;border:2px solid #1d5b43;border-radius:50%;color:#fff;cursor:pointer;display:grid;flex-shrink:0;font-size:14px;height:24px;line-height:1;place-items:center;width:24px}.sh-todo-check.checked{background:#1d5b43}.sh-todo-text{flex:1 1}.sh-topics{margin-top:26px}.sh-topic-status{background:#0000;border:2px solid #dbe6dc;border-radius:50%;cursor:pointer;display:grid;flex-shrink:0;font-size:15px;height:30px;place-items:center;width:30px}.sh-topic-status.todo{color:#6a7c72}.sh-topic-status.doing{border-color:#d98b35;color:#b16e29}.sh-topic-status.done{background:#dcebd9;border-color:#1d5b43;color:#1d5b43}.sh-topic-from{color:#6a7c72;display:block;font-size:11px;font-weight:400;margin-top:2px}.sh-daily{margin-top:26px}.sh-plan-box{background:#fff;border:1px solid #dbe6dc;border-radius:10px;margin-top:16px;padding:20px}.sh-plan-focus{color:#1d5b43;font-size:14px;font-weight:700;margin:6px 0 12px}.sh-plan-tasks{font-size:13px;line-height:1.7;margin:0 0 6px 20px}.sh-plan-tasks li{margin-bottom:8px}.sh-submit-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.sh-file-btn{background:#0000;border:1px solid #1d5b43;border-radius:8px;color:#1d5b43;cursor:pointer;font-size:13px;font-weight:700;padding:10px 14px}.sh-file-btn:hover{background:#dcebd9}.sh-file-link{color:#1d5b43}.sh-form-error{color:#a24f3c;font-size:12px;font-weight:700;margin-top:14px}
/*# sourceMappingURL=main.ddc1ffda.css.map*/