:root{color:#283b35;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--green:#23866c;--muted:#64756d;background:#f7faf8;font-family:Pretendard,Apple SD Gothic Neo,Noto Sans KR,Malgun Gothic,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline-offset:4px;outline:3px solid #23866c}button{touch-action:manipulation}button,h1,h2,p{margin:0}button svg{flex-shrink:0}[hidden]{display:none!important}.icon{flex-shrink:0;display:block}.app-shell{width:min(100%,760px);margin:0 auto;padding:0 24px}.app-header{border-bottom:1px solid #e4ece7;justify-content:space-between;align-items:center;height:100px;display:flex}.brand{color:#294c3e;align-items:center;gap:10px;font-size:16px;font-weight:750;text-decoration:none;display:flex}.brand-symbol{color:#fff;background:#23866c;border-radius:12px;place-items:center;width:36px;height:36px;display:grid}.brand-symbol .icon{width:21px;height:21px}.header-badge{color:#64756d;border:1px solid #dfe9e3;border-radius:30px;align-items:center;gap:7px;padding:7px 11px;font-size:11px;font-weight:550;display:inline-flex}.status-dot{background:#6bb997;border-radius:50%;width:5px;height:5px}.welcome{padding:55px 0 37px}.eyebrow{color:#4d7d68;letter-spacing:.04em;margin-bottom:15px;font-size:12px;font-weight:650;display:inline-block}h1{letter-spacing:-.055em;font-size:clamp(29px,4.5vw,40px);font-weight:800;line-height:1.3}h1 span{color:var(--green)}.welcome>p{color:var(--muted);letter-spacing:-.02em;margin-top:15px;font-size:14px;line-height:1.8}.mobile-break{display:none}.welcome-meta{color:#73847b;align-items:center;gap:7px;margin-top:22px;font-size:11px;display:flex}.meta-dot{background:#77aa91;border-radius:2px;width:6px;height:6px}.meta-divider{background:#d4dfd7;width:1px;height:10px;margin:0 4px}.section-heading{justify-content:space-between;align-items:center;margin-bottom:15px;display:flex}.section-heading h2{letter-spacing:-.025em;font-size:14px;font-weight:750}.section-heading>span{color:#78887f;font-size:11px}.menu-card{--accent:#2f7d66;--tint:#f0f8f3;--icon-bg:#dceee2;--border:#e0ece3;background:var(--tint);border:1px solid var(--border);border-radius:22px;margin-top:13px;overflow:hidden;box-shadow:0 3px 8px #334c3d03}.random-card{--accent:#a56642;--tint:#fdf5ee;--icon-bg:#f8e6d5;--border:#f0e7db}.practice-card{--accent:#796393;--tint:#f5f2fa;--icon-bg:#eae1f4;--border:#e9e3f1}.menu-trigger{text-align:left;background:0 0;border:0;align-items:center;gap:20px;width:100%;min-height:132px;padding:25px 26px;display:flex}.menu-trigger:hover{background:#ffffff36}.menu-icon{background:var(--icon-bg);width:56px;height:56px;color:var(--accent);border-radius:17px;flex-shrink:0;place-items:center;display:grid}.menu-icon .icon{width:25px;height:25px}.menu-copy{flex-direction:column;flex:1;min-width:0;display:flex}.menu-kicker{color:var(--accent);letter-spacing:.01em;margin-bottom:6px;font-size:10px;font-weight:600}.menu-title{letter-spacing:-.045em;font-size:19px;font-weight:750;line-height:1.5}.menu-description{color:#6e7b73;letter-spacing:-.02em;margin-top:5px;font-size:12px;line-height:1.6}.trigger-indicator{border:1px solid var(--border);width:32px;height:32px;color:var(--accent);background:#ffffff80;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.trigger-indicator .icon{width:18px;height:18px}.trigger-indicator.is-open{transform:rotate(180deg)}.picker-content{border-top:1px solid #dce8df;margin:0 26px 23px;padding-top:22px}.picker-heading{justify-content:space-between;align-items:center;margin-bottom:14px;font-size:12px;font-weight:650;display:flex}.picker-heading span:last-child{color:#6d8074;font-size:10px;font-weight:500}.problem-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;display:grid}.problem-button{color:#486b59;font-variant-numeric:tabular-nums;background:#fff;border:1px solid #dce8de;border-radius:12px;min-height:48px;padding:0;font-size:15px;font-weight:650}.problem-button:hover{background:#e6f1e9;border-color:#77ae92}.problem-button.is-selected{color:#fff;background:#23866c;border-color:#23866c;box-shadow:0 3px 7px #23866c21}.selection-status{color:#697f71;border-radius:10px;justify-content:center;align-items:center;gap:6px;min-height:42px;margin-top:14px;font-size:12px;display:flex}.selection-status.has-selection{color:#27694e;background:#e2f0e7}.selection-status .icon{width:16px;height:16px}.picker-note{color:#6c7f71;text-align:center;word-break:keep-all;margin-top:6px;font-size:10px;line-height:1.7}.random-result{border-top:1px solid #ecdfd2;align-items:center;gap:14px;margin:0 26px 23px;padding:18px 0 0;display:flex}.result-number{color:#a3633e;background:#fff8f2;border:1px solid #ebd9c8;border-radius:14px;flex-shrink:0;place-items:center;width:46px;height:46px;font-size:20px;font-weight:750;display:grid}.random-result strong{letter-spacing:-.025em;font-size:13px;font-weight:650}.random-result p{color:#897564;margin-top:5px;font-size:11px;line-height:1.6}.practice-menu{border-top:1px solid #e5ddee;margin:0 26px 23px;padding-top:18px}.practice-item{text-align:left;background:#fff9;border:1px solid #e7dff0;border-radius:12px;align-items:center;gap:12px;width:100%;min-height:60px;padding:17px 15px;display:flex}.practice-item+.practice-item{margin-top:9px}.practice-item>.icon{color:#8b75a3;width:20px;height:20px}.practice-item>span:first-of-type{letter-spacing:-.035em;word-break:keep-all;flex:1;font-size:13px;font-weight:600;line-height:1.6}.practice-item:hover{background:#fff;border-color:#bda9d1}.coming-soon{color:#857393;background:#f1ebf7;border-radius:6px;flex-shrink:0;padding:4px 7px;font-size:10px}.practice-notice{color:#735e88;gap:8px;margin-top:15px;padding:12px 4px 0;font-size:12px;line-height:1.8;display:flex}.practice-notice>.icon{width:18px;height:18px;margin-top:2px}.practice-notice>span{min-width:0}.practice-notice strong{font-weight:650;display:block}.practice-notice span span{word-break:keep-all;font-size:11px;display:block}.encouragement{background:#fff;border:1px solid #e8eeea;border-radius:18px;align-items:center;gap:13px;margin:27px 0 0;padding:25px 23px;display:flex}.encouragement-icon{color:#73977a;background:#f0f6f0;border-radius:50%;flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}.encouragement-icon .icon{width:20px;height:20px}.encouragement p{color:#536b5c;font-size:12px;font-weight:650;line-height:1.8}.encouragement p span{color:#7a897f;font-size:11px;font-weight:400;display:block}.app-footer{color:#85958b;justify-content:center;align-items:center;gap:8px;padding:30px 0 35px;font-size:10px;display:flex}.footer-dot{background:#a9b6ad;border-radius:50%;width:2px;height:2px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=480px){.app-shell{padding:0 20px}.app-header{height:76px}.brand{gap:8px;font-size:14px}.brand-symbol{border-radius:10px;width:32px;height:32px}.header-badge{padding:6px 9px;font-size:10px}.welcome{padding:35px 0 29px}.eyebrow{margin-bottom:13px;font-size:11px}h1{font-size:31px}h1 span{display:block}.welcome>p{margin-top:12px;font-size:12px;line-height:1.9}.mobile-break{display:block}.welcome-meta{margin-top:17px;font-size:10px}.section-heading h2{font-size:13px}.section-heading>span{font-size:10px}.menu-card{border-radius:18px;margin-top:12px}.menu-trigger{gap:12px;min-height:126px;padding:21px 17px}.menu-icon{border-radius:14px;width:44px;height:44px}.menu-icon .icon{width:22px;height:22px}.menu-title{font-size:17px}.menu-kicker{font-size:9px}.menu-description{word-break:keep-all;margin-top:4px;font-size:10px}.trigger-indicator{width:27px;height:27px}.trigger-indicator .icon{width:16px;height:16px}.picker-content,.practice-menu{margin:0 16px 18px;padding-top:18px}.problem-grid{gap:4px}.problem-button{border-radius:9px;min-height:44px;font-size:13px}.picker-note{font-size:9px}.selection-status{font-size:11px}.random-result{gap:10px;margin:0 17px 18px}.random-result strong{font-size:11px}.random-result p{font-size:10px}.practice-item{gap:8px;padding:14px 10px}.practice-item>span:first-of-type{font-size:11px}.coming-soon{padding:4px 5px;font-size:9px}.encouragement{margin-top:22px;padding:20px 17px}.app-footer{padding-bottom:max(28px, env(safe-area-inset-bottom))}}@media (prefers-reduced-motion:no-preference){.trigger-indicator{transition:transform .16s}.problem-button{transition:background-color .12s,border-color .12s}}.problem-button .web-problem-access{font-size:11px;font-weight:500;line-height:1.4;display:block}.problem-button:has(.web-problem-access){min-height:64px}.web-pass-screen{background:#fffef7;border:1px solid #d4dfd1;border-radius:20px;margin-top:48px;padding:32px}.web-pass-screen h1{font-size:26px}.web-account-link{color:inherit;margin-left:16px;text-decoration:underline}.web-pass-screen p{line-height:1.8}.web-pass-screen button{color:#355a47;cursor:pointer;font:inherit;background:#f4f8ef;border:1px solid #b9cbb5;border-radius:10px;margin:16px 12px 0 0;padding:12px 20px}.web-learning-record{max-width:900px;margin:24px auto;padding:16px;line-height:1.8}.web-learning-record a{color:#355f4c;padding:10px;display:inline-block}.web-learning-record button{color:#355f4c;background:#f6faf4;border:1px solid #bdccbd;border-radius:8px;min-height:44px;padding:8px 12px;display:block}.free-site-layout{width:100%}.free-learning-column{min-width:0}.free-ad-rail{flex-wrap:wrap;justify-content:center;gap:24px;margin:24px 16px;display:flex}.free-ad-slot{color:#5a7163;text-align:center;background:#f8fbf7;border:1px solid #d5e1d7;border-radius:8px;flex:0 0 160px;width:160px;min-height:320px;padding:12px 0;position:relative}.free-ad-slot>span{margin-bottom:8px;font-size:12px;display:block}.free-ad-unit{width:100%;min-height:280px}.free-ad-slot small{padding:8px;font-size:11px;display:block}.free-site-footer,.free-learning-record{max-width:900px;margin:24px auto;padding:16px;line-height:1.8}.free-site-footer{flex-wrap:wrap;gap:16px;display:flex}.free-site-footer a,.free-learning-record a,.free-article a{color:#355f4c}.free-learning-record a{padding:10px;display:inline-block}.free-learning-record button{color:#355f4c;background:#f6faf4;border:1px solid #bdccbd;border-radius:8px;min-height:44px;padding:8px 12px;display:block}.free-article{overflow-wrap:anywhere;max-width:900px;margin:0 auto;padding:24px;line-height:1.9}.free-article h1{font-size:30px}.free-article h2{margin-top:32px}.free-article nav{flex-wrap:wrap;gap:16px;display:flex}.free-article li{margin:12px 0}@media (width>=1728px){.free-site-layout{grid-template-columns:160px minmax(0,1320px) 160px;justify-content:center;column-gap:24px;padding:0 20px;display:grid}.free-learning-column{grid-area:1/2}.free-ad-rail{flex-direction:column;grid-row:1;justify-content:flex-start;gap:120px;margin:120px 0 24px;display:flex}.free-ad-left{grid-column:1}.free-ad-right{grid-column:3}}
