@font-face{font-family:SUIT;src:url('assets/SUIT-Variable.woff2') format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:SUITE;src:url('assets/SUITE-Variable.woff2') format('woff2');font-weight:300 900;font-display:swap}
@font-face{font-family:Pretendard;src:url('assets/PretendardVariable.woff2') format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:Wanted;src:url('assets/WantedSansVariable.woff2') format('woff2');font-weight:100 1000;font-display:swap}
@font-face{font-family:GowunDodum;src:url('assets/GowunDodum-Regular.woff2') format('woff2');font-display:swap}
@font-face{font-family:GowunBatang;src:url('assets/GowunBatang-Regular.woff2') format('woff2');font-display:swap}
:root{--bg:#f7f6f0;--paper:#fffefa;--ink:#2c4138;--muted:#5b695f;--pine:#315548;--sage:#e8ede3;--line:#e0e4d9;--lime:#dbe7af;--peach:#f3d7c3;--body:SUIT;--heading:SUITE;--read-size:17px;--shadow:0 14px 40px #223c2d08}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.7 var(--body),-apple-system,BlinkMacSystemFont,sans-serif;word-break:keep-all;overflow-wrap:anywhere}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.5;cursor:default}a{color:inherit;text-decoration:none}a:hover{color:var(--pine)}button{border:0}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #b37839;outline-offset:4px}h1,h2,h3,h4{font-family:var(--heading),sans-serif;line-height:1.35;letter-spacing:-.04em;margin:0;font-weight:750}h1{font-size:38px}h2{font-size:24px}h3{font-size:20px}p{margin:0 0 16px}small,.small{font-size:13px}.muted{color:var(--muted)}.eyebrow{font-size:11px;letter-spacing:.15em;text-transform:uppercase;font-weight:700;color:var(--pine);margin-bottom:14px}.sidebar{width:242px;background:#e9ede4;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;padding:34px 22px;z-index:20;border-right:1px solid #dde3d6}.brand{display:flex;align-items:center;gap:11px;font-family:SUITE,sans-serif;font-size:23px;font-weight:800;line-height:1.25;letter-spacing:-.05em}.brand-icon{display:grid;place-items:center;width:39px;height:43px;border-radius:14px;background:var(--pine);color:#e7edca;font-size:30px}.brand-sub{display:block;font:8px/1.7 SUIT,sans-serif;letter-spacing:.14em;margin-top:6px}.side-label{font-size:11px;color:#555e53;margin:48px 14px 13px}nav{display:grid;gap:5px}.nav-item{display:flex;gap:14px;align-items:center;font-size:14px;padding:13px 16px;border-radius:11px;color:#515e54;font-weight:550}.nav-item svg{width:19px;height:19px;stroke-width:1.6;flex:none}.nav-item.active{background:var(--pine);color:var(--paper);box-shadow:0 4px 8px #31554815}.nav-item:hover:not(.active){background:#dfe6d7}.nav-count{margin-left:auto;font-size:10px;opacity:.7}.side-bottom{margin-top:auto;padding:26px 13px 0;font-size:13px}.tiny-sprout{font-size:32px;color:#545f46}.side-bottom strong{font-family:SUITE,sans-serif;font-size:15px}.side-bottom p{font-size:12px;color:#555d56;margin:9px 0 20px;line-height:1.8}.text-btn{padding:0;background:none;color:var(--pine);font-size:13px;font-weight:650}.text-btn span{margin-left:14px}.workspace{margin-left:242px}.topbar{height:87px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 45px;gap:12px}.breadcrumb{font-size:13px;color:#555e54}.top-actions{display:flex;align-items:center;gap:18px}.search-trigger{display:flex;align-items:center;gap:12px;background:transparent;color:#565d54;font-size:13px}.search-trigger>span{margin-right:30px}kbd{font:11px SUIT;border:1px solid var(--line);padding:0 6px;border-radius:4px}.icon-btn{background:none;font-weight:650;font-size:18px;min-width:40px;min-height:40px;position:relative}.font-dot{position:absolute;font-size:11px;right:0;top:0;color:#6d5838}.menu-btn{display:none}main{max-width:1280px;margin:auto;padding:42px 45px 64px;min-height:calc(100vh - 160px)}main:focus{outline:none}footer{max-width:1190px;margin:0 auto;padding:24px 0 28px;border-top:1px solid var(--line);color:#575d55;font-size:11px;display:flex;justify-content:space-between;gap:16px}footer span{font-size:10px;letter-spacing:.04em}.greeting{display:flex;justify-content:space-between;align-items:end;margin-bottom:25px}.greeting h1{font-size:26px}.greeting p{font-size:13px;color:var(--muted);margin:5px 0 0}.date-chip{font-size:11px;letter-spacing:.08em;color:#565d54}.hero{min-height:291px;display:grid;grid-template-columns:1.2fr 1fr;background:#e8eddf;border-radius:23px;position:relative;overflow:hidden;padding:35px 37px;margin-bottom:25px}.hero h2{font-size:39px;line-height:1.4;font-weight:700;margin-bottom:15px}.hero h2 em{font-family:GowunBatang,serif;font-weight:400;font-style:normal}.hero p{color:#545e4f;font-size:14px;line-height:1.8;max-width:350px}.hero .eyebrow{font-size:10px;color:#545f4a;letter-spacing:.14em;margin-bottom:15px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:45px;border-radius:10px;background:var(--pine);color:white;padding:10px 20px;font-size:13px;font-weight:650;transition:transform .15s,background .15s}.btn:hover{background:#244638;color:white;transform:translateY(-1px)}.btn.light{background:var(--paper);color:var(--pine);border:1px solid var(--line)}.btn.soft{background:var(--sage);color:var(--pine)}.btn.tiny{min-height:36px;padding:6px 13px;font-size:12px;gap:10px}.hero-art{position:relative;align-self:center;justify-self:center;width:100%;max-width:350px}.hero-art svg{width:100%;height:auto;overflow:visible}.hero-art .caption{text-align:center;font:15px GowunDodum;margin-top:-15px;color:#555e48;transform:rotate(-4deg)}.stats-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding:22px 26px;background:var(--paper);border:1px solid var(--line);border-radius:16px;margin-bottom:32px}.stat{display:flex;align-items:center;gap:17px;padding:0 22px;border-right:1px solid var(--line)}.stat:first-child{padding-left:0}.stat:last-child{border:0}.stat-symbol{width:41px;height:41px;border-radius:12px;background:#f0f1e7;display:grid;place-items:center;color:#565f3f;font-size:20px}.stat-symbol.peach{background:#faede0;color:#705640}.stat-symbol.lilac{background:#eeeaf0;color:#625867}.stat strong{font:700 25px SUITE;letter-spacing:-.05em}.stat strong span{font:12px SUIT;color:#585d53;margin-left:3px}.stat small{display:block;color:#565d53;font-size:11px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px}.section-head h2{font-size:20px}.section-head small{color:var(--muted)}.home-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(230px,1fr);gap:24px}.lesson-preview{background:var(--paper);padding:26px;border:1px solid var(--line);border-radius:17px;display:grid;grid-template-columns:1fr auto;gap:20px;position:relative}.number-tag{font-size:10px;letter-spacing:.12em;color:#555f48;margin-bottom:12px}.lesson-preview h3{font-size:23px}.lesson-preview p{color:var(--muted);font-size:13px;margin:10px 0 20px;max-width:410px}.mini-art{width:105px;align-self:center}.meter{height:5px;background:#e8ebdf;border-radius:20px;overflow:hidden}.meter span{display:block;height:100%;background:#849b6a;transition:width .4s}.lesson-preview .meter{margin:24px 0 8px}.hint-card{background:#f1e9de;border-radius:17px;padding:25px 24px;position:relative}.hint-card .eyebrow{color:#695943;font-size:10px}.hint-card h3{font-size:20px;margin-bottom:12px}.hint-card p{font-size:13px;color:#655a4c;line-height:1.9}.hint-card .doodle{position:absolute;right:20px;bottom:13px;font-family:GowunDodum;font-size:34px;color:#645a4b;transform:rotate(12deg)}.quick-links{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:25px}.quick-link{display:flex;align-items:center;gap:14px;padding:21px 18px;background:var(--paper);border:1px solid var(--line);border-radius:13px}.quick-link .quick-symbol{font-size:21px;color:#545f4a}.quick-link strong{font-size:13px}.quick-link small{display:block;font-size:10px;color:var(--muted);margin-top:3px}.quick-link>span:last-child{margin-left:auto;color:#565e4e}.page-intro{margin-bottom:30px}.page-intro h1{margin-bottom:10px}.page-intro p{color:var(--muted);max-width:750px;font-size:15px}.pill{display:inline-block;background:var(--sage);padding:3px 10px;border-radius:20px;font-size:11px;font-weight:650;color:#4e6048}.pill.peach{background:#f5e4d6;color:#795337}.pill.lilac{background:#eee9f1;color:#67556c}.card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:27px;box-shadow:var(--shadow)}.card p:last-child{margin-bottom:0}.section{margin-top:28px}.lesson-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.lesson-card{display:flex;gap:20px;padding:24px;border:1px solid var(--line);background:var(--paper);border-radius:16px;transition:transform .15s,box-shadow .15s}.lesson-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.lesson-no{font:600 30px SUITE;color:#545f48;line-height:1.2}.lesson-card h2{font-size:18px}.lesson-card p{font-size:13px;color:var(--muted);margin:9px 0 14px}.lesson-card .meta{font-size:11px;color:#575d50;display:flex;gap:12px}.lesson-card.done{background:#f0f4e8}.lesson-layout{display:grid;grid-template-columns:minmax(0,1fr) 215px;gap:29px}.lesson-content{font-size:var(--read-size)}.lesson-content h2{font-size:24px;margin:0 0 16px}.lesson-content h3{font-size:20px;margin:0 0 11px}.concept{margin-bottom:18px;padding:25px;background:var(--paper);border-radius:15px;border:1px solid var(--line)}.concept p{line-height:1.95;color:#4f5e52}.callout{padding:23px 25px;background:#ecf0e3;border-radius:14px;border-left:3px solid #97a978;line-height:1.9;margin:22px 0}.callout.peach{background:#f8ecdf;border-color:#ceab86}.callout strong{display:block;margin-bottom:6px;font-size:14px}.step-list{list-style:none;padding:0;counter-reset:steps;display:grid;gap:15px}.step-list li{counter-increment:steps;display:grid;grid-template-columns:30px 1fr;gap:15px;line-height:1.9;padding:18px 20px;border:1px solid var(--line);background:var(--paper);border-radius:12px}.step-list li:before{content:counter(steps);display:grid;place-items:center;height:28px;width:28px;font-size:13px;background:var(--sage);border-radius:50%;margin-top:3px}.lesson-aside{font-size:12px;align-self:start;position:sticky;top:24px}.lesson-aside a{display:flex;gap:10px;padding:9px 12px;border-radius:8px;margin-bottom:3px;color:#525f4d}.lesson-aside a.current{background:#e6ecdd;color:var(--pine);font-weight:650}.lesson-aside .aside-title{font-size:10px;letter-spacing:.1em;margin-bottom:13px;color:#565e4e}.tabs{display:flex;gap:6px;padding:5px;background:#e9ede3;border-radius:11px;width:fit-content;margin:0 0 25px}.tab{background:transparent;font-size:13px;padding:9px 20px;border-radius:8px;color:#555e51}.tab.active{background:var(--paper);color:var(--pine);box-shadow:0 2px 5px #263c2510;font-weight:650}.back-link{display:inline-flex;gap:10px;font-size:12px;color:#555e4f;margin-bottom:23px}.ref-links{font-size:12px;display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.ref-links a{color:#476240;text-decoration:underline;text-underline-offset:3px}.answer{padding:20px;margin-top:15px;background:#edf3e5;border-radius:12px}.answer[hidden]{display:none}.self-note{width:100%;min-height:130px;resize:vertical;padding:17px;border:1px solid #d8dfce;background:var(--paper);border-radius:12px;font-size:15px;line-height:1.8}.lesson-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:28px}.search-box{width:100%;padding:13px 17px;border:1px solid #d7dfcd;border-radius:12px;background:var(--paper);font-size:15px}.filter-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:18px 0 24px}.chip{padding:7px 13px;border-radius:20px;background:var(--paper);border:1px solid var(--line);font-size:12px}.chip.active{background:var(--pine);color:white;border-color:var(--pine)}.glossary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.term-card{padding:25px;background:var(--paper);border:1px solid var(--line);border-radius:15px}.term-card h2{font-size:20px;margin:8px 0 0}.term-card .en{font-size:11px;color:#555e4b;margin:3px 0 13px;letter-spacing:.03em}.term-card p{font-size:var(--read-size);line-height:1.9;color:#525e53}.term-card .pill{font-size:10px}.empty{text-align:center;padding:50px;color:var(--muted)}.practice-layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:24px}.query-nav{display:grid;gap:4px;align-content:start;max-height:75vh;overflow:auto;padding-right:5px;position:sticky;top:20px}.query-link{padding:10px 12px;font-size:12px;display:flex;gap:12px;align-items:center;border-radius:8px;background:transparent;text-align:left}.query-link span{font-size:10px;color:#575d4d;min-width:17px}.query-link.active{background:var(--pine);color:white}.query-link.active span{color:#c9d7b3}.code-block{position:relative;background:#2c4138;color:#e8efd9;padding:24px;border-radius:14px;font:14px/1.9 ui-monospace,SFMono-Regular,monospace;overflow:auto;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;margin:20px 0}.code-block code{font:inherit}.code-copy{position:absolute;top:7px;right:9px;background:#ffffff13;color:#dce8d2;font:10px SUIT;padding:5px 9px;border-radius:6px}.field-label{display:block;font-size:13px;font-weight:650;margin:20px 0 8px}.input{padding:11px 13px;border:1px solid var(--line);border-radius:9px;background:white;width:100%;font-size:14px}.grade{font-size:14px;border-radius:10px;padding:15px;margin-top:16px;background:#eaf1df}.grade.wrong{background:#fae8d9}.result-keys{display:flex;gap:7px;flex-wrap:wrap;margin:15px 0}.key-btn{background:#eff2e8;border-radius:6px;padding:4px 9px;font:11px ui-monospace,monospace;color:#4c6b43}.toolbar{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center;margin:20px 0}.toolbar p{margin:0;font-size:12px;color:var(--muted)}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:13px;background:var(--paper)}table{border-collapse:collapse;width:100%;font-size:13px;text-align:left;white-space:nowrap}th{background:#edf0e6;color:#535f4b;font-size:11px;letter-spacing:.03em;font-weight:600}th,td{padding:14px 16px;border-bottom:1px solid #e8ecdf}tr:last-child td{border:0}td.title-cell{white-space:normal;min-width:200px}td button{background:none;color:#476e4b;padding:0;font:11px ui-monospace,monospace}.status{display:inline-block;border-radius:5px;padding:2px 8px;font-size:10px;background:#edeedf;color:#5a5e3e}.status.progress{background:#e5eaf0;color:#485d74}.status.done{background:#e3eedb;color:#4a6234}.charts-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:22px}.chart-card h2{font-size:20px;margin-bottom:6px}.chart-card .sub{font-size:12px;color:#555e4f;margin-bottom:20px}.donut-wrap{display:flex;align-items:center;justify-content:space-around;gap:18px;flex-wrap:wrap}.donut{width:200px;height:200px;border-radius:50%;position:relative;flex:none;display:grid;place-items:center}.donut:before{content:'';position:absolute;inset:25px;background:var(--paper);border-radius:50%}.donut-label{z-index:1;text-align:center;line-height:1.2}.donut-label strong{font:750 45px SUITE}.donut-label small{display:block;color:#575d4e;font-size:10px;margin-top:8px}.legend{display:grid;gap:13px;flex:1;min-width:130px}.legend button{background:none;display:flex;align-items:center;gap:9px;font-size:12px;padding:0;text-align:left}.legend button strong{margin-left:auto;font-family:SUITE}.dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex:none}.bars{display:grid;gap:19px;margin:27px 0}.bar-row{display:grid;grid-template-columns:82px 1fr 22px;gap:12px;align-items:center;font-size:12px}.bar-track{height:14px;background:#f0f1e8;border-radius:4px;overflow:hidden}.bar-fill{height:100%;border-radius:4px;background:#97aa79;min-width:0;transition:width .4s}.chart-detail{padding:14px;background:#f0f3e8;border-radius:10px;margin-top:20px;min-height:80px;font-size:13px}.chart-detail p{margin-bottom:7px}.workflow{display:flex;gap:18px;align-items:stretch;margin:25px 0}.workflow button{position:relative;flex:1;border:1px solid #dbe2d2;border-radius:13px;padding:23px 15px;background:#eef1e6;text-align:left;min-width:0}.workflow button:not(:last-child):after{content:'→';position:absolute;right:-16px;top:39%;font-size:16px;color:#575d4e}.workflow button.active{background:var(--pine);color:#fff}.workflow small{font-size:9px;letter-spacing:.1em;display:block;opacity:.65}.workflow strong{font-family:SUITE;font-size:19px;display:block;margin-top:10px}.workflow .flow-count{display:block;margin-top:16px;font:28px SUITE}.diagram-caption{font-size:12px;color:#555e4d}.compare-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.compare{padding:21px;background:#f1f3e9;border-radius:12px}.compare strong{font:650 30px SUITE}.compare p{font-size:13px;margin:8px 0 0}.segmented{display:flex;height:38px;border-radius:8px;overflow:hidden;margin:15px 0}.segment{display:grid;place-items:center;font-size:11px;min-width:0;background:#95aa73;color:white}.segment:nth-child(2){background:#c0cbaa;color:#455539}.segment:nth-child(3){background:#e2e7d8;color:#535f49}.tree{display:grid;grid-template-columns:1fr 1fr;gap:23px;margin-top:25px}.tree-branch{padding:20px;border:1px solid var(--line);border-radius:13px;background:#f4f5ed}.tree-branch h3{font-size:16px}.tree-children{border-left:1px solid #c8d3bb;margin:15px 0 0 9px;padding-left:17px;display:grid;gap:7px}.tree-node{font-size:11px;padding:8px 10px;background:var(--paper);border-radius:7px;position:relative}.tree-node:before{content:'';position:absolute;left:-18px;top:50%;width:17px;border-top:1px solid #c8d3bb}.tree-node small{font-size:9px;color:#565e4b;margin-right:6px}.source-list{list-style:none;padding:0;margin:0}.source-list li{padding:15px 0;border-bottom:1px solid var(--line);display:flex;gap:15px;align-items:baseline;font-size:14px}.source-list span{font-size:10px;color:#565e4d;min-width:24px}.source-list a{flex:1}.source-list a:after{content:'↗';float:right;color:#565e4d}.settings-label{display:block;font-size:13px;font-weight:650;margin:22px 0 10px}.font-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.font-option{background:#f4f5ed;border:1px solid var(--line);border-radius:10px;padding:15px;text-align:left}.font-option.active{border:2px solid var(--pine);padding:14px;background:#e9efdf}.font-option strong{font-size:22px;font-weight:600;display:block;line-height:1.3}.font-option small{font-size:10px;color:#565e4c;display:block;margin-top:8px;font-family:SUIT}.range-row{display:flex;align-items:center;gap:15px}.range-row input{flex:1;accent-color:var(--pine)}dialog{width:min(640px,calc(100% - 30px));max-height:88vh;overflow:auto;border:1px solid #dbe2cf;border-radius:21px;padding:30px;background:var(--paper);color:var(--ink);box-shadow:0 25px 100px #15251835}dialog::backdrop{background:#20332266;backdrop-filter:blur(5px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px}.dialog-head h2{font-size:23px}.dialog-head button{background:var(--sage);width:34px;height:34px;border-radius:50%;font-size:19px}.search-results{margin-top:18px;display:grid;gap:8px;max-height:55vh;overflow:auto}.search-result{display:block;padding:14px 16px;background:#f1f4e9;border-radius:9px;font-size:14px}.search-result small{font-size:10px;color:#555e4b;display:block}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.detail-grid div{background:#f1f4e9;padding:13px;border-radius:9px;font-size:13px}.detail-grid small{display:block;font-size:10px;color:#545e4a;margin-bottom:4px}.detail-title{font-size:24px;margin-bottom:20px}.note{font-size:12px;color:#555e4d;line-height:1.8}.inline-actions{display:flex;gap:10px;flex-wrap:wrap;margin:17px 0}.check-option{display:flex;gap:10px;font-size:13px;align-items:center;margin:12px 0}.check-option input{accent-color:var(--pine)}#toast{position:fixed;bottom:25px;left:calc(50% + 120px);transform:translateX(-50%) translateY(30px);opacity:0;pointer-events:none;background:var(--pine);color:white;font-size:13px;padding:12px 22px;border-radius:30px;z-index:100;transition:.2s;max-width:90vw;text-align:center}#toast.show{transform:translateX(-50%);opacity:1}.skip{position:fixed;top:-100px;left:20px;z-index:200;background:var(--paper);padding:10px}.skip:focus{top:10px}.mobile-query-select{display:none}.board{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:20px}.board-column{background:#edf0e4;padding:13px;border-radius:13px}.board-column h3{font-size:13px;display:flex;justify-content:space-between;margin-bottom:14px}.board-task{background:var(--paper);padding:12px;border-radius:9px;margin-bottom:9px;display:block;width:100%;text-align:left;border:1px solid #e2e7d8;font-size:12px}.board-task small{font:9px ui-monospace;display:block;color:#565e4c;margin-bottom:5px}.board-task .status{margin-top:8px}.full{grid-column:1/-1}.completion{font-size:12px;color:#545f4a}.study-map{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:20px 0}.map-step{background:#eef2e5;border-radius:12px;padding:18px 12px;font-size:11px;position:relative;text-align:center}.map-step:not(:last-child):after{content:'→';position:absolute;right:-9px;top:40%;color:#555e4c}.map-step strong{display:block;font-size:14px;margin:6px 0}.map-step small{font-size:10px;color:#555e4e}.progress-ring{display:inline-grid;place-items:center;width:55px;height:55px;background:conic-gradient(#869d6a var(--p),#e5eadc 0);border-radius:50%;position:relative}.progress-ring:before{content:'';position:absolute;inset:5px;background:var(--paper);border-radius:50%}.progress-ring span{z-index:1;font-size:12px;font-weight:650}.focus-box{display:flex;gap:20px;align-items:center;padding:20px;border-radius:15px;background:var(--paper);border:1px solid var(--line);margin-bottom:25px}.focus-box h3{font-size:16px}.focus-box p{font-size:12px;color:var(--muted);margin:3px 0 0}.disclosure{border-top:1px solid var(--line);padding:16px 0;font-size:14px}.disclosure summary{cursor:pointer;font-weight:650;line-height:1.7}.disclosure p{color:#525f4b;margin-top:12px;font-size:14px;line-height:1.9}.donut-button{border:0;background:none;padding:0;text-align:left}.diagram-note{padding:12px 0 0;font-size:11px;color:#555e4c}.chart-key-row{min-height:35px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.saved-status{font-size:11px;color:#545f47}.cert-track{display:flex;gap:15px;align-items:start}.cert-track .lesson-no{font-size:20px}.cert-track p{font-size:14px;margin:10px 0}.font-credit{font-size:11px;line-height:2}.font-credit a{text-decoration:underline;text-underline-offset:3px}
@media(min-width:1500px){main{padding-top:50px}.hero{min-height:320px}.hero h2{font-size:44px}}
@media(max-width:1150px){.sidebar{width:210px;padding:28px 15px}.workspace{margin-left:210px}.topbar{padding:0 28px}main{padding:30px 28px 50px}.hero{padding:28px}.hero h2{font-size:33px}.stat{padding:0 14px;gap:12px}.stat strong{font-size:22px}.home-grid{grid-template-columns:1.5fr 1fr}.lesson-layout{grid-template-columns:minmax(0,1fr) 180px;gap:20px}.lesson-card{padding:20px;gap:15px}.charts-grid{grid-template-columns:1fr 1fr}.donut{width:170px;height:170px}.hero-art{max-width:290px}footer{margin:0 28px}#toast{left:calc(50% + 105px)}}
@media(max-width:900px){.home-grid{grid-template-columns:1fr}.hint-card{display:none}.quick-links{gap:10px}.quick-link{padding:17px 12px;gap:8px}.lesson-layout{grid-template-columns:1fr}.lesson-aside{display:none}.charts-grid{grid-template-columns:1fr}.practice-layout{grid-template-columns:190px minmax(0,1fr);gap:16px}.hero{grid-template-columns:1.3fr .8fr}.hero h2{font-size:30px}.stat-symbol{display:none}.lesson-list{grid-template-columns:1fr}.greeting h1{font-size:23px}.glossary-grid{grid-template-columns:1fr}.tree{gap:13px}.study-map{grid-template-columns:repeat(5,1fr)}.map-step{padding:15px 7px}.map-step strong{font-size:12px}}
@media(max-width:700px){.sidebar{transform:translateX(-100%);transition:transform .2s;width:242px;box-shadow:30px 0 80px #1e331822}.sidebar.open{transform:translateX(0)}.workspace{margin-left:0}.topbar{height:67px;padding:0 20px;position:sticky;top:0;z-index:15;background:#f7f6f0f5;backdrop-filter:blur(10px)}.menu-btn{display:block;margin-left:-7px}.breadcrumb{margin-right:auto;font-size:12px}.top-actions{gap:10px}.search-trigger>span,.search-trigger kbd{display:none}.search-trigger{font-size:24px;padding:0 5px}.font-dot{right:2px}.icon-btn{min-width:34px}main{padding:28px 20px 45px}h1{font-size:29px}.page-intro p{font-size:14px}.greeting{margin-bottom:20px}.greeting h1{font-size:21px}.greeting p{font-size:12px}.date-chip{display:none}.hero{padding:27px 26px 15px;grid-template-columns:1fr;min-height:unset;border-radius:19px}.hero h2{font-size:33px;line-height:1.4}.hero p{font-size:13px;max-width:270px}.hero .btn{min-height:42px}.hero-art{max-width:220px;justify-self:end;margin-top:-24px;opacity:.95}.hero-art .caption{font-size:12px}.hero-art svg{height:170px}.hero-text{position:relative;z-index:1}.stats-strip{padding:19px 16px;margin-bottom:27px;gap:8px}.stat{padding:0 5px;display:block}.stat strong{font-size:25px}.stat strong span{font-size:10px}.stat small{font-size:10px;margin-top:4px}.section-head h2{font-size:19px}.section-head .text-btn{font-size:11px}.lesson-preview{padding:24px;gap:5px}.lesson-preview h3{font-size:21px}.lesson-preview p{font-size:12px}.mini-art{width:65px}.quick-links{grid-template-columns:1fr;margin-top:20px;gap:10px}.quick-link{padding:16px 18px;gap:15px}.quick-link small{font-size:11px}.quick-link strong{font-size:14px}.quick-link .quick-symbol{font-size:23px}.quick-link>span:last-child{font-size:14px}.lesson-card h2{font-size:18px}.lesson-card{padding:22px 19px}.lesson-no{font-size:27px}.lesson-content{font-size:var(--read-size)}.concept{padding:22px}.lesson-content h2{font-size:22px}.lesson-content h3{font-size:19px}.tabs{width:100%;display:grid;grid-template-columns:repeat(3,1fr)}.tab{padding:9px 6px}.step-list li{padding:17px 15px;grid-template-columns:25px 1fr;gap:12px}.callout{padding:20px}.lesson-footer{flex-wrap:wrap}.practice-layout{display:block}.query-nav{display:none}.mobile-query-select{display:block;width:100%;margin-bottom:20px}.card{padding:22px}.code-block{font-size:12px;padding:28px 18px 20px}.toolbar{align-items:flex-start}.tree{grid-template-columns:1fr}.workflow{gap:14px}.workflow button{padding:18px 11px}.workflow strong{font-size:15px}.workflow small{font-size:8px}.workflow .flow-count{font-size:24px}.workflow button:not(:last-child):after{right:-13px;font-size:13px}.compare-grid{gap:12px}.compare{padding:16px}.compare p{font-size:12px}.compare strong{font-size:27px}.board{gap:8px}.board-column{padding:9px}.board-column h3{font-size:11px}.board-task{padding:9px;font-size:10px}.board-task small{font-size:8px}.board-task .status{font-size:8px;padding:2px 4px}.study-map{grid-template-columns:1fr;gap:10px}.map-step{padding:13px;display:flex;gap:12px;align-items:center;text-align:left}.map-step strong{font-size:14px;margin:0}.map-step small{margin-left:auto}.map-step:not(:last-child):after{content:'↓';right:50%;top:auto;bottom:-13px;font-size:12px}.donut{width:175px;height:175px}.donut-wrap{gap:20px}.legend{min-width:110px}.donut-label strong{font-size:37px}.focus-box{padding:17px;gap:15px}.focus-box h3{font-size:14px}.focus-box p{font-size:11px}.progress-ring{width:47px;height:47px;flex:none}.dialog-head h2{font-size:21px}dialog{padding:24px 20px;border-radius:17px}.detail-grid{gap:10px}.font-option{padding:13px}.font-option.active{padding:12px}.font-option strong{font-size:21px}footer{margin:0 20px;font-size:10px;display:block;padding-top:20px}footer span{display:block;margin-top:6px;font-size:9px}#toast{left:50%;bottom:22px;min-width:220px}.source-list li{font-size:13px;gap:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.sidebar,.topbar,footer,.tabs,.lesson-aside,.inline-actions,.lesson-footer{display:none}.workspace{margin:0}main{padding:20px;max-width:none}.lesson-layout{display:block}body{background:white}.concept,.card{break-inside:avoid;box-shadow:none}dialog{display:none}.answer[hidden]{display:block}}

/* Fixed-example JQL diagrams. Text labels accompany every color state. */
.trace-disclosure{margin-top:25px;border-top:1px solid #cbd6bf;padding-top:18px}.trace-disclosure>summary{cursor:pointer;font-family:var(--heading),sans-serif;font-size:16px;font-weight:700;line-height:1.6}.trace-disclosure>summary>span{display:block;font-family:var(--body),sans-serif;font-size:11px;font-weight:400;color:#56684b;margin:5px 0 0 18px}.query-trace{padding-top:18px}.trace-intro{font-size:12px;line-height:1.9;color:#56684b;margin-bottom:18px}.trace-steps{display:grid;gap:7px}.trace-step{display:grid;grid-template-columns:24px minmax(0,1fr) 35px;gap:11px;align-items:center;text-align:left;background:#ffffff88;border:1px solid #d6dfcd;border-radius:10px;padding:13px 14px}.trace-step.selected{border-color:#627e4f;background:#fffefa;box-shadow:0 2px 6px #3155480a}.trace-index{font-size:10px;color:#56684b}.trace-step-label code{font:11px/1.7 ui-monospace,SFMono-Regular,monospace;white-space:normal;word-break:break-word;overflow-wrap:anywhere;display:block}.trace-meter{height:5px;display:block;background:#e9eddf;border-radius:4px;margin-top:8px;overflow:hidden}.trace-meter i{display:block;height:100%;background:#9db482;border-radius:4px}.trace-step.selected .trace-meter i{background:#54734b}.trace-step strong{font:700 22px SUITE;text-align:right}.trace-step strong small{font:10px SUIT;margin-left:2px;color:#56684b}.trace-panel{padding:20px 17px;background:var(--paper);border:1px solid #d6dfcc;border-radius:12px;margin-top:18px}.trace-panel-head{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.trace-panel-head strong{font-family:var(--heading),sans-serif;font-size:16px}.trace-panel-head>span:last-child{color:#56684b;font-size:10px;margin-left:auto}.trace-panel>p{font-size:13px;line-height:1.9;color:#53664a;margin-bottom:16px}.trace-work-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.trace-work{border:1px solid #c6d5b6;border-radius:8px;padding:9px 4px;background:#eaf1e0;color:#3c5c30;font:11px ui-monospace,monospace;min-height:49px}.trace-work span{font-size:9px;margin-right:5px}.trace-work small{display:block;font:9px/1.7 SUIT;color:#53684a}.trace-work.excluded{background:#f6f5ef;border-color:#e2e3d8;color:#565e50}.trace-work.excluded small{color:#565e50}.trace-legend{display:flex;gap:12px;flex-wrap:wrap;color:#56684b;font-size:10px;margin-top:12px}.trace-legend span:last-child{flex-basis:100%;font-size:10px}.trace-removed{margin-top:16px;border-top:1px solid #e0e6d8;padding-top:12px}.trace-removed>summary{font-size:11px;color:#4a623b;cursor:pointer}.trace-footnote{font-size:11px;line-height:1.8;color:#56684b;margin:16px 0 0}.trace-footnote code{font-size:10px;background:#e0e8d4;padding:3px 5px;border-radius:4px}.query-trace .ref-links{font-size:10px;margin-top:12px}
@media(max-width:700px){.trace-step{padding:12px 10px;gap:8px;grid-template-columns:20px minmax(0,1fr) 29px}.trace-step strong{font-size:20px}.trace-step-label code{font-size:10px}.trace-panel{padding:17px 12px}.trace-work-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.trace-work{font-size:10px;padding:8px 2px}.trace-work small{font-size:8px}.trace-work span{margin-right:3px}.trace-panel-head>span:last-child{flex-basis:100%;margin-left:0}.trace-disclosure>summary{font-size:15px}}
.trace-step strong small{display:block;margin:2px 0 0;font-size:9px}

/* Retain soft surfaces while keeping small informational text readable. */
.nav-count,.workflow small{opacity:1}
.segment{background:#597247}
