body{background:#fbfdff;font-size:18px;line-height:1.6}.app-header{display:flex;justify-content:space-between;height:82px;gap:24px}.app-header .logo{font-size:26px}.main-nav{gap:12px}.nav-link{display:flex;align-items:center}.page{max-width:1340px;margin:auto;padding:44px 40px 70px}.page h2{font-size:27px;line-height:1.3}.page h3{font-size:23px}.h1{font-size:clamp(32px,3.7vw,48px)}.dashboard-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.welcome-art{display:flex;align-items:center;background:#eff7ff;border-radius:22px;padding:10px 25px;color:#3166a5}.welcome-art img{width:125px;height:125px;object-fit:contain}.welcome-art p{font-size:21px;font-weight:700}.recommendation{padding:35px;display:flex;justify-content:space-between;align-items:center;gap:30px;background:linear-gradient(110deg,#fff,#f4f9ff);margin-bottom:34px}.recommendation h2{font-size:34px;margin:18px 0 10px}.recommendation p{margin:8px 0}.recommendation>div:last-child{display:flex;flex-direction:column;gap:12px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:30px 0 18px}.section-heading h2{margin:0}.section-heading span{color:#536b8c}.ability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.ability{padding:28px;background:#f4f9ff}.ability.build{background:#f1faf7}.ability.use{background:#f7f6ff}.ability img{width:56px;height:56px;object-fit:contain;float:left;margin-right:18px}.ability h3{margin:0 0 22px}.ability h3 small{font-size:18px;display:block}.ability p{margin:12px 0 0;color:#435d80}.progress-track{height:12px;background:#dfe7f1;border-radius:30px;overflow:hidden}.progress-track i{display:block;height:100%;background:#4787d2}.build .progress-track i{background:#58b49c}.use .progress-track i{background:#8a77d5}.course-panel{margin-top:35px;padding:26px 30px}.course-panel .section-heading{margin:0}.course-panel p{margin:8px 0}.table-wrap{overflow-x:auto;width:100%;margin:20px 0}table{border-collapse:collapse;width:100%;min-width:650px;text-align:left;background:white}th,td{padding:16px;border-bottom:1px solid #dde7f3;vertical-align:top}th{background:#eef5fc;font-size:16px}td{font-size:16px}tr:hover,tr:focus-within{background:#f4f9ff}.hover-detail{max-height:0;overflow:hidden;color:#476081;font-size:15px;transition:max-height .2s}tr:hover .hover-detail,tr:focus-within .hover-detail{max-height:180px;padding-top:10px}.state{display:inline-block;white-space:nowrap;padding:5px 10px;border-radius:8px;background:#edf2f9}.state.STABLE{background:#dff4eb;color:#246c51}.state.RECHECK{background:#fff1d8;color:#845614}.review-banner{padding:20px 26px;background:#eef8f3;border-radius:16px;display:flex;gap:20px;align-items:center;justify-content:space-between}.bottom-links{display:flex;gap:25px;justify-content:space-between;margin-top:28px;color:#3866a1}.focus-page{max-width:1040px}.session-status{color:#62748e;font-size:15px}.quit{border:1px solid #bed0e5;color:#244b78}.learning-crumb{display:flex;justify-content:space-between;color:#526986}.learning-steps{display:flex;gap:12px;margin:25px 0 32px}.learning-steps span{padding:7px 12px;border-radius:30px;background:#edf1f7;font-size:14px;color:#738197}.learning-steps .active{background:#deecfc;color:#275c9a}.exercise{padding:32px;margin-bottom:25px}.exercise .chunk-stack{gap:16px}.chunk-card{min-height:auto;padding:20px;gap:18px}.chunk-card .en{font-size:27px;line-height:1.45}.chunk-card .ko{font-size:19px;margin:10px 0}.chunk-card .round{width:42px;height:42px;font-size:23px}.chunk-content{min-width:0;flex:1}.chunk-content .btn{margin:8px 8px 0 0}.boundary-words{display:flex;flex-wrap:wrap;gap:5px 7px;align-items:center;font-size:27px;line-height:2.1;padding:20px 0}.gap{min-width:27px;min-height:42px;border:1px solid transparent;border-radius:8px;color:#9babc0;background:transparent}.gap:hover{background:#e6f2ff}.gap.chosen{color:#235e9f;border-color:#80acd9;background:#e7f3ff}.order-slot{min-height:110px;background:#f2f7ff;border:1px dashed #9ab9de;border-radius:15px;padding:20px;display:flex;gap:10px;align-items:flex-start;flex-wrap:wrap}.card-pool{display:flex;flex-wrap:wrap;gap:12px;margin:25px 0}.card-pool .btn{white-space:normal;text-align:left}.feedback{background:#fff3e5;padding:20px;border-radius:13px;margin-top:24px}.feedback.success{background:#eaf7ee}.feedback p{margin:8px 0}.optional{background:#f2f7fc;padding:20px;border-radius:16px;margin-top:25px}.drill-menu{display:flex;gap:10px;flex-wrap:wrap}label{display:block;margin:16px 0}input:not([type=checkbox]):not([type=radio]),select,textarea{border:1px solid #bfd0e5;border-radius:10px;padding:13px 15px;width:100%;background:#fff;color:#173454}textarea{resize:vertical;margin-top:8px;font-size:18px}input[type=checkbox],input[type=radio]{width:20px;height:20px;accent-color:#386eaf;flex-shrink:0}.consent,.choice{display:flex;gap:12px;align-items:flex-start;font-size:16px}.choice{border:1px solid #d9e4f2;border-radius:12px;padding:16px}.choice:has(input:checked){background:#e9f3ff;border-color:#8fb6e4}.settings-grid,.problem-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.matching label{display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:center}.matching .serif{font-size:23px}.problem-text{font-size:30px;line-height:1.7;background:#f1f7ff;padding:25px;border-radius:14px}.history-sentence{display:block;font-size:14px;color:#5b7191;margin-top:6px}.micro-row{padding:15px;border-bottom:1px solid #dfebf8;display:flex;gap:14px;align-items:center;flex-wrap:wrap}.micro{padding:8px 12px;background:#eef5fd;border-radius:10px}.micro small{display:block;color:#526786}details{border:1px solid #dce6f2;padding:15px;border-radius:12px;margin:16px 0}summary{cursor:pointer;font-weight:700;color:#295784}.alternative{background:#f4f1fb;padding:20px;border-radius:15px;margin:20px 0}.completion{text-align:center;padding:50px 35px}.completion p{margin:24px 0}.qa-grid{display:grid;gap:20px;margin-top:30px}.qa-grid h3{overflow-wrap:anywhere}#notice{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);max-width:90vw;background:#16335d;color:white;border-radius:12px;padding:16px 22px;opacity:0;pointer-events:none;z-index:100;font-size:17px;transition:opacity .2s}#notice.visible{opacity:1}.print-unit{background:white;margin:30px 0;padding:35px;border:1px solid #dbe5f1}.print-sentence{padding:25px 0;border-bottom:1px solid #dce7f2;break-inside:avoid}.print-sentence h2{font-size:23px}.print-actions{display:flex;gap:20px}[hidden]{display:none!important}#speed{width:105px;margin-left:12px}
@media(max-width:900px){.app-header{padding:12px 20px;height:auto;flex-wrap:wrap}.main-nav{order:3;width:100%;height:48px;justify-content:center}.app-header .logo{font-size:23px}.page{padding:28px 20px}.welcome-art{display:none}.recommendation{padding:25px;display:block}.recommendation>div:last-child{margin-top:25px;align-items:flex-start}.ability-grid{gap:12px}.ability{padding:20px}.ability img{float:none}.ability h3{font-size:22px}.settings-grid,.problem-grid{grid-template-columns:1fr}.session-status{display:none}.review-banner{flex-wrap:wrap}.chunk-card .en{font-size:24px}.learning-steps{gap:5px}.learning-steps span{font-size:12px;padding:5px 8px}.exercise{padding:22px}.section-heading{flex-wrap:wrap}.bottom-links{flex-wrap:wrap}.course-panel{padding:20px}.boundary-words{font-size:24px}.matching label{grid-template-columns:1fr;gap:5px}}
@media(max-width:550px){.page{padding:25px 16px}.h1{font-size:33px;letter-spacing:-1px}.recommendation h2{font-size:28px}.ability-grid{grid-template-columns:1fr}.ability{display:grid;grid-template-columns:55px 1fr;column-gap:20px}.ability img{grid-row:1/3;margin:0}.ability h3{margin:0 0 14px}.ability .progress-track,.ability p{grid-column:2}.card-pad{padding:24px}.btn{white-space:normal;font-size:17px}.btn.big{font-size:19px}.learning-steps span{font-size:11px}.chunk-card{padding:16px;gap:10px}.chunk-card .round{width:32px;height:32px;font-size:18px}.chunk-card .en{font-size:22px}.chunk-card .ko{font-size:18px}.boundary-words{font-size:23px;gap:4px}.action-row .btn{flex:1}.app-header .logo{font-size:21px}.main-nav .nav-link{font-size:15px}.bottom-links{font-size:16px}.course-panel .section-heading .btn{width:100%}}
@media print{.app-header,.print-actions,#notice{display:none}.page{max-width:none;padding:0}.print-unit{border:0;padding:0;page-break-before:always}.print-sentence{page-break-inside:avoid}.print-sentence a{font-size:12px}body{background:white;font-size:12pt}}

.dictation-row{display:grid;grid-template-columns:90px 130px 1fr;align-items:center;gap:12px;margin:14px 0}.dictation-input{width:100%;min-height:46px;border:1px solid #b9cbe0;border-radius:8px;padding:10px}.card-correct{border-color:#72b79e;background:#eef9f3}.card-recheck{border-color:#ddae67;background:#fff8e9}@media(max-width:640px){.dictation-row{grid-template-columns:1fr 1fr}.dictation-input{grid-column:1/-1}}
@media(max-width:980px){.main-nav{display:flex;position:static;flex-direction:row;box-shadow:none;border:0;padding:0;flex-wrap:wrap;justify-content:center;width:100%;height:auto}.main-nav .nav-link{padding:8px 5px;font-size:15px}.app-header{height:auto;min-height:70px;flex-wrap:wrap}.app-header .main-nav{order:3}.learning-steps{overflow-x:auto}.learning-steps span{flex-shrink:0}}
@media(max-width:550px){.action-row{flex-wrap:wrap;gap:10px}.action-row>.btn{flex:1 1 140px;min-width:130px;word-break:keep-all}.action-row #speed{flex:0 0 110px;margin-left:0}.learning-steps span{font-size:12px}.session-status{display:block;order:3;width:100%;text-align:center;font-size:12px}}
