.precise-dashboard{padding-left:21px;padding-right:21px;overflow:visible}
.dashboard-header{display:flex;align-items:center;gap:12px;margin:0 -6px 18px;min-height:49px}
.dashboard-header h1{font-size:25px;font-weight:760;letter-spacing:-.8px;flex:1}
.dashboard-header>.icon-button:first-child{width:30px}
.home-heading{display:flex;justify-content:space-between;align-items:center;height:51px;margin:0 3px 15px}
.home-brand{display:flex;gap:21px;align-items:center}
.home-brand h1{font-size:28px;line-height:1;font-weight:790}
.home-bell{width:29px;height:32px}
.home-welcome{margin:16px 6px 15px}
.home-welcome h2{display:flex;flex-wrap:wrap;align-items:center;gap:5px;font-size:23px;font-weight:750;line-height:1.2;letter-spacing:-.7px}
.home-welcome .wave-hand{width:28px;height:28px}
.home-welcome p{font-size:22px;color:#7785a5;line-height:1.18;margin-top:1px;font-weight:550;letter-spacing:-.6px}
.today-card{display:flex;align-items:center;justify-content:space-between;background:#fff;border-radius:17px;min-height:122px;padding:15px 17px 12px;margin-bottom:13px}
.today-link{display:flex;align-items:center;gap:9px;padding:0;font-size:19px;font-weight:730}
.today-link svg{color:#8290ad;margin-left:0}
.today-check{width:29px;height:27px}
.today-duration{display:flex;align-items:baseline;gap:3px;margin-top:7px;font-size:22px;line-height:1;font-weight:680;white-space:nowrap}
.today-duration strong{font-size:39px;font-weight:790;color:#116cff;letter-spacing:-1.4px;line-height:1}
.today-duration strong:nth-of-type(2){margin-left:2px}
.today-goal{font-size:14px;color:#8391b0;line-height:1.15;margin-top:1px}
.today-card .design-ring{width:88px;margin-left:8px}
.home-subjects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 9px}
.home-subject{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:101px;gap:7px;padding:12px 2px 10px;background:#fff;border-radius:15px;color:#071138}
.home-subject img{width:52px;height:50px;border-radius:13px}
.home-subject span{font-size:17px;font-weight:760;letter-spacing:-.75px;line-height:1.35;white-space:nowrap}
.recent-notes.card{margin-top:15px;padding:12px 16px 6px;border:0;border-radius:18px}
.recent-notes .section-title{margin:0 0 4px}
.recent-notes h2{font-size:18px;font-weight:740}
.recent-notes .section-title button{display:flex;align-items:center;gap:2px;font-size:13px;font-weight:650;padding:2px 0}
.recent-note{width:100%;display:flex;align-items:center;gap:12px;text-align:left;padding:11px 0;border-bottom:1px solid #e6eef9}
.recent-note:last-child{border:0}
.recent-note .subject-tile{width:32px;height:32px}
.recent-note strong{display:block;font-size:13px;font-weight:550;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:183px}
.recent-note small{display:block;color:#8090b2;font-size:12px;line-height:1.5}
.recent-note time{color:#8492af;font-size:10px;white-space:nowrap}
.recent-note svg{flex-shrink:0;color:#8794b0}
.route-home{padding-top:8px}
.route-map,.route-unit{padding-left:18px;padding-right:18px;padding-top:0;padding-bottom:28px}
.route-map .dashboard-header,.route-unit .dashboard-header{min-height:45px}
.route-map .dashboard-header,.route-unit .dashboard-header{margin-bottom:8px}
.course-tabs{display:flex;align-items:stretch;overflow:auto;margin:0 -18px 13px;padding:0 20px;border-bottom:1px solid #e8f0fa;scrollbar-width:none;gap:23px;min-height:48px}
.course-tabs button{position:relative;flex-shrink:0;padding:0 0 10px;font-size:17px;letter-spacing:-.5px;color:#7482a3;font-weight:670}
.course-tabs button.active{color:var(--blue)}
.course-tabs button.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;border-radius:3px;background:var(--blue)}
.course-summary.card{display:flex;align-items:center;gap:15px;padding:13px 14px;margin:0 0 18px;border:0;min-height:109px;border-radius:16px}
.course-summary>.reference-art{width:49px;height:49px;border-radius:12px}
.course-summary h2{font-size:21px;line-height:1.3;font-weight:760;margin-bottom:6px}
.course-summary p{font-size:13px;color:#8290ac;line-height:1.38;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.unit-picker-link{display:inline-flex;align-items:center;gap:3px;color:#5983c5;font-size:11px;padding:3px 0 0;font-weight:560}
.course-progress{text-align:center;flex-shrink:0}
.course-progress .design-ring{width:66px;font-size:14px}
.course-progress small{font-size:12px;white-space:nowrap;color:#8591ac}
.course-journey{list-style:none;padding:0 0 0 18px;margin:0 0 20px;position:relative}
.course-journey:before{content:"";position:absolute;top:37px;bottom:40px;left:9px;width:1px;background:linear-gradient(#29cd97,#4d98ff 30%,#dce8f8 80%)}
.course-journey li{position:relative;margin-bottom:13px;padding-left:0}
.journey-dot{position:absolute;z-index:1;left:-19px;top:29px;width:19px;height:19px;border:3px solid #f2f8ff;border-radius:50%;background:#d0daea;display:grid;place-items:center;color:white;box-sizing:content-box;transform:translateX(-50%)}
.course-journey .done .journey-dot{background:#0fc58b}
.course-journey .current .journey-dot{background:#1174ff;box-shadow:0 0 0 3px #dbeafe}
.journey-card{display:flex;align-items:center;gap:11px;background:#fff;width:100%;min-height:76px;border:1px solid transparent;border-radius:16px;padding:12px 12px 12px 14px;text-align:left}
.current .journey-card{border-color:#80aeff;box-shadow:0 0 0 .5px #80aeff;background:#fafdff}
.journey-card>.reference-art{width:49px;height:49px;border-radius:12px}
.journey-copy{display:block;flex:1;min-width:0}
.journey-copy strong{font-size:17px;font-weight:750;line-height:1.3;letter-spacing:-.6px}
.current .journey-copy strong{color:var(--blue)}
.journey-copy small{display:block;color:#8491ad;line-height:1.3;font-size:12px;margin-top:5px;letter-spacing:-.35px}
.journey-status{flex-shrink:0;align-self:flex-start;font-size:12px;color:#8391ad;margin-top:5px;min-width:23px;text-align:right}
.journey-status>span{display:flex;align-items:center;gap:3px}
.done .journey-status{color:#09bd7d;font-weight:700}
.current .journey-status{color:var(--blue);font-weight:650}
.stage-empty-dot{width:18px;height:18px;background:#e6eaf1;border-radius:50%}
.map-start.button{height:60px;margin-top:3px;font-size:24px;font-weight:750;gap:18px;border-radius:14px}
.map-start span{font-size:27px}
.dashboard-picker{width:min(410px,calc(100% - 24px));max-height:78dvh;border:1px solid #e4edf9;border-radius:23px;padding:20px;color:var(--ink);box-shadow:0 20px 70px #11234430;background:#f9fcff}
.dashboard-picker::backdrop{background:#0e24404a;backdrop-filter:blur(3px)}
.picker-search{display:flex;gap:8px;align-items:center;border:1px solid var(--line);background:white;border-radius:10px;padding:10px;margin:12px 0}
.picker-search input{border:0;background:none;outline:none;min-width:0;width:100%}
.picker-options{display:flex;flex-direction:column;margin-top:9px}
.picker-options button,.picker-tools button{display:flex;align-items:center;gap:11px;padding:13px 3px;text-align:left;border-bottom:1px solid #e5edf8;width:100%;font-size:14px}
.picker-options button[hidden]{display:none}
.picker-options .subject-tile{width:33px;height:33px}
.picker-options button>span{flex:1}
.picker-options button.active{color:var(--blue);font-weight:700}
.picker-tools{padding-top:20px}
.picker-tools button{justify-content:space-between}
.route-notes{padding-left:17px;padding-right:17px;padding-top:0;padding-bottom:18px}
.route-notes .dashboard-header{min-height:48px;margin-bottom:12px}
.route-notes .dashboard-header h1{font-size:26px}
.note-create-button{border:1px solid #dce9fb;background:#fff;box-shadow:0 3px 12px #2b70b40b}
.note-status-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;background:#e9f2ff;border:1px solid #dceaff;border-radius:13px;padding:4px;margin-bottom:12px}
.note-status-tabs button{min-width:0;height:38px;padding:0 4px;color:#7585a3;font-weight:700;font-size:13px;white-space:nowrap;border-radius:9px}
.note-status-tabs button.active{background:white;color:#126bff;box-shadow:0 2px 8px #3978b915}
.note-filter-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px}
.note-filter-grid .field{height:43px;min-height:43px;padding:8px 34px 8px 12px;font-size:14px;font-weight:600;border-color:#d5e6f8;border-radius:11px;background-color:#fff;min-width:0}
.note-search{display:flex;align-items:center;gap:9px;height:44px;border:1px solid #d5e6f8;background:white;border-radius:11px;padding:0 12px;color:#7f90ac}
.note-search input{width:100%;min-width:0;border:0;outline:0;background:none;color:var(--ink);font-size:14px}
.note-search input::placeholder{color:#98a5bb}
.note-count{display:flex;align-items:center;justify-content:space-between;margin:18px 2px 10px}
.note-count>div{display:flex;align-items:baseline;gap:6px}
.note-count h2{font-size:18px;font-weight:760}
.note-count span{font-size:13px;color:#687b9d;font-weight:650}
.note-count select{max-width:110px;background:none;border:0;border-left:1px solid #b7c4dd;padding-left:12px;color:var(--ink);font-size:13px;font-weight:630}
.precise-note-list{display:flex;flex-direction:column;gap:10px}
.note-record.card{margin:0;padding:14px 14px 12px;border:1px solid #e4eefb;border-radius:16px;box-shadow:0 5px 18px #2b6aa709}
.note-record-top{display:block;width:100%;text-align:left;padding:0}
.note-record-meta{display:flex;align-items:center;gap:7px;margin-bottom:10px}
.note-subject-label{display:inline-flex;align-items:center;justify-content:center;max-width:132px;min-height:27px;border-radius:9px;font-size:12px;line-height:1.25;font-weight:750;padding:5px 9px;letter-spacing:-.3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.note-subject-label.red{background:#ffe7ea;color:#ff3846}.note-subject-label.blue{background:#e8f0ff;color:#1069ff}.note-subject-label.green{background:#e2fcf2;color:#06ac87}.note-subject-label.purple{background:#eee2ff;color:#7930ea}.note-subject-label.gold{background:#fff1ce;color:#d98b08}
.note-record-title{display:block;font-size:16px;font-weight:760;line-height:1.35;letter-spacing:-.45px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.note-record-summary{display:-webkit-box;color:#7a89a5;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:1.55;margin-top:5px}
.note-record-meta time{font-size:11px;color:#8492ad;margin-left:auto;white-space:nowrap}
.note-mastery{display:inline-flex;flex-shrink:0;align-items:center;gap:2px;border-radius:15px;padding:4px 7px;font-size:10px;white-space:nowrap;font-weight:700;background:#f0f4fb;color:#8494af}
.note-mastery.weak{background:#ffe9ec;color:#ff5265}.note-mastery.mastered{background:#e0fbf2;color:#03bd91}.note-mastery.learning{background:#ebf2ff;color:#1875ff}
.note-record-open{display:flex;align-items:center;justify-content:flex-end;gap:3px;color:#6e83a7;font-size:11px;font-weight:650;margin-top:8px}
.note-record-open svg{transition:transform .2s}
.note-record-top[aria-expanded=true] .note-record-open svg{transform:rotate(90deg)}
.retry-note.button{min-height:40px;height:40px;margin-top:10px;font-size:15px;border-radius:10px;box-shadow:none}
.note-more{margin-top:12px;min-height:46px;border-color:#d9e7f8;background:#fff}
.note-more span{margin-left:6px;color:#8291aa;font-size:11px}
.notes-coach{display:flex;align-items:center;justify-content:center;gap:19px;margin:12px 1px 0;padding:5px 14px;border:1px dashed #c9e2ff;border-radius:11px;min-height:60px}
.notes-coach img{width:53px;height:61px}
.notes-coach strong{font-size:12px;font-weight:730}.notes-coach p{font-size:11px;line-height:1.4;color:#8696b2;margin-top:3px}
.route-review{padding-left:21px;padding-right:21px;padding-top:0}
.review-heading{display:flex;align-items:center;justify-content:space-between;margin:5px 4px 4px}
.review-heading h1{font-size:29px;font-weight:800;letter-spacing:-1px}
.review-summary.card{display:flex;align-items:center;gap:16px;position:relative;min-height:119px;padding:5px 16px;border:0;margin:0 0 14px}
.green-ring{--ring-color:#10c68d}
.review-summary .design-ring{width:87px;font-size:19px}
.review-summary>div{align-self:center;min-width:0;flex:1;z-index:1}
.review-summary h2{font-size:16px;letter-spacing:-.6px;font-weight:740;white-space:nowrap}
.review-summary h2 b{color:var(--blue)}
.review-summary p{font-size:15px;color:#7e8fad;line-height:1.4;margin-top:8px;letter-spacing:-.5px}
.review-summary>.reference-art{width:91px;height:109px;margin-left:-8px;margin-right:-5px;align-self:flex-end}
.review-tabs,.login-role-tabs{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:#e8f2ff;border:1px solid #e0ebf9;border-radius:14px;padding:3px;margin-bottom:11px}
.review-tabs button,.login-role-tabs button{height:37px;border-radius:10px;color:#7b89a8;font-size:17px;font-weight:700}
.review-tabs button.active{color:var(--blue);background:#fff;box-shadow:0 0 0 1px #327fff,0 2px 8px #2a76c914}
.review-carousel.card{padding:15px 17px 10px;border:0;margin:0 0 11px;border-radius:20px}
.review-carousel>.row .chip{font-size:14px;padding:4px 10px}
.review-carousel>.row .icon-button{width:28px;height:28px;min-height:28px}
.review-card-row{display:flex;align-items:center;gap:6px;margin-top:6px}
.carousel-arrow{display:grid;place-items:center;flex-shrink:0;width:31px;height:31px;border-radius:50%;background:#fff;box-shadow:0 2px 14px #376b9710;margin:0}
.review-face{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;flex:1;min-height:161px;background:#fff;border:1px solid #e6eef9;box-shadow:-8px 3px 0 -2px #fbfdff,-10px 3px 0 -1px #e8f0fa,0 5px 15px #27699d10;border-radius:13px;padding:22px;color:#7386ac;overflow:hidden}
.review-face:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(148deg,transparent 10%,#f3f9ff 10% 22%,transparent 22% 70%,#f5faff 70%);opacity:.85}
.review-face strong{font-size:18px;line-height:1.4;letter-spacing:-.6px}.review-face small{font-size:12px}
.review-face img{width:33px;height:46px}
.carousel-dots{display:flex;justify-content:center;gap:8px;margin-top:8px}
.carousel-dots button{width:9px;height:9px;padding:0;border-radius:50%;background:#cfddf1}.carousel-dots button.active{background:var(--blue)}
.review-schedule{display:flex;flex-direction:column;gap:7px}
.review-schedule-item.card{display:flex;align-items:center;gap:12px;margin:0;padding:10px;border:0;border-radius:14px;min-height:61px}
.review-schedule-item>.subject-tile{width:40px;height:40px;border-radius:12px}
.review-schedule-item h3{font-size:14px;font-weight:700;line-height:1.35;letter-spacing:-.5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.review-schedule-item .chip{font-size:10px;padding:2px 7px;line-height:1.4;margin-top:3px}
.review-due{display:flex;align-items:center;gap:4px;font-size:11px;color:#f2941b;white-space:nowrap;flex-shrink:0}
.review-schedule-item .button{min-height:31px;padding:4px 12px;border:1px solid #3987ff;border-radius:9px;font-size:14px;background:white;flex-shrink:0}
.completed-review-list>.card{margin-top:12px}.completed-review-list .subject-tile{width:44px;height:44px}
.route-login{padding:0 28px 22px;position:relative;isolation:isolate;overflow:hidden}
.route-login:before,.route-onboarding:before{content:"";z-index:-1;position:absolute;left:-120px;top:70px;width:190px;height:480px;border-radius:55% 45% 50% 30%;background:linear-gradient(150deg,#e8f5ff70,#f2f9ff30);transform:rotate(32deg);box-shadow:470px -70px 0 10px #e9f5ff60,230px 670px 0 -20px #eef8ff}
.route-login:before{left:0;top:51.5px;width:30.63%;height:auto;aspect-ratio:261/380;background:url('../assets/layerlab/01-login/background-left.png') 0 0/100% 100%;border-radius:0;transform:none;box-shadow:none;mix-blend-mode:multiply}
.route-login:after{content:"";position:absolute;z-index:-1;right:0;top:52.5px;width:32.51%;aspect-ratio:277/205;background:url('../assets/layerlab/01-login/background-right.png') 0 0/100% 100%;mix-blend-mode:multiply}
.precise-login{position:relative;padding-top:45px}
.bug-report{position:absolute;top:21px;right:-8px;padding:6px 10px;border:1px solid #ffd0d6;box-shadow:0 5px 12px #4646aa0c;background:white;color:#ff2538;font-size:12px;border-radius:9px;line-height:1.3;font-weight:680}
.bug-report{display:flex;align-items:center;gap:5px}
.login-brand{text-align:center}
.login-brand>.reference-art{width:71px;height:95px;display:block;margin:0 auto 10px}
.login-brand h1{font-size:26px;font-weight:780;letter-spacing:-1.4px;line-height:1.5}
.login-intro{text-align:center;margin-top:11px}
.login-intro>p{font-size:29px;color:#58627d;line-height:1.35;letter-spacing:-1px;font-weight:500}
.login-intro h2{font-size:32px;font-weight:790;letter-spacing:-1.5px;line-height:1.38;white-space:nowrap}
.login-intro small{display:block;font-size:16px;color:#8a93ac;line-height:1.4;letter-spacing:-.5px;margin-top:12px}
.login-character{position:relative;height:188px;margin-top:5px;display:flex;align-items:flex-end;justify-content:center}
.login-character>.reference-art{width:149px;height:195px}
.login-speech{position:absolute;top:10px;right:1px;padding:12px 15px;background:#fff;border:1px solid #e8f0fa;box-shadow:0 5px 22px #2267ce08;border-radius:18px;color:#1074ff;line-height:1.5;font-size:16px;font-weight:690;letter-spacing:-.5px}
.login-speech:after{content:"";position:absolute;bottom:-15px;left:12px;border-width:17px 17px 0 0;border-style:solid;border-color:#fff transparent transparent transparent;transform:skew(-7deg)}
.login-role-tabs{margin-bottom:12px;border-radius:14px}
.login-role-tabs button{height:39px;font-size:17px}
.login-role-tabs button.active{color:var(--ink);background:#fff;box-shadow:0 3px 8px #48668715}
.precise-login-form{display:flex;flex-direction:column;gap:10px}
.login-input{display:flex;align-items:center;gap:14px;border:1px solid #dfe2eb;background:#fff;border-radius:12px;min-height:46px;padding:10px 16px;color:#a7b0c3}
.login-input input{border:0;background:none;outline:none;width:100%;min-width:0;color:var(--ink);font-size:15px}
.login-input input::placeholder{color:#a9b0c3}
.login-input>svg{flex-shrink:0;width:21px;height:21px}
.password-view{color:#a3aec4;padding:0;display:grid;place-items:center;flex-shrink:0}
.login-submit.button{min-height:49px;font-size:21px;letter-spacing:1px;box-shadow:0 7px 20px #1780ff25}
.login-social-caption{display:flex;align-items:center;gap:14px;margin:14px 3px 13px;color:#9ca6bd;font-size:13px}
.login-social-caption:before,.login-social-caption:after{content:"";height:1px;flex:1;background:#d7dfeb}
.login-socials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.login-socials button{display:flex;align-items:center;justify-content:center;gap:8px;height:46px;border-radius:11px;font-size:15px;font-weight:600;opacity:1;cursor:default;white-space:nowrap}
.login-socials b{font-size:22px;line-height:1}
.login-socials .reference-art{width:23px;height:24px}
.login-socials .reference-art{mix-blend-mode:normal}
.route-login:before,.route-onboarding:before{mask-image:linear-gradient(90deg,#000 75%,transparent),linear-gradient(0deg,transparent,#000 12%,#000 91%,transparent);mask-composite:intersect}
.route-login:after,.route-onboarding:after{mask-image:linear-gradient(90deg,transparent,#000 20%),linear-gradient(0deg,transparent,#000 15%,#000 82%,transparent);mask-composite:intersect}
.social-google{background:white;border:1px solid #d5dce9;color:#596075}.social-google b{color:#4285f4;font-family:Arial,sans-serif}
.social-naver{background:#00c65a;color:white}.social-naver b{display:inline-flex;justify-content:center;align-items:center;width:20px;height:21px;border-radius:4px;background:white;color:#05c75b;font-size:16px;font-weight:900}
.social-kakao{background:#ffe200;color:#0b0b05}
.login-secure{display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;color:#98a3bb;margin-top:12px}
.login-join{text-align:center;font-size:14px;color:#9aa3b8;margin-top:9px;white-space:nowrap}.login-join button{color:#1680ff;font-size:14px;font-weight:700;padding:0 0 0 4px}
.route-onboarding{position:relative;isolation:isolate;padding:10px 24px 20px;overflow:hidden}
.route-onboarding:before{left:0;top:113px;width:23.38%;height:auto;aspect-ratio:199/327;background:url('../assets/layerlab/02-onboarding/background-left.png') 0 0/100% 100%;border-radius:0;transform:none;box-shadow:none;mix-blend-mode:multiply}
.route-onboarding:after{content:"";position:absolute;z-index:-1;right:0;top:39.5px;width:27.73%;aspect-ratio:236/324;background:url('../assets/layerlab/02-onboarding/background-right.png') 0 0/100% 100%;mix-blend-mode:multiply}
.onboarding-top{display:flex;align-items:center;justify-content:space-between;margin:0 -7px 6px}.onboarding-top>button:last-child{font-size:15px;color:#8490ad;font-weight:650}
.onboarding-progress{display:flex;align-items:center;gap:13px;margin:0 0 19px}
.onboarding-progress>span{display:block;height:12px;width:106px;background:#e4eefc;border-radius:8px;overflow:hidden}
.onboarding-progress i{display:block;background:#1179ff;height:100%;min-width:12px;border-radius:8px}
.onboarding-progress b{font-size:16px;color:#919cb5;font-weight:550}
.onboarding-brand{text-align:center;margin-bottom:31px}
.onboarding-brand img{width:56px;height:70px;margin-bottom:15px}
.onboarding-brand h1{font-size:30px;font-weight:770;letter-spacing:-1.2px;line-height:1.3}
.onboarding-brand p{font-size:16px;color:#7d8baa;line-height:1.5;letter-spacing:-.5px;margin-top:14px;white-space:nowrap}
.onboarding-grades h2{font-size:18px;font-weight:750;margin-bottom:9px}
.onboarding-grades .grade-grid{gap:8px;margin:0 0 20px}
.onboarding-grades .grade-grid button{min-height:51px;padding:10px 5px;border:1px solid #d3deee;background:#ffffff8c;border-radius:10px;font-size:19px;color:#627293;font-weight:620}
.onboarding-grades .grade-grid button.active{color:#1674ff;background:#e9f2ff;box-shadow:inset 0 0 0 .5px #177bff;border-color:#177bff}
.onboarding-school{display:block;margin-top:29px}
.onboarding-school>strong{display:block;font-size:18px;font-weight:750;margin-bottom:13px}.onboarding-school strong small{font-size:11px;color:#9aa7bb;font-weight:500}
.onboarding-school>span{display:flex;align-items:center;gap:14px;min-height:49px;border:1px solid #d6dfec;border-radius:12px;background:white;padding:10px 15px;color:#8592ac}
.onboarding-school input{font-size:16px;outline:none;background:none;border:0;color:var(--ink);width:100%;min-width:0}.onboarding-school input::placeholder{color:#a5b0c6}
.school-regions{background:#f5f9fd;border:1px solid #e2eaf6;border-radius:12px;margin-top:12px;padding:2px 8px}
.school-regions button{display:flex;align-items:center;justify-content:space-between;width:100%;text-align:left;border-bottom:1px solid #e5edf8;padding:9px 11px;font-size:16px;color:#576b8e;line-height:1.3}.school-regions button:last-child{border:0}.school-regions button.active{color:var(--blue);font-weight:700}
.onboarding-next.button{min-height:48px;font-size:20px;margin-top:12px;box-shadow:none;border-radius:11px}
.onboarding-subjects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:40px}.onboarding-subjects button{display:flex;flex-direction:column;align-items:center;gap:10px;padding:16px 4px;border:1px solid #e0eafb;border-radius:15px;background:white;font-weight:700}.onboarding-subjects button.active{border-color:var(--blue);color:var(--blue)}.onboarding-subjects img{width:50px;height:50px}
.onboarding-confirm{padding:20px;margin:30px 0 130px}.onboarding-confirm p{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line);color:#8391ad}.onboarding-confirm strong{color:var(--ink)}
@media(max-width:390px){.home-welcome h2{font-size:21px}.home-welcome p{font-size:21px}.home-subject span{font-size:15px}.home-subject{min-height:96px}.recent-note time{font-size:9px}.today-duration strong{font-size:36px}.today-duration{font-size:20px}.today-link{font-size:17px}.today-card .design-ring{width:78px}.today-card{padding-left:13px;padding-right:13px}.home-subject img{width:48px;height:47px}.login-intro h2{font-size:28px}.login-intro small{font-size:14px}.login-speech{font-size:14px;padding:10px 12px;right:-3px}.login-input{gap:9px;padding-left:12px;padding-right:12px}.login-input input{font-size:13px}.login-socials button{font-size:13px;gap:5px}.login-join{font-size:12px}.login-join button{font-size:13px}.onboarding-brand h1{font-size:27px}.onboarding-brand p{font-size:14px}.review-summary{gap:10px!important}.review-summary .design-ring{width:74px}.review-summary h2{font-size:14px}.review-summary p{font-size:13px}.review-summary>.reference-art{width:73px;height:100px}.note-record-top{gap:8px}.note-mastery{padding:4px;font-size:9px}.note-record-top strong{font-size:13px}.note-subject-label{width:49px;font-size:11px}.journey-card{gap:9px;padding-right:9px}.journey-copy strong{font-size:15px}.journey-copy small{font-size:11px}.course-summary{gap:10px!important}.course-summary h2{font-size:19px}.course-summary>.reference-art{width:44px;height:44px}.course-progress .design-ring{width:59px}.review-schedule-item{gap:8px!important}.review-schedule-item h3{font-size:12px}.review-due{font-size:9px}}
