:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#24262b;background:#eef0f3;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--canvas: #f4f7fa;--surface: #ffffff;--text: #152d42;--muted: #5d6e7c;--line: #e4e6eb;--line-strong: #d8dbe2;--red: #007eae;--red-dark: #00658e;--purple: #007eae;--purple-soft: #e5f3f9;--green: #278465;--green-soft: #e8f4ef;--amber: #97621b;--amber-soft: #fff4dd;--radius: 16px}*{box-sizing:border-box}.app-shell[hidden],.campus-map[hidden]{display:none}body{margin:0;min-width:320px;min-height:100vh;background:#eef0f3}button,input,textarea,select{font:inherit}button{color:inherit;cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #b9a1e3;outline-offset:2px}.app-shell{position:relative;display:flex;flex-direction:column;width:min(100%,430px);min-height:100dvh;margin:0 auto;background:var(--canvas);box-shadow:0 0 0 1px #191e280a,0 16px 54px #1f273614}.topbar{position:sticky;z-index:5;top:0;display:grid;grid-template-columns:52px 1fr 40px;align-items:center;min-height:72px;padding:10px 20px;border-bottom:1px solid rgba(228,230,235,.82);background:#f4f7faf5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.brand{display:flex;align-items:center;color:var(--red);font-size:16px;font-weight:700;letter-spacing:-.03em}.topbar-title{display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center}.topbar-title strong{font-size:15px;font-weight:650;letter-spacing:-.02em}.topbar-title span{color:var(--muted);font-size:11px}.icon-button{display:inline-grid;width:36px;height:36px;place-items:center;border:0;border-radius:11px;background:transparent;color:#565b65}.icon-button:hover{background:#eceef2}.icon-button.outlined{width:32px;height:32px;border:1px solid var(--line);background:var(--surface)}.role-switch-menu{z-index:5;position:absolute;top:64px;right:16px;display:flex;width:min(280px,calc(100% - 32px));flex-direction:column;gap:4px;padding:9px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:0 10px 28px #1e233221}.role-switch-menu>span{padding:5px 8px 3px;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.08em}.role-switch-menu button{min-height:40px;padding:0 9px;border:0;border-radius:9px;background:transparent;color:#40434a;font-size:12px;text-align:left}.role-switch-menu button:hover{background:#f5f2f9;color:var(--purple)}.content{flex:1;width:100%;padding:22px 20px 104px}.schedule-intro{position:sticky;top:72px;z-index:4;margin:-22px -20px 18px;padding:22px 20px 12px;border-bottom:1px solid var(--line);background:#f4f7fafa;box-shadow:0 5px 12px #1f27360d;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.week-line{display:flex;align-items:center;gap:8px}.week-line>div{flex:1}.eyebrow{display:block;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.08em}h1,h2,h3,p{margin:0}h1{margin-top:7px;font-size:24px;line-height:1.16;letter-spacing:-.045em;font-weight:700}.parity{color:var(--purple);font-size:13px;font-weight:600;letter-spacing:0;white-space:nowrap}.segmented{display:grid;grid-template-columns:1fr 1fr;margin-top:19px;padding:4px;border:1px solid var(--line);border-radius:12px;background:#eceef2}.segmented button{min-height:34px;border:0;border-radius:9px;background:transparent;color:#676c76;font-size:13px;font-weight:600}.segmented button.active{background:var(--surface);color:var(--purple);box-shadow:0 1px 3px #23232d1a}.date-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;margin-bottom:18px}.week-picker-clip{width:100%;overflow:hidden}.date-cell{display:flex;min-width:0;flex-direction:column;align-items:center;gap:5px;padding:9px 2px 8px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:#555a64}.date-cell span{font-size:10px}.date-cell strong{font-size:15px}.date-cell.active{border-color:var(--purple);background:var(--purple-soft);color:#00658e}.week-picker{touch-action:pan-y;user-select:none;-webkit-user-select:none;-webkit-user-drag:none;will-change:transform}.week-picker.dragging{cursor:grabbing;-webkit-user-select:none;user-select:none;transition:none}.week-picker.slide-next{animation:week-enter-next .38s cubic-bezier(.22,.7,.25,1) both}.week-picker.slide-prev{animation:week-enter-prev .38s cubic-bezier(.22,.7,.25,1) both}@keyframes week-enter-next{0%{transform:translate(28px);opacity:.65}to{transform:translate(0);opacity:1}}@keyframes week-enter-prev{0%{transform:translate(-28px);opacity:.65}to{transform:translate(0);opacity:1}}.week-grid-scroll{width:100%;max-height:calc(100dvh - 300px);overflow:auto;overscroll-behavior:contain;border:1px solid var(--line);border-radius:13px;background:var(--surface)}.week-grid{display:grid;grid-template-columns:48px repeat(6,104px);grid-template-rows:52px repeat(8,104px);width:max-content;min-width:100%;position:relative}.grid-corner,.grid-day,.grid-time,.grid-cell,.grid-lesson{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.grid-corner{position:sticky;top:0;left:0;z-index:3;background:#faf9fc}.grid-day{position:sticky;top:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:#faf9fc;color:var(--text)}.grid-day b{font-size:11px}.grid-day span{color:var(--muted);font-size:10px}.grid-day.today span{color:var(--red);font-weight:800}.grid-time{position:sticky;left:0;z-index:2;display:flex;align-items:flex-start;justify-content:center;padding-top:9px;background:var(--surface);color:var(--muted);font-size:10px}.grid-cell{background:var(--surface)}.current-time-track{position:relative;z-index:5;min-width:0;pointer-events:none}.current-time-line{position:absolute;right:0;left:0;z-index:5;height:2px;background:var(--red);pointer-events:none}.current-time-line:before{position:absolute;top:-3px;left:-4px;width:8px;height:8px;border-radius:50%;background:var(--red);content:""}.current-time-label{position:absolute;z-index:5;left:-48px;display:grid;width:48px;height:20px;place-items:center;transform:translateY(-50%);background:var(--surface);color:var(--red);font-size:9px;font-weight:800;pointer-events:none}.grid-lesson{z-index:1;display:flex;min-width:0;flex-direction:column;gap:4px;margin:4px;padding:7px;overflow:hidden;border:1px solid #d9cbea;border-radius:9px;background:var(--purple-soft);color:#49346b;font-size:10px}.grid-lesson>b{font-size:10px;white-space:nowrap}.grid-lesson>span{display:-webkit-box;overflow:hidden;font-weight:650;line-height:1.25;-webkit-box-orient:vertical;-webkit-line-clamp:2}.grid-lesson>small{display:-webkit-box;overflow:hidden;color:#70667e;font-size:9px;line-height:1.2;-webkit-box-orient:vertical;-webkit-line-clamp:2}.grid-lesson em{color:#673d98;font-size:8px;font-style:normal;font-weight:700}.grid-lesson.changed{border-color:#b99ad7;background:#eee3f8}.grid-lesson.cancelled{border-color:#d9dbe0;background:#eceef1;color:#777b83;text-decoration:line-through}.select-field{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.day-stack{display:flex;flex-direction:column;gap:16px}.day-section{min-width:0}.day-heading{display:flex;align-items:center;justify-content:space-between;margin:0 2px 9px}.day-heading>div{display:flex;align-items:baseline;gap:8px}.day-heading h2{font-size:14px;line-height:1.3;font-weight:700}.day-heading>div>span{color:var(--muted);font-size:11px}.day-count{color:#7b7e87;font-size:10px}.lesson-list{display:flex;flex-direction:column;gap:8px}.lesson-card{display:grid;grid-template-columns:81px minmax(0,1fr);gap:9px;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:0 2px 7px #1e283c06}.lesson-card.changed{border-color:#d7c5ee;background:#fdfbff}.lesson-card.cancelled{background:#f1f2f4}.lesson-card.cancelled h3,.lesson-card.cancelled .lesson-meta{color:#878b93;text-decoration:line-through;text-decoration-color:#b4b7be}.lesson-time{display:flex;align-items:flex-start;gap:5px;padding-top:2px;color:#626773;font-size:11px;font-weight:650;white-space:nowrap}.lesson-time svg{flex:0 0 auto;color:var(--purple)}.lesson-main{min-width:0}.lesson-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:6px}.lesson-heading h3{min-width:0;font-size:13px;line-height:1.3;font-weight:650;letter-spacing:-.015em}.badge{flex:0 0 auto;padding:4px 7px;border-radius:999px;font-size:9px;line-height:1;font-weight:650}.badge-changed{background:var(--purple-soft);color:var(--purple)}.badge-cancelled{background:#e7e8eb;color:#767a83}.change-note{margin-top:5px;color:var(--purple);font-size:10px}.lesson-meta{display:flex;flex-wrap:wrap;gap:5px 10px;margin-top:9px;color:#6d727d;font-size:10px}.lesson-meta span{display:inline-flex;align-items:center;gap:4px}.lesson-meta span:first-child{color:var(--purple);font-weight:600}.lesson-meta svg{flex:0 0 auto;color:#9095a0}.lesson-online-link{width:fit-content;min-height:34px;margin-top:9px;padding:0 12px;font-size:11px;text-decoration:none}.empty-day{padding:17px 14px;border:1px dashed var(--line-strong);border-radius:13px;color:#858a94;background:#ffffff8c;font-size:12px;text-align:center}.bottom-nav{z-index:3;position:fixed;bottom:0;left:50%;display:grid;grid-template-columns:repeat(3,1fr);width:min(100%,430px);min-height:72px;padding:8px 14px max(8px,env(safe-area-inset-bottom));transform:translate(-50%);border-top:1px solid var(--line);background:#fffffff5;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.student-nav{grid-template-columns:repeat(4,1fr)}.campus-map{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;grid-template-rows:auto minmax(0,1fr);height:100dvh;background:#f4f4f4;overscroll-behavior:none}.campus-map-header{position:relative;z-index:1;display:grid;grid-template-columns:88px minmax(0,1fr) 88px;align-items:center;min-height:52px;padding:env(safe-area-inset-top,0px) max(8px,env(safe-area-inset-right)) 0 max(8px,env(safe-area-inset-left));border-bottom:1px solid var(--line);background:var(--surface)}.campus-map-header strong{text-align:center;font-size:14px}.campus-map-header .icon-button{width:44px;height:44px;text-decoration:none}.campus-map-body{position:relative;min-width:0;min-height:0;overflow:hidden}.campus-map-frame{display:block;width:100%;height:100%;border:0}.campus-map-status{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px;background:var(--canvas);text-align:center}.campus-map-status strong{font-size:15px}.campus-map-status p{max-width:300px;margin:0;color:var(--muted);font-size:13px;line-height:1.5}.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:0;background:transparent;color:#858a93;font-size:10px}.nav-item.active{color:var(--purple);font-weight:650}.nav-item.active svg{stroke-width:2.4}.screen-card,.admin-home,.form-screen{display:flex;flex-direction:column;gap:10px}.selection-screen{padding:22px 18px;border:1px solid var(--line);border-radius:19px;background:var(--surface)}.selection-screen h1,.welcome h1,.screen-heading h1{font-size:22px}.muted{color:var(--muted);font-size:12px;line-height:1.5}.selection-screen>.muted{margin-bottom:7px}.field-label{display:block;margin:8px 1px 0;color:#555a64;font-size:11px;font-weight:650}.select-field,.text-field{display:flex;width:100%;min-height:45px;align-items:center;justify-content:space-between;gap:8px;padding:0 13px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:#343840;font-size:12px;text-align:left}.select-field svg{flex:0 0 auto;color:#878b95}.text-field{display:block}.choice-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.choice{min-height:37px;padding:0 9px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:#686d77;font-size:11px;font-weight:600}.choice.selected,.group-option.selected{border-color:#cab9e4;background:var(--purple-soft);color:#634194}.group-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.group-option{min-height:44px;border:1px solid var(--line);border-radius:11px;background:var(--surface);font-size:12px;font-weight:600}.button{display:inline-flex;min-height:46px;align-items:center;justify-content:center;gap:8px;padding:0 16px;border:1px solid transparent;border-radius:12px;font-size:12px;font-weight:650;transition:background .15s,transform .15s}.button:active{transform:translateY(1px)}.button:disabled{cursor:not-allowed;opacity:.46}.button-primary{background:var(--red);color:#fff}.button-primary:hover:not(:disabled){background:var(--red-dark)}.button-secondary{border-color:var(--line-strong);background:var(--surface);color:#454953}.button-secondary:hover{background:#f5f5f7}.button.full{width:100%}.selection-screen .button-primary{margin-top:10px}.admin-home{gap:9px;padding:21px 18px;border:1px solid var(--line);border-radius:19px;background:var(--surface)}.admin-schedule{display:flex;min-width:0;flex-direction:column;gap:12px}.admin-schedule-heading h1{margin-top:5px;font-size:21px}.admin-schedule-heading p{margin-top:5px}.admin-target-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border:1px solid var(--line);border-radius:12px;background:#eceef2}.admin-target-tabs button{min-height:36px;border:0;border-radius:9px;background:transparent;color:#676c76;font-size:12px;font-weight:600}.admin-target-tabs button.active{background:var(--surface);color:var(--purple);box-shadow:0 1px 3px #23232d1a}.admin-field{display:flex;min-width:0;flex-direction:column;gap:6px;color:var(--muted);font-size:11px;font-weight:600}.stream-groups{display:grid;max-height:140px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 8px;margin:0;padding:8px;overflow-y:auto;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.stream-groups legend{padding:0 4px;color:var(--muted);font-size:10px}.stream-groups label{display:flex;min-width:0;align-items:center;gap:6px;padding:5px 2px;color:var(--text);font-size:11px}.stream-groups input{accent-color:var(--purple)}.admin-week-heading{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px;padding-top:3px}.admin-week-heading>div:first-child{display:flex;min-width:0;flex-direction:column;gap:4px}.admin-week-heading strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.admin-week-heading>div:last-child{display:flex;gap:5px}.admin-draft-notice{display:flex;align-items:flex-start;gap:8px;padding:10px;border:1px solid #d9cbea;border-radius:11px;background:var(--purple-soft);color:#49346b;font-size:11px;line-height:1.4}.admin-draft-notice svg{flex:0 0 auto}.admin-edit-dialog{max-height:calc(100dvh - 36px);overflow-y:auto}.admin-selected-lesson{display:flex;width:100%;flex-direction:column;gap:5px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#faf9fc}.admin-selected-lesson strong{font-size:13px}.admin-selected-lesson span,.admin-dialog-hint{color:var(--muted);font-size:11px;line-height:1.45}.admin-edit-dialog .admin-field,.admin-edit-dialog .text-field,.admin-edit-dialog .select-field{width:100%}.welcome{margin-bottom:3px}.welcome .muted{margin-top:5px}.admin-home .button-primary{margin-top:10px}.quiet-link{display:inline-flex;min-height:34px;align-items:center;justify-content:center;gap:5px;border:0;background:transparent;color:var(--purple);font-size:11px;font-weight:600}.quiet-link:hover{text-decoration:underline}.admin-status{display:flex;align-items:center;gap:6px;margin-top:7px;padding-top:13px;border-top:1px solid var(--line);color:#4d675d;font-size:10px}.admin-status>span:last-child{margin-left:auto;color:var(--muted)}.status-dot{width:7px;height:7px;border-radius:50%;background:#42a17d}.form-screen{gap:10px;padding:4px 0 0}.stepper{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:7px}.stepper i{width:52px;height:1px;background:var(--line-strong)}.step{display:grid;width:23px;height:23px;place-items:center;border:1px solid var(--line-strong);border-radius:50%;color:#8b8f98;font-size:10px}.step.active,.step.done{border-color:var(--purple);background:var(--purple);color:#fff}.screen-heading{margin-bottom:4px}.screen-heading .muted{margin-top:6px}.change-types{grid-template-columns:repeat(3,minmax(0,1fr))}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}.two-fields .select-field{min-height:42px}.form-screen>.button-primary{margin-top:10px}.lesson-select{font-size:11px}.preview-info{display:flex;flex-direction:column;gap:6px;padding:13px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}.preview-info strong{font-size:13px}.preview-info>span:last-child{color:var(--muted);font-size:10px}.compare-card{padding:13px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.compare-label{margin-bottom:8px;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.08em}.compare-label.next{margin-top:15px;color:var(--purple)}.compare-row{display:grid;grid-template-columns:82px minmax(0,1fr) auto;gap:8px;align-items:start;padding:10px;border-radius:10px}.compare-row>strong{font-size:10px;white-space:nowrap}.compare-row>div{display:flex;flex-direction:column;gap:4px}.compare-row b{font-size:11px;line-height:1.35}.compare-row span{color:var(--muted);font-size:9px}.compare-row.old{background:#f3f4f6;color:#777c85}.compare-row.old b{text-decoration:line-through}.compare-row.new{background:#f8f5fc}.success-note{display:flex;align-items:center;gap:7px;color:var(--green);font-size:12px}.preview-screen>.button-secondary{margin-top:4px}.upload-area{display:flex;flex-direction:column;align-items:center;gap:8px;margin:8px 0 2px;padding:24px 15px;border:1px dashed #c8c1d6;border-radius:15px;background:#fbf9fe;text-align:center}.upload-icon{display:grid;width:43px;height:43px;place-items:center;border-radius:13px;background:var(--purple-soft);color:var(--purple)}.upload-icon.small{width:35px;height:35px;border-radius:10px}.upload-area>strong{max-width:100%;overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.upload-area>span,.export-row span{color:var(--muted);font-size:10px}.upload-button{min-height:37px;margin-top:4px;padding:0 13px;font-size:11px}.upload-button input,.import-file-input{display:none}.import-files{margin:0;padding:0;list-style:none}.import-files li{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 0;border-bottom:1px solid var(--line)}.import-files li>span{min-width:0;overflow-wrap:anywhere}.import-files strong{font-size:12px}.import-files small,.import-table small{display:block;margin-top:4px;color:var(--muted);font-size:10px}.import-skip{display:flex;align-items:center;gap:8px;font-size:12px}.import-skip input{accent-color:var(--purple)}.import-actions{display:flex;flex-wrap:wrap;gap:8px}.import-actions .button{flex:1}.import-report,.import-history{display:flex;flex-direction:column;gap:10px;margin-top:14px}.import-report h2,.import-history h2{font-size:16px}.import-report .import-homework-warning{margin:0;border-color:var(--amber);background:var(--amber-soft);color:var(--amber);text-align:left}.import-table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.import-table{width:100%;border-collapse:collapse;font-size:12px;text-align:left}.import-table caption{padding:10px;text-align:left}.import-table th,.import-table td{min-width:70px;padding:10px;vertical-align:top;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.import-table th{color:var(--muted);font-size:10px}.import-table tbody tr:last-child td{border-bottom:0}.import-issues{padding-left:16px;margin:4px 0;font-size:11px;line-height:1.5}.import-issues:empty{display:none}.import-issues span{display:block;color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere}.import-screen .admin-target-tabs button:disabled{opacity:.5;cursor:not-allowed}.divider{display:flex;align-items:center;gap:10px;margin:10px 0 2px;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:.08em}.divider:before,.divider:after{height:1px;flex:1;background:var(--line);content:""}.export-row{display:flex;align-items:center;gap:10px;padding:7px 2px}.export-row>div:last-child{display:flex;flex-direction:column;gap:4px}.export-row strong{font-size:12px}.modal-backdrop{z-index:10;position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:18px;background:#1b1d2361;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.confirm-modal{position:relative;display:flex;width:min(100%,350px);flex-direction:column;align-items:flex-start;gap:11px;padding:24px 21px 18px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:0 18px 60px #1317222e}.modal-close{position:absolute;top:12px;right:12px;display:grid;width:30px;height:30px;place-items:center;border:0;border-radius:9px;background:transparent;color:var(--muted)}.modal-icon{display:grid;width:39px;height:39px;place-items:center;border-radius:12px;background:var(--amber-soft);color:var(--amber)}.confirm-modal h2{font-size:18px;letter-spacing:-.03em}.confirm-modal p{margin-bottom:5px;color:var(--muted);font-size:12px;line-height:1.5}.confirm-modal .button{margin-top:3px}.centered{width:100%}@media (min-width: 600px){body{padding:22px 0}.app-shell{width:min(100%,1240px);min-height:calc(100dvh - 44px);border:1px solid var(--line);border-radius:28px;overflow:hidden}.topbar{border-radius:28px 28px 0 0}.bottom-nav{bottom:22px;width:min(100%,620px);border-right:1px solid var(--line);border-bottom:1px solid var(--line);border-left:1px solid var(--line);border-radius:28px}.content{padding-top:26px}.selection-screen,.admin-home,.form-screen{width:min(100%,620px);margin-inline:auto}}@media (min-width: 900px){.content{padding:30px 40px 112px}.week-grid{grid-template-columns:56px repeat(6,minmax(120px,1fr));width:100%}.week-grid-scroll{max-height:calc(100dvh - 240px)}.grid-time{width:56px}.current-time-label{left:-56px;width:56px}}@media (orientation: landscape) and (max-height: 500px){body{padding:0}.app-shell{width:100%;min-height:100dvh;border:0;border-radius:0}.topbar{min-height:56px;padding:6px 16px}.content{padding:12px 16px 78px}.schedule-intro{top:56px;margin:-12px -16px 14px;padding:12px 16px 10px}.week-grid-scroll{max-height:calc(100dvh - 190px)}.bottom-nav{bottom:0;width:min(100%,620px)}}.state-note{display:flex;flex-direction:column;align-items:center;gap:12px;margin:24px 16px;padding:20px 18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--muted);font-size:14px;line-height:1.5;text-align:center}.state-note.error-note{border-color:#f0c9c2;background:#fdf0ee;color:var(--red-dark)}.state-note .button{width:auto}.icon-button:disabled,.select-field:disabled,.button:disabled{opacity:.45;cursor:not-allowed}.date-cell.today strong{position:relative}.date-cell.today strong:after{content:"";position:absolute;left:50%;bottom:-6px;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:var(--red)}.date-cell.active.today strong:after{background:#fff}.icon-button.placeholder{visibility:hidden}.lesson-card{grid-template-columns:92px minmax(0,1fr)}.lesson-time>span{display:flex;flex-direction:column;gap:2px;min-width:0}.lesson-time b{color:var(--purple);font-weight:650}.lesson-time i{font-style:normal;font-weight:600}.grid-slot{display:flex;flex-direction:column;gap:3px;min-width:0;padding:3px}.grid-slot .grid-lesson{margin:0}.grid-slot-empty{cursor:pointer}.grid-slot-empty:hover{background:#f7f4fb}.grid-lesson-selectable{cursor:pointer}.grid-lesson-selectable:hover{outline:2px solid var(--purple);outline-offset:-2px}.admin-login{width:min(100%,420px);margin-inline:auto}.form-error{padding:9px 11px;border:1px solid #f0c9c2;border-radius:10px;background:#fdf0ee;color:var(--red-dark);font-size:11px;line-height:1.45}.admin-time-row{display:grid;width:100%;grid-template-columns:1fr 1fr;gap:8px}.admin-selected-lesson .admin-change-line{color:var(--purple)}.feedback-screen{display:flex;width:min(100%,620px);flex-direction:column;gap:14px;margin-inline:auto}.feedback-screen>.segmented{margin-top:0}.feedback-kinds{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.feedback-kinds .choice{min-height:42px;font-size:12px}.feedback-hint{margin:2px 1px 0;color:var(--muted);font-size:11px;line-height:1.45}.centered-text{text-align:center}.optional{color:var(--muted);font-weight:500}.text-area{min-height:0;padding:11px 13px;line-height:1.45;resize:vertical}.feedback-consent{display:flex;align-items:flex-start;gap:8px;margin-top:4px;color:#555a64;font-size:11px;line-height:1.45}.feedback-consent input{margin-top:2px;accent-color:var(--purple)}.feedback-trap{position:absolute;left:-10000px;width:1px;height:1px;opacity:0}.feedback-form{position:relative}.feedback-sent{align-items:flex-start}.feedback-sent .button{margin-top:4px}.feedback-sent-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:13px;background:var(--green-soft);color:var(--green)}.feedback-list{display:flex;flex-direction:column;gap:8px}.feedback-card{display:flex;width:100%;flex-direction:column;gap:8px;padding:13px;border:1px solid var(--line);border-radius:14px;background:var(--surface);text-align:left}.feedback-card-button:hover{border-color:#cab9e4}.feedback-card.unread{border-color:#d7c5ee;box-shadow:inset 3px 0 0 var(--purple)}.feedback-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;color:var(--muted);font-size:10px;line-height:1.4}.feedback-card-meta{color:var(--muted);font-size:10px}.feedback-text{color:var(--text);font-size:12px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.feedback-text.clamp{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}.feedback-reply{display:flex;flex-direction:column;gap:4px;padding:10px 11px;border-radius:11px;background:var(--purple-soft)}.feedback-reply b{color:var(--purple);font-size:10px}.feedback-reply.student{background:#f3f4f6}.feedback-reply.student b{color:var(--muted)}.feedback-status-new{background:var(--amber-soft);color:var(--amber)}.feedback-status-in_progress{background:var(--purple-soft);color:var(--purple)}.feedback-status-answered{background:var(--green-soft);color:var(--green)}.feedback-status-archived{background:#e7e8eb;color:#767a83}.admin-sections{width:min(100%,620px);margin:0 auto 14px}.feedback-folders{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.feedback-folders button{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:6px;padding:0 12px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:#555a64;font-size:12px;font-weight:600}.feedback-folders button.active{border-color:#cab9e4;background:var(--purple-soft);color:#634194}.feedback-folders small{color:var(--muted);font-size:11px;font-weight:500}.feedback-count{min-width:20px;padding:3px 6px;border-radius:999px;background:var(--red);color:#fff;font-size:10px;text-align:center}.feedback-filters{display:flex;flex-wrap:wrap;gap:6px}.feedback-filters .choice{min-height:32px}.feedback-dialog{width:min(100%,520px);max-height:calc(100dvh - 36px);overflow-y:auto;align-items:stretch}.feedback-dialog .eyebrow{padding-right:30px}.feedback-meta{display:grid;grid-template-columns:auto minmax(0,1fr);gap:5px 12px;margin:0;font-size:11px}.feedback-meta dt{color:var(--muted)}.feedback-meta dd{margin:0;overflow-wrap:anywhere}.feedback-original{padding:11px;border:1px solid var(--line);border-radius:11px;background:#faf9fc}.feedback-dialog .admin-field{width:100%}.feedback-dialog .success-note{font-size:11px;line-height:1.45}.feedback-recipients{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.recipient-row{display:flex;flex-direction:column;gap:7px;padding-top:10px;border-top:1px solid var(--line)}.recipient-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;font-size:12px}.recipient-head label{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:11px}.recipient-head input{accent-color:var(--purple)}.recipient-edit{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.recipient-edit .button{min-height:45px}.recipient-saved{color:var(--green);font-size:10px}.recipient-error{color:var(--red-dark);font-size:10px}@media (min-width: 600px){.feedback-folders{grid-template-columns:repeat(4,minmax(0,1fr))}}.student-nav{grid-template-columns:repeat(5,1fr)}.nav-icon{position:relative;display:inline-flex}.nav-badge{position:absolute;top:-6px;left:11px;min-width:16px;padding:2px 4px;border-radius:999px;background:var(--red);color:#fff;font-size:9px;font-weight:700;line-height:1.1;text-align:center}.profile-line{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:12px}.profile-line svg{color:var(--purple)}.message-title{color:var(--text);font-size:13px;line-height:1.35}.importance-high{background:#fdf0ee;color:var(--red-dark)}.importance-normal{background:var(--purple-soft);color:var(--purple)}.importance-low{background:#e7e8eb;color:#767a83}.admin-sections{grid-template-columns:repeat(5,minmax(0,1fr))}.message-composer{display:flex;flex-direction:column;gap:9px}.message-composer .admin-field{width:100%}.choice-row.three{grid-template-columns:repeat(3,minmax(0,1fr))}.choice-row.five{grid-template-columns:repeat(5,minmax(0,1fr))}.choice-row.five .choice{padding:0 4px}.stream-groups.single{grid-template-columns:1fr;max-height:220px}.feedback-filters .choice{display:inline-flex;align-items:center;gap:4px}.read-progress{display:flex;flex-direction:column;gap:5px;width:100%}.read-progress-bar{height:5px;overflow:hidden;border-radius:999px;background:#eceef2}.read-progress-bar i{display:block;height:100%;border-radius:inherit;background:var(--green)}.read-progress small{color:var(--muted);font-size:10px}.recipient-status-list{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}.recipient-status-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 2px;border-bottom:1px solid var(--line)}.recipient-status-list li>div{display:flex;min-width:0;flex-direction:column;gap:2px}.recipient-status-list strong{font-size:12px}.recipient-status-list small{color:var(--muted);font-size:10px}.recipient-status-list small.pending{color:var(--amber);text-align:right}.recipient-status-list small.done{color:var(--green);text-align:right}.feedback-dialog .segmented{margin-top:4px}.confirm-modal .feedback-text{color:var(--text)}.push-card{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:12px 13px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.push-card>div{display:flex;min-width:0;flex:1 1 200px;align-items:flex-start;gap:9px}.push-card>div>svg{flex:0 0 auto;margin-top:1px;color:var(--purple)}.push-card>div>span{display:flex;flex-direction:column;gap:3px}.push-card strong{font-size:12px}.push-card small{color:var(--muted);font-size:11px;line-height:1.45}.push-card .button{min-height:38px}.push-card .form-error{width:100%}.lesson-homework-badge{display:inline-flex;align-items:center;align-self:flex-start;gap:4px;width:fit-content;max-width:100%;margin-top:10px;padding:4px 8px;border-radius:8px;background:var(--amber-soft);color:var(--amber);font-size:11px;font-weight:650;line-height:1.4}.grid-lesson .lesson-homework-badge{margin-top:4px;padding:3px 5px;font-size:10px}.personal-note-button{margin-top:12px;min-height:44px;white-space:normal}.private-note-preview{display:block;width:100%;min-width:0;margin:12px 0 0;padding:10px 12px;border:0;border-radius:10px;background:var(--purple-soft);color:inherit;font-family:inherit;font-size:12px;line-height:1.5;text-align:left;cursor:pointer}.private-note-preview:focus-visible{outline:2px solid var(--purple);outline-offset:2px}.private-note-text{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;white-space:normal;overflow-wrap:anywhere}.lesson-extras{grid-column:2;min-width:0}.lesson-extras:not(:has(>*)){display:none}.lesson-card-selectable{cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease}.lesson-card-selectable:focus-visible{outline:2px solid var(--purple);outline-offset:3px}@media (max-width: 600px){.lesson-extras{grid-column:1 / -1}.lesson-extras .private-note-preview{margin-top:0;width:100%;box-sizing:border-box}.lesson-extras .lesson-homework-badge{margin-top:0;margin-bottom:8px}.lesson-card-selectable:active{border-color:var(--purple);box-shadow:0 2px 10px #6341941f}}.personal-note-backdrop{animation:note-backdrop-in .18s ease-out both}.personal-note-backdrop .personal-note-dialog{animation:note-dialog-in .22s cubic-bezier(.2,.8,.2,1) both}.personal-note-backdrop.closing{animation:note-backdrop-out .18s ease-in both;pointer-events:none}.personal-note-backdrop.closing .personal-note-dialog{animation:note-dialog-out .18s ease-in both}@keyframes note-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes note-backdrop-out{0%{opacity:1}to{opacity:0}}@keyframes note-dialog-in{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes note-dialog-out{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(8px) scale(.98)}}@media (prefers-reduced-motion: reduce){.personal-note-backdrop,.personal-note-backdrop .personal-note-dialog{animation:none}}.private-note-mark{color:var(--purple);font-weight:600}.personal-note-dialog{width:min(100%,480px);max-height:calc(100dvh - 32px);overflow-y:auto;gap:16px;align-items:stretch}.personal-note-dialog h2{padding-right:24px;margin:0}.personal-note-dialog .admin-field{width:100%;min-width:0}.personal-note-dialog textarea{width:100%;box-sizing:border-box;resize:vertical;min-height:140px;font-size:16px}.private-note-caption{display:flex;align-items:center;gap:8px;margin:0;color:var(--muted);font-size:12px}.note-delete-confirm{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:12px}.lesson-homework-section{display:flex;flex-direction:column;gap:10px;padding-bottom:16px;border-bottom:1px solid var(--line)}.lesson-homework-section h3{margin:0;font-size:14px}.lesson-homework-section>p{margin:0}.lesson-homework-detail{display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--amber-soft);overflow-wrap:anywhere}.lesson-homework-detail strong{font-size:13px;line-height:1.5}.lesson-homework-detail small{font-size:11px}.personal-note-dialog .lesson-homework-detail p{margin:0;white-space:pre-wrap;color:var(--text);font-size:13px;line-height:1.5}.lesson-homework-section .form-error{display:flex;flex-direction:column;gap:8px}.homework-panel{display:flex;flex-direction:column;gap:16px;margin-top:24px;padding:20px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.homework-panel .admin-field{min-width:0;width:100%;margin:0}.homework-panel .text-field,.homework-panel .select-field{width:100%;min-width:0;max-width:100%;box-sizing:border-box}.homework-panel .admin-time-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.homework-profile{margin:0;font-size:11px;line-height:1.5;overflow-wrap:anywhere}.homework-heading>div{min-width:0}.homework-heading>.button{flex-shrink:0;min-height:44px}.homework-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.homework-heading h2{margin:3px 0 4px;font-size:18px}.homework-heading>div>p{margin:0;font-size:11px;line-height:1.45}.homework-form{display:flex;flex-direction:column;gap:16px;padding:16px;border-radius:13px;background:#faf9fc}.homework-form>.button{margin-top:4px;min-height:44px;white-space:normal}.homework-form textarea{resize:vertical}.homework-list{display:flex;flex-direction:column;gap:8px}.homework-item{display:flex;gap:10px;padding:11px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.homework-item.completed{opacity:.62}.homework-check{display:grid;width:24px;height:24px;flex:0 0 auto;place-items:center;padding:0;border:1px solid #c9cbd3;border-radius:7px;background:transparent;color:var(--green);cursor:pointer}.homework-check span{width:8px;height:8px;border-radius:50%;background:#d9dbe1}.homework-main{display:flex;min-width:0;flex:1;flex-direction:column;gap:4px}.homework-title-row{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px}.homework-title-row strong{font-size:13px;line-height:1.35}.homework-due{color:var(--amber);font-size:10px;font-weight:700}.homework-main p{margin:2px 0;white-space:pre-wrap;font-size:12px;line-height:1.45}.homework-main small{font-size:10px}.homework-editor-note{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:10px}.admin-homework-editors{display:flex;flex-direction:column;gap:12px}.admin-homework-editors h1{margin:3px 0 0;font-size:22px}.admin-homework-editors>p{margin:0;font-size:12px;line-height:1.45}.admin-editor-add{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.editor-list{display:flex;flex-direction:column;gap:8px}.editor-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:11px}.editor-row>span{display:flex;flex-direction:column;gap:2px;font-size:12px}.editor-row small{color:var(--purple);font-size:10px}.homework-main{overflow-wrap:anywhere}.homework-editor-note{align-items:flex-start;line-height:1.5}.homework-editor-note svg{flex-shrink:0;margin-top:1px}@media (max-width: 480px){.homework-panel{padding:16px;margin-top:20px}.homework-heading{flex-direction:column;gap:14px}.homework-heading>.button{width:100%}.homework-panel .admin-time-row,.admin-editor-add{grid-template-columns:minmax(0,1fr);gap:16px}.homework-form{padding:12px}.homework-form .text-field,.homework-form .select-field{font-size:16px}.admin-sections{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.editor-row>span{min-width:0;overflow-wrap:anywhere}}:root{--primary: #007eae;--border-color: var(--line);color:var(--text)}body{background:#e8eef3}button,a,input,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #60b9dd;outline-offset:3px}.button{border-radius:12px;min-height:44px}.brand img{object-fit:contain}.topbar{padding-top:max(10px,env(safe-area-inset-top))}.topbar-title span{line-height:1.35}.quiet-link{display:inline-flex;align-items:center;gap:8px;padding:8px 0;border:0;background:transparent;color:var(--primary);font-size:13px;text-decoration:none;text-align:left}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.context-help{margin:0;color:var(--muted);font-size:12px;line-height:1.6}.context-help summary{display:flex;align-items:center;gap:7px;width:fit-content;min-height:32px;cursor:pointer;color:var(--primary);font-weight:600;list-style:none}.context-help summary::-webkit-details-marker,.faq-item summary::-webkit-details-marker{display:none}.context-help summary:after{content:"+";margin-left:6px}.context-help[open] summary:after{content:"−"}.context-help>div{padding:12px 14px;border:1px solid #cce4ee;border-radius:12px;background:#edf7fb}.context-help p+p{margin-top:10px}.context-help p strong{display:block;margin-bottom:4px;color:var(--text)}.campus-map-actions{display:flex;align-items:center;justify-content:flex-end}.campus-map-actions .context-help{margin:0}.context-help-compact summary{display:grid;width:44px;min-height:44px;place-items:center;border-radius:11px}.context-help-compact summary:hover{background:var(--purple-soft)}.context-help-compact summary:after{display:none}.campus-map-actions .context-help>div{position:absolute;top:calc(100% + 8px);right:max(8px,env(safe-area-inset-right));width:min(360px,calc(100vw - 16px));max-height:min(60dvh,420px);overflow-y:auto;background:var(--surface);box-shadow:0 8px 28px #152d4226}.landing-shell .content{padding-bottom:24px}.landing{max-width:1100px;margin:0 auto}.landing-hero{display:grid;grid-template-columns:1.12fr 1fr;gap:54px;align-items:center;padding:28px 0 56px}.landing-institute{display:inline-flex;margin-bottom:24px;padding:12px 16px;border-radius:14px;background:#152d42}.landing-institute img{width:220px;max-width:100%;height:auto}.landing-kicker{display:flex;align-items:center;gap:8px;color:#546e81;font-size:10px;font-weight:700;letter-spacing:.12em}.landing-kicker>span{width:6px;height:6px;border-radius:50%;background:#008cbf}.landing-copy h1{margin-top:20px;font-size:clamp(36px,4.5vw,58px);font-weight:750;line-height:1.07;letter-spacing:-.055em}.landing-copy h1 em{color:var(--primary);font-style:normal}.landing-copy>p{max-width:420px;margin-top:22px;color:var(--muted);font-size:15px;line-height:1.75}.landing-cta{display:inline-flex;justify-content:space-between;gap:24px;margin-top:28px;padding:14px 21px;font-size:14px;box-shadow:0 6px 16px #007eae20}.landing-caption{display:flex;align-items:center;gap:5px;margin-top:13px;color:var(--muted);font-size:11px;line-height:1.5}.landing-caption svg{flex-shrink:0;color:var(--primary)}.landing-preview{position:relative;min-width:0;padding:24px;border:1px solid #d3e3ed;border-radius:25px;background:linear-gradient(145deg,#fff,#f1f8fc);box-shadow:10px 18px #e1edf3,0 28px 45px #204e6410;transform:rotate(2deg)}.preview-top{display:flex;align-items:center;gap:10px;padding-bottom:18px;border-bottom:1px solid var(--line);font-size:13px;font-weight:700}.preview-top img{width:30px;height:38px;object-fit:contain}.preview-top small,.preview-note small{display:block;margin-top:4px;color:var(--muted);font-size:10px;font-weight:400}.preview-dot{width:8px;height:8px;margin-left:auto;border-radius:50%;background:#249470}.preview-heading{display:grid;gap:8px;margin:22px 0}.preview-heading>span{color:var(--muted);font-size:9px;letter-spacing:.1em}.preview-heading strong{font-size:25px;letter-spacing:-.04em}.preview-days{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin-bottom:18px}.preview-days>span{display:grid;gap:8px;padding:10px 0;border-radius:10px;color:var(--muted);text-align:center;font-size:9px}.preview-days b{font-size:15px}.preview-days .selected{background:#007eae;color:#fff}.preview-lesson{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:17px 14px;border:1px solid #d6e7ee;border-left:3px solid var(--primary);border-radius:12px;background:#fff;color:var(--primary)}.preview-lesson strong{display:block;color:var(--text);font-size:13px}.preview-lesson small{display:block;margin-top:5px;color:var(--muted);font-size:10px}.preview-tag{padding:4px 7px;border-radius:6px;background:#e6f5ef;color:#216d54;font-size:9px}.preview-note{display:flex;align-items:center;gap:10px;margin:12px 0;padding:14px;border-radius:10px;background:#e5f3f9;font-size:11px}.preview-note svg{color:var(--primary);flex-shrink:0}.preview-footer{display:flex;align-items:center;gap:7px;padding-top:10px;font-size:10px}.preview-footer svg{color:var(--primary)}.preview-footer>span{margin-left:auto;color:var(--muted)}.preview-example{display:block;margin-top:18px;color:var(--muted);text-align:right;font-size:9px}.landing h2{margin-top:9px;color:var(--text);font-size:29px;line-height:1.18;letter-spacing:-.04em}.feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:24px}.feature-card{padding:22px 18px;border:1px solid var(--line);border-radius:17px;background:var(--surface)}.feature-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:12px;background:#e5f3f9;color:#007eae}.feature-tone-1{background:#f8eeee;color:#ac6264}.feature-tone-2{background:#e9f5ef;color:#277758}.feature-card h3{margin-top:18px;font-size:14px}.feature-card p{margin-top:9px;color:var(--muted);font-size:12px;line-height:1.7}.feature-card:last-child{grid-column:span 2}.landing-start{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:48px;padding:32px;border:1px solid #d2e5ee;border-radius:20px;background:#eaf4f9}.landing-start .quiet-link{margin-top:18px}.landing-start ol{display:grid;gap:24px;margin:0;padding:0;list-style:none;counter-reset:steps}.landing-start li{position:relative;padding-left:46px;counter-increment:steps}.landing-start li:before{content:"0" counter(steps);position:absolute;left:0;top:-2px;display:grid;width:32px;height:32px;place-items:center;border:1px solid #c3dfe9;border-radius:10px;color:var(--primary);font-size:12px;font-weight:700}.landing-start li strong{font-size:14px}.landing-start li p{margin-top:6px;color:var(--muted);font-size:12px;line-height:1.6}.landing-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:30px;padding-top:22px;border-top:1px solid var(--line);font-size:12px}.landing-footer small{display:block;max-width:340px;margin-top:7px;color:var(--muted);font-size:10px;line-height:1.5}.help-screen{max-width:800px;margin:0 auto}.help-screen>.muted{margin-top:12px;font-size:14px}.help-screen h1{font-size:32px}.help-search{display:flex;gap:12px;align-items:center;margin-top:24px;padding:0 15px;border:1px solid var(--line-strong);border-radius:13px;background:#fff;color:var(--primary)}.help-search:focus-within{outline:2px solid #60b9dd}.help-search input{width:100%;min-width:0;min-height:52px;border:0;background:transparent;font-size:14px;color:var(--text)}.help-search input:focus-visible{outline:none}.help-categories{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.help-categories button{min-height:40px;padding:8px 13px;border:1px solid var(--line);border-radius:22px;background:#fff;color:var(--muted);font-size:12px}.help-categories button.selected{border-color:var(--primary);background:var(--primary);color:#fff}.help-count{margin:20px 0;color:var(--muted);font-size:12px}.faq-category{margin-top:24px}.faq-category h2{margin-bottom:12px;font-size:17px}.faq-item{margin-top:8px;overflow:hidden;border:1px solid var(--line);border-radius:13px;background:#fff}.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:58px;padding:16px;list-style:none;cursor:pointer;font-size:14px;font-weight:600;line-height:1.5}.faq-item summary:after{content:"+";color:var(--primary);font-size:20px}.faq-item[open] summary:after{content:"−"}.faq-item>p{padding:0 16px 20px;color:var(--muted);font-size:14px;line-height:1.8}.help-contact{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:30px;padding:22px;border-radius:16px;background:#e5f3f9}.help-contact>svg{color:var(--primary)}.help-contact>div{flex:1}.help-contact h2{font-size:16px}.help-contact p{margin-top:6px;color:var(--muted);font-size:12px;line-height:1.6}@media (max-width: 899px){.landing-hero{gap:24px}.landing-preview{padding:18px}.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 599px){.landing-hero{grid-template-columns:minmax(0,1fr);gap:36px;padding:8px 0 42px}.landing-copy h1{font-size:42px}.landing-copy>p{font-size:14px}.landing-institute{margin-bottom:22px}.landing-cta{width:100%}.landing-preview{margin:0 7px 0 1px;transform:rotate(1deg)}.landing h2{font-size:25px}.feature-grid{gap:10px;margin-top:20px}.feature-card{padding:18px 14px}.feature-card h3{font-size:13px;line-height:1.45}.feature-card p{font-size:12px}.landing-start{grid-template-columns:minmax(0,1fr);gap:28px;margin-top:28px;padding:22px}.landing-footer{flex-direction:column;align-items:flex-start;gap:8px}.help-search input,.text-field{font-size:16px}.help-contact .button{width:100%}.topbar{padding-inline:16px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}
