/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer theme,base,components;@layer utilities{.visible{visibility:visible}}:root{--color-primary:#5b4be8;--color-primary-dark:#4438bd;--color-ink:#17162b;--color-muted:#6d6a80;--color-line:#e6e4f0;--color-bg:#f8f7fc;--color-surface:#fff;--color-accent:coral;--radius-sm:10px;--radius-md:18px;--shadow-card:0 12px 32px #332d6612;--shadow-float:0 22px 52px #332d6620}*{box-sizing:border-box}button{cursor:pointer}:root{color:var(--color-ink);background:var(--color-bg);font-family:Inter,system-ui,sans-serif}body{margin:0}button{color:#fff;background:#2563eb;border:0;border-radius:10px;padding:10px 16px}.secondary{border:1px solid var(--color-line);color:var(--color-ink);background:#fff}.app-shell{max-width:1240px;margin:auto;padding:24px}header,.lesson-actions{align-items:center;gap:10px;display:flex}header{justify-content:space-between}.auth-panel{box-shadow:var(--shadow-card);background:#fff;border-radius:14px;margin:20px 0;padding:20px}.auth-panel__intro{display:none}.auth-tabs{background:#f7f5fd;border:1px solid #e6e1f3;border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin-bottom:16px;padding:4px;display:grid}.auth-tab{color:#635d76;min-height:40px;box-shadow:none;background:0 0;border-radius:10px}.auth-tab.active{color:#fff;background:#211e3b;box-shadow:0 8px 18px #332d6620}.auth-panel form{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end;gap:12px;display:grid}.auth-panel__body,.auth-form,.social-login-list{gap:12px;display:grid}.auth-panel label{gap:6px;font-weight:700;display:grid}.auth-panel input{border:1px solid var(--color-line);border-radius:7px;padding:10px}.auth-submit{background:#f16c48;border-radius:11px;min-height:42px;box-shadow:0 10px 20px #f16c4822}.social-login-button{border:1px solid var(--color-line);color:#211e3b;min-height:46px;box-shadow:none;background:#fff;border-radius:11px;justify-content:center;align-items:center;gap:10px;font-weight:850;display:inline-flex}.social-login-button span{border-radius:50%;place-items:center;width:24px;height:24px;font-size:.8rem;font-weight:950;display:inline-grid}.auth-divider{color:#7b748f;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;font-size:.8rem;font-weight:800;display:grid}.auth-divider:before,.auth-divider:after{content:"";background:var(--color-line);height:1px}.auth-consent{color:#5f5b75;grid-template-columns:auto 1fr;align-items:start;font-size:.86rem;line-height:1.5}.auth-consent input{margin-top:3px}.hero{margin:56px 0 32px}.hero p{color:#2563eb;font-weight:700}h1{margin:8px 0;font-size:clamp(2rem,6vw,4rem)}.course-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;display:grid}.course-card{text-align:left;min-height:170px;color:inherit;background:#fff;gap:10px;padding:20px;display:grid;box-shadow:0 1px 3px #17203318}.course-card span,.course-card small,.course-meta small,.lesson-header span,.section-card p,.lesson-item small{color:#64748b}.notice{color:#b91c1c;background:#fef2f2;border-radius:8px;padding:12px}.back{background:#475569;margin-bottom:20px}.learning-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:20px;display:grid}.course-body-section{min-width:0;box-shadow:var(--shadow-card);background:#fff;border-radius:18px;gap:20px;padding:20px;display:grid}.course-body-section__content{grid-template-columns:1fr;gap:16px;display:grid}.enrollment-panel,.course-body-section{box-shadow:var(--shadow-card);background:#fff;border-radius:18px;padding:20px}.curriculum-panel,.instructor-profile-panel{min-width:0}.curriculum-panel{background:#fff;border:1px solid #ebe8f5;border-radius:14px;padding:18px}.instructor-profile-panel{background:#fbfffd;border:1px solid #e1f2ec;border-radius:14px;padding:18px}.assessment-panel{box-shadow:var(--shadow-card);background:#fff;border-radius:18px;gap:12px;padding:20px;display:grid}.assessment-panel h2{margin:0;font-size:1.2rem}.assessment-card{background:#f8fafc;border:1px solid #dbe4f0;border-radius:12px;gap:8px;padding:14px;display:grid}.assessment-card div{gap:4px;display:grid}.assessment-card span,.assessment-card p,.assessment-card small{color:#64748b}.feedback-section{border-top:1px solid #dbe4f0;gap:9px;padding-top:14px;display:grid}.feedback-section h2{font-size:1.05rem}.panel-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.feedback-card{background:#f8fafc;border:1px solid #dbe4f0;border-radius:8px;gap:6px;padding:10px;display:grid}.feedback-card small{color:#64748b}.issue-report-section{border-color:#e6e0ff}.issue-report-form{gap:10px;display:grid}.issue-report-form>p{color:#64748b;margin:0;font-size:.86rem;line-height:1.55}.issue-report-form label{color:#3f3a58;gap:6px;font-size:.84rem;font-weight:750;display:grid}.issue-report-form select,.issue-report-form textarea{box-sizing:border-box;color:#28243d;width:100%;font:inherit;border:1px solid #dcd8ed;border-radius:9px;padding:9px 10px}.issue-report-form textarea{resize:vertical;min-height:94px}.issue-report-form .secondary{justify-self:start}.issue-message{color:#4c42ae;background:#f1efff;border-radius:9px;margin:0;padding:10px;font-size:.84rem;line-height:1.5}.small-button,.text-button{padding:6px 9px;font-size:.8rem}.text-button{color:#2563eb;background:0 0;padding:0}.resolved{color:#047857;font-size:.85rem;font-weight:700}.notification-dot{color:#92400e;background:#fef3c7;border-radius:999px;padding:4px 7px;font-size:.75rem;font-weight:800}.completion-section{border-color:#bbf7d0}.certificate-link{color:#1d4ed8;font-size:.9rem;font-weight:700}.course-meta{gap:4px;margin-bottom:16px;display:grid}.course-meta>strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.progress-pill{color:#047857;background:#dcfce7;border-radius:999px;width:fit-content;padding:6px 10px;font-size:.85rem;font-weight:800;display:inline-flex}.progress-pill.pending{color:#b45309;background:#fff7ed}.section-card{background:#fbfcff;border-radius:14px;margin-bottom:14px;padding:18px}.section-card h2,.lesson-header h2{margin:0 0 8px;font-size:1.25rem}.lesson-section{background:0 0;gap:14px;padding:0;display:grid}.lesson-section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.lesson-section-heading h2{color:#211e3b;text-wrap:balance;margin:0;font-size:1.22rem;line-height:1.25}.lesson-section-heading span{color:#5b4be8;font-variant-numeric:tabular-nums;background:#f1efff;border-radius:999px;flex:none;padding:5px 10px;font-size:.78rem;font-weight:900}.lesson-list{gap:10px;display:grid}.lesson-item{text-align:left;min-height:76px;color:var(--color-ink);background:#fff;border:1px solid #e7e3f1;border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px;display:grid;box-shadow:0 6px 16px #332d6608}.lesson-item-main{min-width:0;color:inherit;text-align:left;background:0 0;border-radius:0;grid-column:1/3;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;padding:0;display:grid}.lesson-item-main:focus-visible,.lesson-material-button:focus-visible{outline-offset:3px;outline:3px solid #5eead4}.lesson-item.active{background:#fbfaff;border-color:#7164ef;box-shadow:inset 0 0 0 1px #7164ef,0 10px 22px #6659ec17}.lesson-item-index{color:#5b4be8;font-variant-numeric:tabular-nums;background:#f1efff;border-radius:10px;place-items:center;width:34px;height:34px;font-size:.86rem;font-weight:900;display:inline-grid}.lesson-item-copy{gap:5px;min-width:0;display:grid}.lesson-item-copy strong{overflow-wrap:anywhere;text-wrap:balance;font-size:1.02rem;line-height:1.35}.lesson-item-copy small{overflow-wrap:anywhere;color:#65748b;text-wrap:pretty;font-size:.88rem;font-weight:750;line-height:1.45}.lesson-item-copy .lesson-item-duration{color:#7b8798;font-size:.8rem;font-weight:700}.lesson-material-button{white-space:nowrap;border-radius:8px;justify-self:end;min-width:92px;min-height:40px;font-weight:900}.lesson-material-button:disabled{cursor:not-allowed;color:#94a3b8;background:#f1f5f9;border-color:#d6dee8}.lesson-empty{text-align:center;color:#64748b;padding:48px 16px}.lesson-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.lesson-header p{color:#2563eb;margin:0 0 4px;font-weight:700}.lesson{background:#f8fafc;border-radius:16px;padding:28px;line-height:1.75}.lesson h1,.lesson h2{margin-top:0}.lesson pre{color:#e2e8f0;background:#0f172a;border-radius:12px;padding:14px;overflow-x:auto}.lesson code{background:#e2e8f0;border-radius:6px;padding:1px 5px}.lesson pre code{background:0 0;padding:0}.lesson blockquote{color:#185c6d;background:#f2fbfa;border-left:5px solid #2b8b87;border-radius:10px;margin:22px 0;padding:14px 18px}.lesson blockquote p{margin:0}.lesson hr{border:0;border-top:1px solid #dbe4ef;margin:28px 0}.lesson .mdx-spacer{height:1.75em}.lesson .mdx-button-row{margin:22px 0}.lesson .mdx-button{color:#fff;background:#248f87;border:1px solid #1f7f79;border-radius:8px;justify-content:center;align-items:center;min-height:42px;padding:10px 16px;font-weight:800;text-decoration:none;display:inline-flex;box-shadow:0 10px 22px #248f872e}.lesson .mdx-button:hover,.lesson .mdx-button:focus-visible{outline-offset:2px;background:#1a716b;outline:3px solid #248f8738}.lesson .mdx-prompt{background:#f8fcfc;border:1px solid #c9e5e1;border-radius:12px;margin:24px 0;overflow:hidden}.lesson .mdx-prompt figcaption{color:#185c6d;background:#f2fbfa;border-bottom:1px solid #d8e7e5;padding:10px 14px;font-size:.82rem;font-weight:850}.lesson .mdx-prompt pre{color:#e8f7f5;white-space:pre-wrap;background:#172033;border-radius:0;margin:0;padding:16px}.lesson .mdx-prompt code{background:0 0;padding:0}.lesson .mdx-checklist{gap:10px;padding-left:0;list-style:none;display:grid}.lesson .mdx-checklist li{align-items:flex-start;gap:10px;display:flex}.lesson .mdx-checklist input{accent-color:#2563eb;width:18px;height:18px;margin-top:5px}.lesson .mdx-table-wrap{background:#fff;border:1px solid #dbe4ef;border-radius:12px;margin:22px 0;overflow-x:auto}.lesson .mdx-table-wrap table{border-collapse:collapse;width:100%;min-width:560px;font-size:.94rem}.lesson .mdx-table-wrap th,.lesson .mdx-table-wrap td{text-align:left;vertical-align:top;border:1px solid #dbe4ef;padding:11px 12px}.lesson .mdx-table-wrap th{color:#1e3a8a;background:#eef6ff}.lesson .mdx-mermaid{text-align:center;background:#fff;border:1px solid #dbe4ef;border-radius:12px;margin:24px 0;padding:18px;overflow-x:auto}.lesson .mdx-mermaid svg{max-width:100%;height:auto}.lesson .mdx-mermaid figcaption{color:#64748b;margin-bottom:10px}.lesson .mdx-mermaid pre{text-align:left}.lesson .mdx-media{margin:24px 0}.lesson .mdx-media img{background:#fff;border:1px solid #dbe4ef;border-radius:12px;max-width:100%;height:auto;display:block}.lesson .mdx-media figcaption{color:#64748b;text-align:center;margin-top:8px;font-size:.92rem}.callout{color:#185c6d;background:#f2fbfa;border-left:4px solid #2b8b87;margin:20px 0;padding:16px}.material-reader{z-index:40;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#16142bcc;padding:clamp(10px,2vw,22px);display:grid;position:fixed;inset:0}.lesson-material-note{color:#31515f;background:#f3f8fb;border:1px solid #d9e6ef;border-radius:10px;margin:0 0 14px;padding:12px 14px;font-weight:700}.material-reader__shell{background:#fff;border:1px solid #e7e2f6;border-radius:18px;grid-template-rows:auto minmax(0,1fr);width:min(100%,1480px);height:min(100dvh - 20px,980px);min-height:0;margin:auto;display:grid;overflow:hidden;box-shadow:0 24px 60px #0f102640}.material-reader__header{background:#fbfaff;border-bottom:1px solid #ece8f6;justify-content:space-between;align-items:center;gap:18px;padding:16px clamp(16px,3vw,26px);display:flex}.material-reader__header h2{color:#211e3b;letter-spacing:-.03em;margin:2px 0 0;font-size:clamp(1.1rem,2vw,1.55rem)}.material-reader__header p{color:#f16c48;margin:0;font-size:.76rem;font-weight:850}.material-reader__controls{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.material-reader__body{background:#f4f7fb;min-height:0;padding:clamp(16px,3vw,34px);overflow:auto}.lesson--reader{box-sizing:border-box;color:#20233a;background:#fff;border:1px solid #e5eaf2;border-radius:14px;width:min(100%,980px);min-height:100%;margin:0 auto;padding:clamp(24px,4vw,56px);font-size:1.04rem;line-height:1.85;box-shadow:0 12px 32px #16142b14}.lesson--reader h1{font-size:clamp(1.85rem,4vw,3rem);line-height:1.15}@media (width<=900px){.learning-layout,.course-body-section__content{grid-template-columns:1fr}.lesson-header{display:grid}.lesson-actions{justify-content:flex-start}.material-reader{padding:0}.material-reader__shell{border-radius:0;width:100%;height:100dvh}.material-reader__body{--slidev-viewer-chrome-height:150px;--slidev-viewer-min-height:260px}.material-reader__header{flex-direction:column;align-items:flex-start}.material-reader__controls{justify-content:flex-start}}.section-heading{justify-content:space-between;align-items:end;gap:18px;margin-bottom:18px;display:flex}.section-heading h2{letter-spacing:-.04em;margin:3px 0 0;font-size:clamp(1.45rem,3vw,2.1rem)}.section-heading>span{color:#64748b;font-size:.9rem}.eyebrow{color:#7c3aed;letter-spacing:.12em;margin:0;font-size:.72rem;font-weight:800}.category-tabs{gap:9px;padding:3px 0 9px;display:flex;overflow-x:auto}.category-tabs button{color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:999px;flex:none;padding:9px 15px;font-weight:700}.category-tabs button.selected{color:#fff;background:#312e81;border-color:#312e81;box-shadow:0 8px 20px #312e8130}.my-class-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;display:grid}.my-class-card{text-align:left;color:#fff;background:linear-gradient(145deg,#312e81,#6d28d9);border-radius:18px;gap:14px;min-height:200px;padding:20px;display:grid;box-shadow:0 16px 28px #312e8130}.my-class-card:nth-child(2){background:linear-gradient(145deg,#0f766e,#0d9488)}.my-class-card:nth-child(3){background:linear-gradient(145deg,#9a3412,#ea580c)}.my-class-card>div:first-child,.my-class-card footer{justify-content:space-between;align-items:center;gap:8px;display:flex}.my-class-card strong{font-size:1.13rem;line-height:1.35}.my-class-card small{color:#ede9fe}.approved-badge{background:#ffffff30;border-radius:999px;padding:5px 8px;font-size:.72rem;font-weight:800}.class-category{opacity:.82;font-size:.76rem}.progress-track{background:#ffffff35;border-radius:999px;height:7px;overflow:hidden}.progress-track span{border-radius:inherit;background:#fff;height:100%;display:block}.my-class-card footer{font-size:.8rem}.my-class-card footer b{font-size:.82rem}@media (width<=700px){.my-class-grid{grid-template-columns:1fr}.section-heading{flex-direction:column;align-items:start;gap:5px}}:root{background:#fbfaff}body{background:radial-gradient(circle at 4% 4%,#eeeaff 0,#0000 23rem),radial-gradient(circle at 95% 18%,#fff0e9 0,#0000 24rem),#fbfaff}button{letter-spacing:-.01em;font-weight:750;transition:transform .18s,box-shadow .18s,background .18s}button:hover:not(:disabled){transform:translateY(-2px)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #a99fff}.app-topbar{z-index:10;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff0;border:1px solid #e9e5f5;border-radius:24px;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;min-height:76px;padding:10px 14px;display:grid;position:sticky;top:12px;box-shadow:0 18px 44px #332d6612}.app-brand{color:#201a5b;white-space:nowrap;align-items:center;gap:9px;font-weight:850;text-decoration:none;display:inline-flex}.app-brand:before{content:"두";color:#fff;background:linear-gradient(135deg,#211e3b,#6659ec 58%,#f16c48);border-radius:15px;place-items:center;width:42px;height:42px;font-size:.95rem;display:inline-grid;box-shadow:0 12px 24px #6659ec33}.app-brand span,.app-brand small{display:block}.app-brand span{letter-spacing:-.04em;font-size:1.07rem}.app-brand small{color:#8b849d;letter-spacing:.08em;text-transform:uppercase;margin-top:1px;font-size:.68rem;font-weight:800}.topbar-menu{background:#f7f5fd;border:1px solid #ece8f7;border-radius:999px;justify-content:center;justify-self:center;gap:3px;padding:5px;display:flex}.topbar-menu a{color:#625f76;border-radius:999px;padding:9px 12px;font-size:.88rem;font-weight:750;text-decoration:none;transition:color .18s,background .18s,box-shadow .18s}.topbar-toggle{display:none}.topbar-login-link{color:#fff;background:linear-gradient(135deg,#211e3b,#14b8a6);border-radius:16px;justify-content:center;align-items:center;min-height:44px;padding:0 18px;font-size:.9rem;font-weight:900;text-decoration:none;transition:transform .18s,box-shadow .18s;display:inline-flex;box-shadow:0 14px 28px #0f766e24}.topbar-login-link:hover{transform:translateY(-1px);box-shadow:0 18px 34px #0f766e2e}.topbar-profile{position:relative}.profile-trigger{color:#302b4b;text-align:left;background:#fff;border:1px solid #e1ddef;border-radius:18px;align-items:center;gap:9px;min-height:52px;padding:6px 11px 6px 7px;display:inline-flex;box-shadow:0 10px 26px #332d660d}.profile-avatar-small{color:#fff;background:#211e3b;border-radius:14px;place-items:center;width:38px;height:38px;font-size:.95rem;font-weight:850;display:grid}.profile-trigger-copy{gap:1px;min-width:0;display:grid}.profile-trigger-copy strong{color:#302b4b;text-overflow:ellipsis;white-space:nowrap;max-width:104px;font-size:.9rem;line-height:1.15;overflow:hidden}.profile-trigger-copy small{color:#756f8b;font-size:.72rem;font-weight:700}.profile-menu{z-index:12;background:#fff;border:1px solid #e2def0;border-radius:18px;min-width:218px;padding:8px;display:grid;position:absolute;top:calc(100% + 7px);right:0;box-shadow:0 15px 32px #26205222}.profile-menu__summary{border-bottom:1px solid #eeeaf7;gap:3px;margin-bottom:4px;padding:10px 10px 12px;display:grid}.profile-menu__summary strong{color:#211e3b;font-size:.94rem}.profile-menu__summary span{color:#756f8b;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.profile-menu button{color:#403a57;text-align:left;background:0 0;border-radius:12px;padding:10px 11px}.route-placeholder{background:#fff;border:1px solid #e8e5f3;border-radius:22px;gap:12px;max-width:680px;margin:42px auto;padding:clamp(26px,5vw,52px);display:grid;box-shadow:0 12px 28px #332d6610}.route-placeholder h1,.route-placeholder p{margin:0}.route-placeholder>p:not(.eyebrow){color:#69657b;line-height:1.6}.route-placeholder button{justify-self:start}.app-shell>header{min-height:64px;padding:0 4px}.app-shell>header>strong{color:#201a5b;letter-spacing:-.05em;align-items:center;gap:8px;font-size:1.22rem;display:inline-flex}.app-shell>header>strong:before{content:"L";color:#fff;background:linear-gradient(135deg,#6659ec,#a55eea);border-radius:10px;place-items:center;width:30px;height:30px;font-size:.86rem;display:grid;box-shadow:0 8px 17px #5b4be844}.auth-tab:hover:not(:disabled),.auth-submit:hover:not(:disabled){transform:translateY(-1px)}.hero{color:#fff;box-shadow:var(--shadow-float);background:linear-gradient(120deg,#251f63,#4f40bd 55%,#8071ed);border:1px solid #e7e0ff;border-radius:30px;margin:34px 0 48px;padding:clamp(32px,6vw,72px);position:relative;overflow:hidden}.hero:after{content:"";border:46px solid #ffffff16;border-radius:50%;width:330px;height:330px;position:absolute;top:-130px;right:-100px}.hero:before{content:"✦";color:#ffb27a;font-size:3rem;position:absolute;bottom:14%;right:18%;transform:rotate(18deg)}.hero p{z-index:1;color:#ffd2b6;letter-spacing:.13em;text-transform:uppercase;margin:0 0 13px;font-size:.78rem;position:relative}.hero h1{z-index:1;letter-spacing:-.075em;text-overflow:ellipsis;white-space:nowrap;max-width:min(1200px,100% - 220px);margin:0 0 15px;font-size:clamp(2.35rem,4vw,4rem);line-height:.98;position:relative;overflow:hidden}.hero span{z-index:1;color:#e4e1ff;max-width:590px;font-size:1.02rem;line-height:1.7;display:block;position:relative}.auth-panel{box-shadow:var(--shadow-float);border:1px solid #ece8fa}.auth-page{max-width:720px;margin:56px auto}.auth-page h1,.auth-page p{margin:0}.auth-page>p:not(.eyebrow){color:#69657b;margin-top:8px;line-height:1.6}.auth-page .auth-panel{margin-top:24px}.catalog-section,.my-class-section{margin:46px 0}.section-heading h2{color:#211e3b}.eyebrow{color:#f16c48}.course-grid{gap:20px}.course-card{border:1px solid #ebe8f5;border-radius:20px;min-height:224px;padding:24px;transition:transform .2s,box-shadow .2s,border-color .2s;position:relative;overflow:hidden;box-shadow:0 10px 27px #332d660d}.course-card:before{content:"";background:linear-gradient(145deg,#e6e1ff,#fff4ed);border-radius:40px;width:104px;height:104px;position:absolute;top:-32px;right:-25px;transform:rotate(28deg)}.course-card:nth-child(3n+2):before{background:linear-gradient(145deg,#d9f6ee,#ecfbf6)}.course-card:nth-child(3n):before{background:linear-gradient(145deg,#ffe4ce,#fff6e8)}.course-card:hover{box-shadow:var(--shadow-float);border-color:#c8c0ff;transform:translateY(-5px)}.course-card.enrolled{border-color:#99f6e4}.course-card-status{z-index:2;color:#115e59;background:#ccfbf1;border-radius:999px;align-items:center;min-height:28px;padding:0 10px;font-size:.76rem;font-style:normal;font-weight:950;display:inline-flex;position:relative;box-shadow:0 10px 20px #0f766e18}.course-card strong{z-index:1;letter-spacing:-.04em;font-size:1.22rem;line-height:1.3}.course-card span{z-index:1;line-height:1.55}.course-card small{z-index:1;color:#5b4be8;font-weight:800}.my-class-card{border:1px solid #ffffff30;border-radius:22px;box-shadow:0 18px 36px #332d6626}.my-class-card:hover{box-shadow:0 26px 48px #332d6635}.category-tabs{padding-bottom:10px}.category-tabs button{box-shadow:0 5px 13px #332d6607}.category-tabs button.selected{background:#2e276f;border-color:#2e276f}.assessment-panel,.enrollment-panel{border:1px solid #ebe8f5;box-shadow:0 12px 30px #332d660d}.course-body-section{border:1px solid #ebe8f5;border-top:4px solid #7164ef}.assessment-panel,.enrollment-panel{border-top:4px solid #52c4a5}.lesson-session-card{background:#fff8f4;border:1px solid #f1d9ca;border-radius:14px;gap:10px;margin:14px 0 18px;padding:14px;display:grid}.lesson-session-card h3{color:#5b331f;margin:0;font-size:1rem}.lesson-session-card p{color:#7a3f25;margin:0;line-height:1.55}.lesson-schedule-summary{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:0;display:grid}.lesson-schedule-summary div{gap:4px;min-width:0;display:grid}.lesson-schedule-summary dt{color:#8a624f;font-size:.78rem;font-weight:850}.lesson-schedule-summary dd{color:#3b2f2a;flex-wrap:wrap;gap:6px 10px;margin:0;font-weight:800;line-height:1.45;display:flex}.lesson-schedule-summary a{color:#2563eb;text-decoration:none}.instructor-profile-panel{gap:12px;display:grid}.enrollment-panel{gap:14px;display:grid}.learning-sidebar{align-self:start;gap:14px;display:grid}.enrollment-panel>p{color:#168056;letter-spacing:.08em;margin:0;font-size:.72rem;font-weight:900}.enrollment-panel h2{color:#20362f;margin:0;font-size:1.2rem}.course-enrollment-summary{gap:6px;display:grid}.course-enrollment-summary strong{color:#211e3b;font-size:1rem}.course-enrollment-summary small{color:#5f5b75;line-height:1.5}.enrollment-detail-list{gap:10px;margin:0;display:grid}.enrollment-detail-list div{border-top:1px solid #ebe8f5;gap:4px;padding:10px 0;display:grid}.enrollment-detail-list dt{color:#6b6680;font-size:.78rem;font-weight:800}.enrollment-detail-list dd{color:#211e3b;margin:0;font-size:.92rem;font-weight:700;line-height:1.55}.course-price-stack{justify-items:start;gap:5px;display:grid}.course-price-original{color:#8b859c;font-size:.78rem;font-weight:700;text-decoration:line-through}.course-price-discount{color:#b91c1c;background:#fee2e2;border-radius:999px;align-items:center;min-height:24px;padding:0 8px;font-size:.78rem;font-weight:900;display:inline-flex}.course-price-current{color:#211e3b;font-size:1.05rem;font-weight:900}.instructor-profile-panel>p{color:#168056;letter-spacing:.08em;margin:0;font-size:.72rem;font-weight:900}.instructor-profile-panel h2{color:#20362f;margin:0;font-size:1.2rem}.instructor-profile-panel strong{color:#211e3b;font-size:1rem}.instructor-profile-panel span,.instructor-profile-panel__bio{color:#5f5b75;margin:0;font-size:.88rem;line-height:1.6}.instructor-profile-panel__bio{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.instructor-profile-panel button{justify-self:start;margin-top:4px}.instructor-profile-detail__portfolio{color:#0f766e;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:8px;justify-content:center;align-items:center;width:fit-content;min-height:42px;padding:10px 16px;font-size:.92rem;font-weight:900;line-height:1.2;text-decoration:none;display:inline-flex;box-shadow:0 10px 20px #0f766e12}.instructor-profile-detail__portfolio:hover{background:#dffcf3;border-color:#5eead4}.instructor-profile-detail__portfolio:focus-visible{outline-offset:3px;outline:3px solid #5eead4}.curriculum-overview-card{background:#fff;border:1px solid #ebe8f5;border-radius:16px;gap:0;display:grid;overflow:hidden;box-shadow:0 10px 24px #332d6609}.curriculum-overview-item{gap:10px;max-width:76ch;padding:18px 20px;display:grid}.curriculum-overview-item+.curriculum-overview-item{background:#fbfaff;border-top:1px solid #eeeaf7}.curriculum-overview-card h2,.curriculum-overview-item h2{color:#211e3b;text-wrap:balance;margin:0;font-size:1.08rem;line-height:1.3}.curriculum-overview-card p,.curriculum-overview-item p{color:#5f5b75;text-wrap:pretty;max-width:68ch;margin:0;line-height:1.68}.lesson-status-text{color:#5b4be8;background:#f0edff;border-radius:999px;justify-self:end;padding:5px 9px;font-size:.76rem;font-weight:900}.instructor-profile-detail{gap:18px;width:100%;margin:0 0 42px;display:grid}.instructor-profile-detail>button{justify-self:start}.instructor-profile-detail article,.profile-detail-empty{background:#fff;border:1px solid #e5f0ee;border-radius:20px;gap:22px;padding:clamp(22px,4vw,38px);display:grid;box-shadow:0 12px 30px #332d660d}.instructor-profile-detail header{gap:8px;display:grid}.instructor-profile-detail header p,.profile-detail-empty p{color:#168056;letter-spacing:.08em;margin:0;font-size:.72rem;font-weight:900}.instructor-profile-detail h2,.profile-detail-empty h2{color:#20362f;letter-spacing:-.04em;margin:0;font-size:clamp(1.8rem,4vw,2.7rem)}.instructor-profile-detail header span,.profile-detail-empty span{color:#5f5b75;line-height:1.6}.instructor-profile-detail section{gap:8px;display:grid}.instructor-profile-detail h3{color:#20362f;margin:0;font-size:1.05rem}.instructor-profile-detail section p{color:#4f5d5a;white-space:pre-line;margin:0;line-height:1.75}.instructor-profile-detail section a{color:#168056;overflow-wrap:anywhere;width:fit-content;font-weight:850;line-height:1.5}.instructor-profile-detail dl{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin:0;display:grid}.instructor-profile-detail dl div{background:#f7fcfa;border:1px solid #e5f0ee;border-radius:14px;padding:16px}.instructor-profile-detail dt{color:#168056;font-size:.8rem;font-weight:900}.instructor-profile-detail dd{color:#273d38;white-space:pre-line;margin:7px 0 0;font-weight:750;line-height:1.65}@media (width<=700px){.hero{border-radius:22px;margin-top:20px}.hero h1{white-space:normal;max-width:100%}.hero:after{right:-180px}.course-grid{gap:14px}}.course-detail-shell{max-width:1440px}.course-detail-shell .hero{isolation:isolate;background-blend-mode:normal, screen;color:#fff;background:linear-gradient(135deg,#111827 0%,#233446 58%,#164e63 100%),repeating-linear-gradient(135deg,#ffffff12 0 1px,#0000 1px 14px);border:1px solid #d9dee8;border-radius:26px;gap:20px;margin:30px 0 28px;padding:clamp(28px,5vw,64px);display:grid;position:relative;overflow:hidden;box-shadow:0 24px 54px #1f29372e}.course-cover-hero{isolation:isolate;color:#fff;background:#09111f;border:1px solid #ffffff2b;border-radius:26px;margin:30px 0 28px;padding:clamp(28px,5vw,64px);display:grid;position:relative;overflow:hidden;box-shadow:0 24px 54px #1f29372e}.course-cover-hero__image{z-index:0;object-fit:cover;object-position:center;filter:blur(4px)saturate(1.08)brightness(1.04);width:calc(100% + 24px);height:calc(100% + 24px);position:absolute;inset:-12px;transform:scale(1.03)}.course-cover-hero__overlay{z-index:1;background:linear-gradient(90deg,#07101ce0 0%,#07101cba 46%,#07101c64 100%),linear-gradient(#07101c10 0%,#07101c82 100%);position:absolute;inset:0}.course-cover-hero__content{z-index:2;gap:20px;display:grid;position:relative}.course-detail-shell .hero:before{content:"";z-index:-1;background:linear-gradient(90deg,#2dd4bf,#f97316,#6366f1);height:8px;position:absolute;inset:auto 0 0}.course-detail-shell .hero:after{content:"";z-index:-1;background-color:#0000;background-image:linear-gradient(90deg,#ffffff0f 1px,#0000 1px),linear-gradient(#ffffff0d 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:38px 38px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0;-webkit-mask-image:linear-gradient(120deg,#000 0%,#0000 72%);mask-image:linear-gradient(120deg,#000 0%,#0000 72%)}.course-detail-shell .hero p,.course-detail-shell .hero h1,.course-detail-shell .hero span,.course-cover-hero p,.course-cover-hero h1,.course-cover-hero span,.course-hero-meta{z-index:1;position:relative}.course-detail-shell .hero p,.course-cover-hero p{color:#99f6e4;letter-spacing:.11em;margin:0}.course-detail-shell .hero h1,.course-cover-hero h1{letter-spacing:0;text-wrap:balance;white-space:normal;max-width:980px;margin:0;font-size:clamp(2.1rem,5vw,4.8rem);line-height:1.02}.course-detail-shell .hero span,.course-cover-hero span{color:#d9edf2;max-width:min(1120px,100%);font-size:clamp(1rem,1.5vw,1.14rem)}.course-hero-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:min(1120px,100%);max-width:100%;margin:10px 0 0;display:grid}.course-hero-meta div{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff10;border:1px solid #ffffff24;border-radius:8px;min-width:0;padding:14px 16px}.course-hero-meta dt{color:#99f6e4;font-size:.72rem;font-weight:900}.course-hero-meta dd{color:#fff;text-overflow:ellipsis;white-space:nowrap;margin:6px 0 0;font-weight:850;overflow:hidden}.course-detail-shell .learning-layout{grid-template-columns:minmax(0,1fr) minmax(320px,380px);gap:clamp(18px,2.5vw,32px)}.course-detail-shell .course-body-section{box-shadow:none;background:0 0;border:0;border-radius:0;gap:18px;padding:0}.learning-summary-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;display:grid}.learning-summary-strip div{background:#fff;border:1px solid #dfe6ee;border-radius:8px;min-width:0;padding:18px;box-shadow:0 10px 24px #1f29370c}.learning-summary-strip dt{color:#64748b;font-size:.76rem;font-weight:900}.learning-summary-strip dd{color:#111827;margin:7px 0 0;font-size:clamp(1.25rem,2vw,1.7rem);font-weight:900;line-height:1.1}.course-detail-shell .course-body-section__content{gap:18px}.course-detail-shell .preparation-notes-card{background:#fff7ed;border:1px solid #fed7aa;border-left:6px solid #ea580c;border-radius:8px;gap:10px;padding:clamp(18px,2.5vw,24px);display:grid;box-shadow:0 12px 26px #9a34120f}.course-detail-shell .preparation-notes-card p,.course-detail-shell .preparation-notes-card h2{margin:0}.course-detail-shell .preparation-notes-card p{color:#c2410c;letter-spacing:.12em;font-size:.76rem;font-weight:950}.course-detail-shell .preparation-notes-card h2{color:#111827;letter-spacing:0;font-size:clamp(1.2rem,1.8vw,1.55rem)}.course-detail-shell .preparation-notes-card div{color:#7c2d12;white-space:pre-wrap;max-width:88ch;font-size:clamp(.98rem,1.2vw,1.08rem);font-weight:750;line-height:1.65}.course-portfolio-card{background:#f0fdfa;border:1px solid #ccfbf1;border-radius:8px;justify-content:space-between;align-items:center;gap:18px;min-width:0;padding:clamp(18px,2.5vw,24px);display:flex;box-shadow:0 12px 26px #0f766e12}.course-portfolio-card div{gap:6px;min-width:0;display:grid}.course-portfolio-card p,.course-portfolio-card h2,.course-portfolio-card span{margin:0}.course-portfolio-card p{color:#0f766e;letter-spacing:.12em;font-size:.76rem;font-weight:950}.course-portfolio-card h2{color:#111827;letter-spacing:0;font-size:clamp(1.2rem,1.8vw,1.55rem)}.course-portfolio-card span{color:#115e59;font-size:.98rem;font-weight:750;line-height:1.55}.course-portfolio-card a{color:#fff;background:#0f766e;border:1px solid #14b8a6;border-radius:8px;flex:none;justify-content:center;align-items:center;min-height:48px;padding:0 20px;font-size:1rem;font-weight:900;line-height:1.2;text-decoration:none;display:inline-flex;box-shadow:0 14px 28px #0f766e1f}.course-portfolio-card a:hover{background:#0d9488}.course-portfolio-card a:focus-visible{outline-offset:3px;outline:3px solid #5eead4}.curriculum-shell{gap:14px;display:grid}.course-detail-shell .back{color:#334155;background:#fff;border:1px solid #cbd5e1;justify-self:start;margin:0;box-shadow:0 8px 18px #1f29370a}.course-detail-shell .curriculum-panel,.course-detail-shell .instructor-profile-panel,.course-detail-shell .enrollment-panel,.course-detail-shell .curriculum-overview-card{border-radius:8px}.course-detail-shell .curriculum-panel{background:linear-gradient(#fff 0%,#fbfdff 100%),repeating-linear-gradient(90deg,#0f172a08 0 1px,#0000 1px 12px);border:1px solid #dfe6ee;gap:18px;padding:clamp(18px,3vw,28px);display:grid;box-shadow:0 14px 34px #1f29370f}.course-detail-shell .curriculum-overview-card{box-shadow:none;border-color:#dce3ec}.course-detail-shell .curriculum-overview-item{box-sizing:border-box;width:100%;max-width:none;padding:clamp(18px,2.5vw,26px)}.course-detail-shell .curriculum-overview-card h2,.course-detail-shell .curriculum-overview-item h2,.course-detail-shell .lesson-section-heading h2,.course-detail-shell .lesson-header h2{color:#0f172a;letter-spacing:0}.course-detail-shell .lesson-section-heading{border-bottom:1px solid #e2e8f0;padding-bottom:12px}.course-detail-shell .lesson-section-heading span{color:#0e7490;background:#ecfeff;border:1px solid #bae6fd}.course-detail-shell .lesson-list{gap:12px}.course-detail-shell .lesson-item{background:linear-gradient(135deg,#fff 0%,#f8fbfc 54%,#eefaf8 100%),repeating-linear-gradient(90deg,#0f172a06 0 1px,#0000 1px 14px);border-color:#dfe6ee;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;min-height:84px;box-shadow:0 8px 18px #1f293708}.course-detail-shell .lesson-item-main{box-shadow:none;background:0 0;border:0;border-radius:8px;grid-column:1;align-self:stretch}.course-detail-shell .lesson-item:hover:not(:disabled){border-color:#14b8a6;box-shadow:0 16px 30px #0f766e18}.course-detail-shell .lesson-item-index{color:#fff;background:#111827;border-radius:8px}.course-detail-shell .enrollment-panel{background:#fff;border:1px solid #d8e3e6;border-top:6px solid #14b8a6;align-self:start;padding:clamp(20px,2.4vw,28px);position:sticky;top:112px;box-shadow:0 18px 44px #0f172a18}.course-detail-shell .learning-sidebar{position:sticky;top:112px}.course-detail-shell .learning-sidebar .enrollment-panel{position:static;top:auto}.course-detail-shell .my-group-schedule-card{background:#fff;border:1px solid #d8e3e6;border-top:6px solid #0e7490;border-radius:8px;gap:14px;padding:clamp(18px,2.2vw,24px);display:grid;box-shadow:0 18px 44px #0f172a12}.course-detail-shell .my-group-schedule-card>p{color:#0e7490;letter-spacing:.12em;margin:0;font-size:.72rem;font-weight:900}.course-detail-shell .my-group-schedule-card h2{color:#0f172a;letter-spacing:0;margin:0;font-size:1.12rem}.my-group-schedule-list{gap:10px;display:grid}.my-group-schedule-item{background:#f8fbff;border:1px solid #dbeafe;border-radius:8px;gap:5px;padding:12px;display:grid}.my-group-schedule-item span{color:#0e7490;font-size:.78rem;font-weight:900}.my-group-schedule-item strong{color:#0f172a;font-size:1rem}.my-group-schedule-item small,.my-group-schedule-item em{color:#475569;font-size:.86rem;font-style:normal;line-height:1.45}.my-group-schedule-item a{color:#2563eb;justify-self:start;font-size:.86rem;font-weight:850;text-decoration:none}.course-detail-shell .enrollment-panel>p,.course-detail-shell .instructor-profile-panel>p{color:#0e7490;letter-spacing:.12em}.course-detail-shell .enrollment-panel h2,.course-detail-shell .instructor-profile-panel h2{color:#0f172a;letter-spacing:0}.course-detail-shell .enrollment-panel button:not(.secondary){background:#ea580c;border-radius:8px;min-height:50px;box-shadow:0 14px 28px #ea580c24}.course-detail-shell .enrollment-panel select{color:#0f172a;min-height:44px;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:8px;margin-top:7px;padding:0 12px}.course-detail-shell .enrollment-detail-list div{border-color:#e2e8f0}.course-detail-shell .progress-pill{color:#115e59;background:#ccfbf1;border-radius:8px}.course-detail-shell .progress-pill.pending{color:#9a3412;background:#ffedd5}.course-detail-shell .instructor-profile-panel{background:#fff;border:1px solid #dfe6ee;padding:clamp(18px,2.5vw,24px);box-shadow:0 12px 30px #1f29370c}.course-detail-shell .instructor-profile-panel>p{font-size:.82rem;font-weight:950}.course-detail-shell .instructor-profile-panel h2{font-size:clamp(1.45rem,2vw,1.8rem);line-height:1.25}.course-detail-shell .instructor-profile-panel strong{color:#0f172a;font-size:clamp(1.2rem,1.6vw,1.45rem);line-height:1.3}.course-detail-shell .instructor-profile-panel span,.course-detail-shell .instructor-profile-panel__bio{color:#475569;font-size:clamp(1rem,1.25vw,1.12rem);line-height:1.65}.course-detail-shell .instructor-profile-panel__bio{color:#0e7490;max-width:92ch;font-weight:800}.course-detail-shell .instructor-profile-panel button{border-radius:8px;min-height:48px;padding:0 20px;font-size:1rem;font-weight:850}@media (prefers-reduced-motion:no-preference){.course-detail-shell .hero,.learning-summary-strip div,.course-detail-shell .curriculum-panel,.course-detail-shell .enrollment-panel{animation:.42s both course-console-rise}.learning-summary-strip div:nth-child(2){animation-delay:60ms}.learning-summary-strip div:nth-child(3),.course-detail-shell .enrollment-panel{animation-delay:.12s}}@keyframes course-console-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (width<=1020px){.course-detail-shell .learning-layout{grid-template-columns:1fr}.course-detail-shell .learning-sidebar,.course-detail-shell .enrollment-panel{position:static}}@media (width<=700px){.course-detail-shell .hero{padding:26px 20px 34px}.course-hero-meta,.learning-summary-strip{grid-template-columns:1fr}.course-portfolio-card{flex-direction:column;align-items:stretch}.course-portfolio-card a{width:100%}.course-detail-shell .lesson-item{grid-template-columns:auto minmax(0,1fr)}.course-detail-shell .lesson-item-main{grid-column:1/-1}.course-detail-shell .lesson-material-button{grid-column:2;justify-self:start}.course-detail-shell .lesson-header{align-items:start}.course-detail-shell .lesson-actions{justify-content:flex-start}}.learner-home .hero{display:none}.dashboard-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:24px;display:flex}.dashboard-heading h1{color:#211e3b;letter-spacing:-.07em;margin:3px 0 0;font-size:clamp(2rem,4vw,3.2rem);line-height:1}.dashboard-heading>p{color:#64748b;margin:0 0 4px}.dashboard-layout{grid-template-columns:minmax(0,1.45fr) minmax(340px,.85fr);align-items:start;gap:24px;display:grid}.dashboard-main,.dashboard-side{gap:16px;display:grid}.profile-card,.level-card,.learning-progress-panel,.activity-panel{background:#fff;border:1px solid #ebe8f5;border-radius:20px;box-shadow:0 10px 27px #332d660d}.profile-card{align-items:center;gap:16px;padding:24px;display:flex}.profile-avatar{color:#fff;background:linear-gradient(145deg,#6659ec,#a55eea);border-radius:21px;flex:none;place-items:center;width:64px;height:64px;font-size:1.7rem;font-weight:900;display:grid;box-shadow:0 12px 24px #5b4be833}.profile-details{gap:3px;min-width:0;display:grid}.profile-details span,.profile-details p{color:#64748b;font-size:.84rem}.profile-details h2{color:#211e3b;letter-spacing:-.04em;margin:0;font-size:1.4rem}.profile-details p{text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.profile-summary{text-align:right;border-left:1px solid #ebe8f5;gap:2px;margin-left:auto;padding-left:20px;display:grid}.profile-summary strong{color:#5145c6;font-size:1.45rem}.profile-summary span{color:#64748b;font-size:.78rem}.level-card{background:linear-gradient(112deg,#f4f1ff,#fff 70%);border-color:#ddd8ff;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:19px 22px;display:grid}.level-mark{clip-path:polygon(50% 0,100% 20%,87% 100%,13% 100%,0 20%);color:#fff;background:#f16c48;place-items:center;width:46px;height:54px;font-size:1.15rem;font-weight:900;display:grid}.level-card strong{color:#312e81}.level-card p{color:#64748b;margin:5px 0 0;font-size:.85rem;line-height:1.45}.level-stats{color:#64748b;white-space:nowrap;gap:5px;font-size:.76rem;display:grid}.level-stats b{color:#211e3b}.learning-progress-panel,.activity-panel{padding:22px}.panel-title{justify-content:space-between;align-items:end;gap:12px;margin-bottom:16px;display:flex}.panel-title h2{color:#211e3b;letter-spacing:-.04em;margin:3px 0 0;font-size:1.2rem}.panel-title>span{color:#756fb4;font-size:.8rem;font-weight:800}.learning-progress-list{gap:12px;display:grid}.learning-progress-card{color:#211e3b;text-align:left;background:linear-gradient(#fff,#fbfaff);border:1px solid #e8e4f7;border-radius:16px;grid-template-columns:minmax(0,1fr) 190px;align-items:center;gap:20px;width:100%;padding:17px;transition:border-color .2s,box-shadow .2s,transform .2s;display:grid}.learning-progress-card:hover,.learning-progress-card:focus-visible{border-color:#cbc3ff;transform:translateY(-1px);box-shadow:0 14px 28px #3f36700f}.learning-progress-card>div:first-child{gap:5px;min-width:0;display:grid}.learning-progress-card span:first-child{color:#756fb4;font-size:.72rem;font-weight:900}.learning-progress-card strong{color:#211e3b;text-overflow:ellipsis;white-space:nowrap;font-size:1rem;overflow:hidden}.learning-progress-card small{color:#64748b;font-size:.76rem;line-height:1.45}.learning-progress-meter{grid-template-columns:1fr auto;align-items:center;gap:9px;display:grid}.learning-progress-meter b{color:#5145c6;letter-spacing:-.03em;font-size:1.25rem}.learning-progress-meter i{background:#e7e3fa;border-radius:999px;grid-column:1/-1;height:8px;overflow:hidden}.learning-progress-meter em{border-radius:inherit;background:linear-gradient(90deg,#6659ec,#2eb67d);height:100%;display:block}.learning-status{color:#5145c6;background:#f0edff;border-radius:999px;justify-self:start;padding:5px 9px;font-size:.7rem;font-weight:900}.learning-progress-empty{color:#64748b;background:#f8f7ff;border-radius:14px;margin:0;padding:20px}.activity-panel ul{gap:14px;margin:0;padding:0;list-style:none;display:grid}.activity-panel li{grid-template-columns:auto 1fr;align-items:start;gap:10px;display:grid}.activity-dot{background:#f16c48;border-radius:50%;width:8px;height:8px;margin-top:6px;box-shadow:0 0 0 4px #fff0eb}.activity-panel li strong{color:#302d48;font-size:.86rem;display:block}.activity-panel li p,.activity-empty{color:#7b7890;margin:4px 0 0;font-size:.78rem;line-height:1.45}.activity-empty{padding:8px 0}@media (width<=900px){.dashboard-layout{grid-template-columns:1fr}.dashboard-side{grid-template-columns:1fr 1fr}.dashboard-side .activity-panel{height:auto}}@media (width<=620px){.student-dashboard{margin-top:20px}.dashboard-heading{gap:7px;display:grid}.dashboard-heading>p{margin:0}.profile-card{flex-wrap:wrap}.profile-summary{text-align:left;border-left:0;margin-left:0;padding-left:0}.level-card{grid-template-columns:auto 1fr}.level-stats{grid-column:1/-1;grid-template-columns:repeat(2,1fr);padding-top:4px}.learning-progress-card{grid-template-columns:1fr;gap:12px}.dashboard-side{grid-template-columns:1fr}}@media (width<=1040px){.app-topbar{grid-template-columns:auto auto 1fr;gap:10px;min-height:68px;padding:8px;top:8px}.app-brand:before{border-radius:14px;width:38px;height:38px}.app-brand small{display:none}.topbar-toggle{color:#40359a;background:#f1efff;border-radius:14px;padding:9px 12px;display:inline-flex}.topbar-menu{background:#fff;border:1px solid #e1ddef;border-radius:18px;padding:8px;display:none;position:absolute;top:calc(100% - 2px);left:0;right:0;box-shadow:0 16px 32px #2921511a}.topbar-menu.open{display:grid}.topbar-menu a{padding:11px}.topbar-profile{justify-self:end}.topbar-login-link{border-radius:14px;min-height:42px;padding:0 14px}.profile-trigger{min-height:46px;padding:5px}.profile-trigger-copy{display:none}}.public-courses-panel{background:#fff;border:1px solid #ebe8f5;border-radius:20px;margin-top:24px;padding:24px;box-shadow:0 10px 27px #332d660d}.dashboard-category-tabs{gap:8px;margin:0 0 16px;padding:2px;display:flex;overflow-x:auto}.dashboard-category-tabs button{color:#625f76;background:#fff;border:1px solid #e8e5f3;border-radius:999px;flex:none;padding:7px 12px;font-size:.78rem}.dashboard-category-tabs button.selected{color:#fff;background:#5145c6;border-color:#5145c6}.public-course-empty{color:#716e82;text-align:center;margin:0;padding:20px 0 4px}@media (width<=520px){.public-courses-panel{padding:18px}}.course-category-picker{grid-template-columns:repeat(auto-fit,minmax(142px,1fr));gap:10px;margin:0 0 20px;display:grid}.course-category-choice{color:#45405c;text-align:left;background:#fcfbff;border:1px solid #e9e6f3;border-radius:14px;grid-template-columns:auto 1fr;align-items:center;column-gap:8px;min-height:72px;padding:12px;display:grid}.course-category-choice:hover{background:#fff;border-color:#cfc8ff}.course-category-choice i{color:#6759e6;background:#efedff;border-radius:11px;grid-row:span 2;place-items:center;width:34px;height:34px;font-size:1rem;font-style:normal;display:grid}.course-category-choice strong{text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;overflow:hidden}.course-category-choice small{color:#858094;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.course-category-choice.selected{color:#fff;background:linear-gradient(135deg,#5145c6,#7869ee);border-color:#5b4fcd;box-shadow:0 10px 20px #5145c628}.course-category-choice.selected i{color:#fff;background:#ffffff24}.course-category-choice.selected small{color:#e8e4ff}@media (width<=520px){.course-category-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.course-category-choice{min-width:0}}.student-directory{background:#fff;border:1px solid #ebe8f5;border-radius:20px;padding:28px;box-shadow:0 10px 27px #332d660d}.directory-heading{margin-bottom:22px}.directory-heading .eyebrow{margin:0}.directory-heading h1{color:#211e3b;margin:4px 0 8px;font-size:clamp(1.8rem,4vw,2.7rem)}.directory-heading>p:last-child{color:#716e82;margin:0}.directory-empty{color:#716e82;text-align:center;margin:0;padding:35px 12px}.review-filter{color:#514d68;gap:7px;width:min(100%,360px);margin-bottom:20px;font-size:.85rem;font-weight:800;display:grid}.review-filter select{color:#302d48;background:#fff;border:1px solid #ddd8ee;border-radius:9px;padding:10px}.review-grid,.instructor-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.review-card,.instructor-card{background:#fcfbff;border:1px solid #eeeaf7;border-radius:16px;padding:20px}.review-card{gap:10px;display:grid}.review-card>div,.review-card footer{justify-content:space-between;align-items:center;gap:10px;display:flex}.review-stars{color:#f59e0b;letter-spacing:1px}.review-card small,.review-card footer{color:#777288;font-size:.78rem}.review-card h2{color:#29253d;margin:0;font-size:1.05rem}.review-card p{color:#615d72;margin:0;font-size:.88rem;line-height:1.6}.instructor-card{grid-template-columns:52px 1fr;align-items:start;gap:14px;display:grid}.instructor-avatar{color:#fff;background:linear-gradient(145deg,#6659ec,#a55eea);border-radius:17px;place-items:center;width:52px;height:52px;font-size:1.3rem;font-weight:900;display:grid}.instructor-card p{color:#756fb4;letter-spacing:.08em;margin:1px 0 5px;font-size:.68rem;font-weight:900}.instructor-card h2{color:#29253d;margin:0 0 8px;font-size:1.05rem}.instructor-card span{color:#615d72;font-size:.86rem;line-height:1.55}@media (width<=760px){.review-grid,.instructor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.student-directory{padding:20px}.review-grid,.instructor-grid{grid-template-columns:1fr}}:root{--student-ink:#101820;--student-ink-soft:#334155;--student-muted:#64748b;--student-bg:#f6f7f4;--student-surface:#fff;--student-line:#dbe3e6;--student-line-strong:#aab7bd;--student-teal:#0f766e;--student-teal-bright:#14b8a6;--student-cyan:#0891b2;--student-orange:#ea580c;--student-amber:#f59e0b;--student-panel-shadow:0 14px 34px #0f172a12;--student-lift-shadow:0 22px 54px #0f172a1c;--student-radius:8px;color:var(--student-ink);background:var(--student-bg)}html{background:var(--student-bg)}body{background:linear-gradient(90deg, #0f172a08 1px, transparent 1px), linear-gradient(180deg, #0f172a07 1px, transparent 1px), radial-gradient(circle at 10% -5%, #ccfbf1 0, transparent 24rem), radial-gradient(circle at 92% 8%, #ffedd5 0, transparent 22rem), var(--student-bg);min-height:100vh;color:var(--student-ink);background-size:36px 36px,36px 36px,auto,auto,auto;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body:before{content:"";z-index:-1;pointer-events:none;opacity:.72;background:repeating-linear-gradient(135deg,#0f172a06 0 1px,#0000 1px 12px),linear-gradient(#ffffff80,#0000 42rem);position:fixed;inset:0}button,input,select,textarea{font:inherit}button{border-radius:var(--student-radius);background:var(--student-teal);color:#fff;min-height:44px;box-shadow:0 12px 24px #0f766e1f}button:hover:not(:disabled){box-shadow:var(--student-lift-shadow)}button:disabled{cursor:not-allowed;opacity:.52}.secondary{border:1px solid var(--student-line-strong);color:var(--student-ink);background:#fff;box-shadow:0 8px 18px #0f172a0b}.text-button{min-height:auto;color:var(--student-teal);box-shadow:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #67e8f9}.app-shell{max-width:1440px;padding:20px clamp(16px,3vw,44px) 72px}.app-topbar,.guest-topbar{border-radius:var(--student-radius);background:#fffffff2;border:1px solid #d9e2e6;min-height:72px;top:12px;box-shadow:0 16px 38px #0f172a14}.guest-topbar{justify-content:space-between;display:flex}.guest-topbar .topbar-login-link{border-radius:var(--student-radius);background:linear-gradient(135deg, var(--student-ink), var(--student-teal)), repeating-linear-gradient(135deg, #ffffff1f 0 1px, transparent 1px 7px)}.app-brand{color:var(--student-ink)}.app-brand:before{border-radius:var(--student-radius);background:linear-gradient(135deg, var(--student-ink), #164e63 62%, var(--student-teal-bright)), repeating-linear-gradient(135deg, #ffffff24 0 1px, transparent 1px 7px);box-shadow:0 12px 24px #0f766e28}.app-brand span{color:var(--student-ink);letter-spacing:0}.app-brand small{color:var(--student-cyan)}.topbar-menu{border-radius:var(--student-radius);background:#f8fafc;border-color:#dfe7eb}.topbar-menu a{color:#475569;border-radius:6px}.topbar-menu a:hover,.topbar-menu a.active{color:var(--student-ink);background:#fff;box-shadow:0 8px 18px #0f172a0d}.profile-trigger{border-radius:var(--student-radius);box-shadow:none;border-color:#d9e2e6}.profile-avatar-small,.profile-avatar,.instructor-avatar{border-radius:var(--student-radius);background:linear-gradient(145deg, var(--student-ink), var(--student-teal));box-shadow:0 12px 24px #0f766e20}.profile-menu{border-radius:var(--student-radius);box-shadow:var(--student-lift-shadow);border-color:#d9e2e6}.profile-menu button{color:var(--student-ink-soft);border-radius:6px}.profile-menu button:hover{background:#ecfeff}.hero{isolation:isolate;border-radius:var(--student-radius);background-blend-mode:normal, screen;box-shadow:var(--student-lift-shadow);background:linear-gradient(130deg,#101820 0%,#203544 54%,#0f766e 100%),repeating-linear-gradient(135deg,#ffffff14 0 1px,#0000 1px 13px);border:1px solid #cfdae0;gap:18px;margin:34px 0 38px;padding:clamp(32px,6vw,78px);display:grid}.hero:before{content:"";z-index:-1;background:linear-gradient(90deg, var(--student-teal-bright), var(--student-orange), #38bdf8);height:8px;position:absolute;inset:auto 0 0}.hero:after{content:"";z-index:-1;border-radius:inherit;background-color:#0000;background-image:linear-gradient(90deg,#ffffff12 1px,#0000 1px),linear-gradient(#ffffff10 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:40px 40px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0;-webkit-mask-image:linear-gradient(110deg,#000,#0000 72%);mask-image:linear-gradient(110deg,#000,#0000 72%)}.hero p,.hero h1,.hero span{z-index:1;position:relative}.hero p,.eyebrow{color:var(--student-orange);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.74rem;font-weight:950}.hero p{color:#99f6e4}.hero h1{color:#fff;letter-spacing:0;text-wrap:balance;white-space:normal;max-width:1040px;margin:0;font-size:clamp(2.5rem,7vw,5.8rem);line-height:.98}.hero span{color:#d9edf2;max-width:760px;font-size:clamp(1rem,1.5vw,1.16rem);line-height:1.75}.section-heading,.dashboard-heading,.directory-heading,.panel-title{position:relative}.section-heading h2,.dashboard-heading h1,.directory-heading h1,.panel-title h2,.auth-page h1,.route-placeholder h1{color:var(--student-ink);letter-spacing:0}.section-heading>span,.dashboard-heading>p,.directory-heading>p:last-child,.route-placeholder>p:not(.eyebrow),.auth-page>p:not(.eyebrow){color:var(--student-muted)}.catalog-section,.my-class-section,.student-dashboard,.student-directory,.auth-page{position:relative}.category-tabs,.dashboard-category-tabs{border-radius:var(--student-radius);background:#ffffffc7;border:1px solid #dfe7eb;gap:8px;padding:4px}.category-tabs button,.dashboard-category-tabs button{min-height:42px;color:var(--student-ink-soft);box-shadow:none;background:0 0;border:1px solid #0000;border-radius:6px}.category-tabs button.selected,.dashboard-category-tabs button.selected{background:var(--student-ink);color:#fff;border-color:#99f6e4;box-shadow:0 10px 24px #0f172a18}.course-grid,.review-grid,.instructor-grid,.my-class-grid{gap:16px}.course-card,.my-class-card,.profile-card,.level-card,.learning-progress-panel,.activity-panel,.public-courses-panel,.student-directory,.auth-panel,.route-placeholder,.review-card,.instructor-card,.assessment-panel,.feedback-card{border:1px solid var(--student-line);border-radius:var(--student-radius);background:var(--student-surface);box-shadow:var(--student-panel-shadow)}.course-card{background:linear-gradient(#fff 0%,#fbfdff 100%),repeating-linear-gradient(90deg,#0f172a06 0 1px,#0000 1px 12px);border-top:6px solid #dbeafe;min-height:236px;padding:24px}.course-card:before{border-radius:var(--student-radius);background:linear-gradient(135deg,#ecfeff,#fff7ed),repeating-linear-gradient(135deg,#0f172a08 0 1px,#0000 1px 7px);border:1px solid #dbeafe;width:46px;height:46px;transition:transform .22s,border-color .22s,background .22s;top:18px;right:18px;transform:none}.course-card:nth-child(3n+2){border-top-color:#99f6e4}.course-card:nth-child(3n){border-top-color:#fed7aa}.course-card:hover,.course-card:focus-visible{border-color:var(--student-teal-bright);transform:translateY(-7px);box-shadow:0 24px 64px #0f766e30,0 0 0 3px #14b8a633}.course-card:hover:before,.course-card:focus-visible:before{border-color:var(--student-teal-bright);background:linear-gradient(135deg,#ccfbf1,#ffedd5),repeating-linear-gradient(135deg,#0f766e1a 0 1px,#0000 1px 7px);transform:translate(-4px,4px)rotate(2deg)}.course-card.enrolled{border-top-color:var(--student-teal-bright);box-shadow:inset 0 0 0 1px #99f6e4, var(--student-panel-shadow);background:linear-gradient(#f0fdfa 0%,#fff 62%),repeating-linear-gradient(90deg,#0f172a06 0 1px,#0000 1px 12px)}.course-card.enrolled:before{display:none}.course-card strong{color:var(--student-ink);letter-spacing:0;font-size:1.18rem}.course-card span{color:var(--student-muted)}.course-card small{color:var(--student-teal)}.course-card-meta-line{z-index:1;justify-content:space-between;align-items:center;gap:12px;min-width:0;margin-top:auto;display:flex}.course-card-meta-line small{min-width:0}.course-card-title{word-break:keep-all;overflow-wrap:anywhere;display:block;overflow:visible}.course-card:not(.enrolled):not(.has-cover) .course-card-title{padding-right:72px}.course-card-summary{-webkit-line-clamp:2;word-break:keep-all;overflow-wrap:anywhere;-webkit-box-orient:vertical;max-height:3.1em;line-height:1.55;display:-webkit-box;overflow:hidden}.course-card.has-cover{background:var(--student-surface);border-top-width:0;padding:0;overflow:hidden}.course-card.has-cover:before{display:none}.course-card-cover{aspect-ratio:16/9;object-fit:cover;width:100%;transition:transform .22s}.course-card.has-cover:hover .course-card-cover,.course-card.has-cover:focus-visible .course-card-cover{transform:scale(1.035)}@media (prefers-reduced-motion:reduce){.course-card:hover,.course-card:focus-visible,.course-card:hover:before,.course-card:focus-visible:before,.course-card.has-cover:hover .course-card-cover,.course-card.has-cover:focus-visible .course-card-cover{transform:none}}.course-card.has-cover>:not(.course-card-cover){margin-inline:22px}.course-card.has-cover strong{margin-top:18px}.course-card.has-cover span{line-height:1.55}.course-card.has-cover .course-card-meta-line{margin-top:18px;margin-bottom:22px}.course-card.has-cover .course-card-status{margin-inline:0}.my-class-card{color:#fff;background:linear-gradient(145deg,#101820,#0f766e),repeating-linear-gradient(135deg,#ffffff12 0 1px,#0000 1px 12px)}.my-class-card:nth-child(2),.my-class-card:nth-child(3){background:linear-gradient(145deg,#101820,#164e63),repeating-linear-gradient(135deg,#ffffff12 0 1px,#0000 1px 12px)}.progress-track{background:#ffffff36;height:8px}.progress-track span{background:linear-gradient(90deg,#99f6e4,#fed7aa)}.student-dashboard{margin-top:36px}.dashboard-heading{border:1px solid var(--student-line);border-radius:var(--student-radius);box-shadow:var(--student-panel-shadow);background:linear-gradient(120deg,#fff 0%,#f8fafc 100%),repeating-linear-gradient(90deg,#0f172a06 0 1px,#0000 1px 14px);align-items:start;padding:clamp(22px,4vw,34px)}.dashboard-heading h1{font-size:clamp(2.25rem,5vw,4.1rem)}.dashboard-layout{margin-top:18px}.profile-card,.level-card,.learning-progress-panel,.activity-panel{border-radius:var(--student-radius)}.profile-card{border-top:6px solid var(--student-teal-bright)}.profile-details h2,.learning-progress-card strong,.panel-title h2{color:var(--student-ink);letter-spacing:0}.profile-summary{border-left-color:var(--student-line)}.profile-summary strong,.learning-progress-meter b{color:var(--student-teal)}.level-card{background:linear-gradient(112deg,#fff,#ecfeff 72%),repeating-linear-gradient(135deg,#0f172a08 0 1px,#0000 1px 10px);border-color:#cbd5e1}.level-mark{clip-path:none;border-radius:var(--student-radius);background:var(--student-orange)}.learning-progress-card{border-radius:var(--student-radius);background:#fff}.learning-progress-card:hover,.learning-progress-card:focus-visible{border-color:var(--student-teal-bright)}.learning-progress-meter i{background:#e2e8f0;height:9px}.learning-progress-meter em{background:linear-gradient(90deg, var(--student-teal), var(--student-amber))}.learning-status{color:var(--student-teal);background:#ecfeff;border-radius:6px}.learning-status.completed{color:#166534;background:#dcfce7}.learning-status.overdue{color:#9a3412;background:#ffedd5}.activity-dot{background:var(--student-orange);box-shadow:0 0 0 4px #ffedd5}.public-courses-panel,.student-directory{padding:clamp(20px,3vw,30px)}.course-category-picker{grid-template-columns:repeat(auto-fit,minmax(168px,1fr))}.course-category-choice{border-color:var(--student-line);border-radius:var(--student-radius);background:#fff;min-height:82px}.course-category-choice i{color:var(--student-teal);background:#ecfeff;border-radius:6px}.course-category-choice strong{color:var(--student-ink)}.course-category-choice.selected{border-color:var(--student-teal-bright);background:linear-gradient(135deg, var(--student-ink), #164e63), repeating-linear-gradient(135deg, #ffffff14 0 1px, transparent 1px 8px);box-shadow:0 16px 34px #0f172a22}.course-category-choice.selected strong{color:#fff}.student-directory{margin-top:28px}.review-filter select,.auth-panel input,.issue-report-form select,.issue-report-form textarea{border-radius:var(--student-radius);min-height:44px;color:var(--student-ink);background:#fff;border:1px solid #cbd5e1}.review-card,.instructor-card,.feedback-card,.assessment-card{border-radius:var(--student-radius);background:linear-gradient(#fff,#fbfdff),repeating-linear-gradient(90deg,#0f172a05 0 1px,#0000 1px 12px)}.review-card h2,.instructor-card h2,.assessment-card h3{color:var(--student-ink);letter-spacing:0}.review-stars{color:var(--student-amber)}.instructor-card p{color:var(--student-orange)}.auth-page{border:1px solid var(--student-line);border-radius:var(--student-radius);max-width:1120px;box-shadow:var(--student-panel-shadow);background:linear-gradient(120deg,#fff,#f8fafc),repeating-linear-gradient(90deg,#0f172a06 0 1px,#0000 1px 14px);padding:clamp(20px,4vw,34px);display:grid}.auth-page>.eyebrow,.auth-page>h1,.auth-page>p:not(.eyebrow){max-width:100%}.auth-page>h1{text-wrap:balance;max-width:min(1060px,100%);font-size:clamp(3.2rem,5.4vw,5.2rem);line-height:1.06}.auth-panel{border-radius:var(--student-radius);box-shadow:var(--student-lift-shadow);background:linear-gradient(#fff 0%,#fbfdff 100%),repeating-linear-gradient(90deg,#0f172a05 0 1px,#0000 1px 12px);border:1px solid #d9e2e6;grid-template-columns:minmax(420px,1.2fr) minmax(360px,1fr);gap:0;margin-top:28px;padding:0;display:grid;overflow:hidden}.auth-panel__intro{color:#fff;background:linear-gradient(145deg,#0f172a 0%,#164e63 58%,#0f766e 100%),repeating-linear-gradient(135deg,#ffffff16 0 1px,#0000 1px 12px);align-content:end;gap:14px;min-height:520px;padding:clamp(28px,4vw,46px);display:grid;position:relative;overflow:hidden}.auth-panel__intro:before{content:"";background:linear-gradient(90deg, var(--student-teal-bright), #f97316);border-radius:999px;height:9px;position:absolute;inset:auto -18% 12% 16%;transform:rotate(17deg);box-shadow:0 0 34px #2dd4bf66}.auth-panel__intro span,.auth-panel__intro strong,.auth-panel__intro p{z-index:1;position:relative}.auth-panel__intro span{color:#99f6e4;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:950}.auth-panel__intro strong{color:#fff;text-wrap:balance;max-width:min(760px,100%);font-size:clamp(2rem,3.4vw,3.2rem);line-height:1.08}.auth-panel__intro p{color:#d9edf2;max-width:min(720px,100%);margin:0;font-size:.98rem;line-height:1.75}.auth-panel__body{align-content:center;padding:clamp(24px,4vw,46px)}.auth-tabs{border-color:var(--student-line);border-radius:var(--student-radius);background:#f8fafc}.auth-tab{color:var(--student-ink-soft);border-radius:6px}.auth-tab.active{background:var(--student-ink)}.auth-panel .auth-form{grid-template-columns:1fr;align-items:stretch}.auth-panel .auth-form label{color:var(--student-ink);font-size:.88rem}.auth-panel .auth-form input::placeholder{color:#94a3b8}.auth-submit{border-radius:var(--student-radius);background:linear-gradient(135deg, var(--student-ink), var(--student-teal));min-height:48px;font-weight:900;box-shadow:0 16px 28px #0f766e24}.auth-secondary{border:1px solid var(--student-line);border-radius:var(--student-radius);min-height:44px;color:var(--student-ink);background:#fff;font-weight:850}.auth-context{border-radius:var(--student-radius);color:var(--student-ink);background:#f0fdfa;border:1px solid #ccfbf1;gap:8px;padding:16px;display:grid}.auth-context strong{font-size:1rem}.auth-context p{color:var(--student-muted);margin:0;line-height:1.65}.social-login-list{grid-template-columns:1fr}.social-login-button{border-radius:var(--student-radius);min-height:48px;color:var(--student-ink);background:#fff;border-color:#d9e2e6}.social-login-button:hover{border-color:#99f6e4;transform:translateY(-1px);box-shadow:0 12px 24px #0f172a10}.social-login-button.google span{color:#1a73e8;background:#f8fafc}.social-login-button.kakao{color:#181600;background:#fee500;border-color:#f7df1e}.social-login-button.kakao span{color:#181600;background:#ffffff80}.social-login-button.naver{color:#fff;background:#03c75a;border-color:#03c75a}.social-login-button.naver span{color:#03c75a;background:#fff}.auth-divider{color:var(--student-muted)}.auth-divider:before,.auth-divider:after{background:var(--student-line)}.auth-consent{color:var(--student-muted)}.auth-consent input{width:18px;height:18px;min-height:auto;accent-color:var(--student-teal)}.notice{border-radius:var(--student-radius);color:#9f1239;background:#fff1f2;border:1px solid #fecaca}.social-email-page{border:1px solid var(--student-line);border-radius:var(--student-radius);max-width:1040px;box-shadow:var(--student-panel-shadow);background:linear-gradient(120deg,#fff,#f8fafc),repeating-linear-gradient(90deg,#0f172a06 0 1px,#0000 1px 14px);grid-template-columns:minmax(360px,.9fr) minmax(360px,1fr);margin:24px auto 0;display:grid;overflow:hidden}.social-email-page__summary{color:#fff;background:linear-gradient(145deg,#0f172a 0%,#134e4a 56%,#f97316 100%),repeating-linear-gradient(135deg,#ffffff16 0 1px,#0000 1px 12px);align-content:end;gap:14px;min-height:560px;padding:clamp(28px,4vw,48px);display:grid;position:relative;overflow:hidden}.social-email-page__summary:before{content:"";background:linear-gradient(90deg, #fbbf24, var(--student-teal-bright));border-radius:999px;height:9px;position:absolute;inset:14% 18% auto -16%;transform:rotate(-16deg);box-shadow:0 0 34px #f9731666}.social-email-page__summary span,.social-email-page__summary strong,.social-email-page__summary p{z-index:1;position:relative}.social-email-page__summary span{color:#fed7aa;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:950}.social-email-page__summary strong{color:#fff;text-wrap:balance;max-width:min(640px,100%);font-size:clamp(2rem,3.2vw,3.5rem);line-height:1.08}.social-email-page__summary p{color:#fff7ed;max-width:min(560px,100%);margin:0;line-height:1.75}.social-email-card{align-content:center;gap:16px;padding:clamp(24px,4vw,48px);display:grid}.social-email-card h1{color:var(--student-ink);text-wrap:balance;margin:0;font-size:clamp(2.2rem,4vw,4.1rem);line-height:1.06}.social-email-card p:not(.eyebrow):not(.notice){color:var(--student-muted);margin:0 0 8px;line-height:1.75}.social-email-card label{color:var(--student-ink);gap:7px;font-size:.9rem;font-weight:850;display:grid}.social-email-card input{border:1px solid var(--student-line);border-radius:var(--student-radius);min-height:46px;color:var(--student-ink);background:#fff;padding:0 12px}.social-email-card input:focus-visible{outline-offset:2px;border-color:var(--student-teal);outline:3px solid #99f6e4}.route-placeholder{border-top:6px solid var(--student-teal-bright)}.material-reader{background:#101820d9}.material-reader__shell,.lesson--reader{border-radius:var(--student-radius)}.material-reader__header{background:#f8fafc}.survey-response-card{gap:14px}.survey-response-card header{justify-content:space-between;align-items:start;gap:12px;display:flex}.survey-response-card header div{gap:4px;display:grid}.survey-response-card p{color:var(--student-muted);margin:0;line-height:1.6}.survey-response-card form,.survey-answer-field{gap:12px;display:grid}.survey-answer-field{border:1px solid var(--student-line);border-radius:var(--student-radius);background:#f8fafc;margin:0;padding:14px}.survey-answer-field legend{color:var(--student-ink);padding:0 6px;font-weight:850}.survey-answer-field legend span{color:var(--student-teal);margin-left:8px;font-size:.74rem}.survey-answer-field input[type=number],.survey-answer-field textarea{border:1px solid var(--student-line);border-radius:var(--student-radius);width:100%;color:var(--student-ink);font:inherit;padding:11px 12px}.survey-answer-field textarea{resize:vertical;min-height:100px}.survey-choice-row,.survey-choice-list{flex-wrap:wrap;gap:8px;display:flex}.survey-choice-list{flex-direction:column}.survey-choice-row label,.survey-choice-list label{border:1px solid var(--student-line);border-radius:var(--student-radius);color:var(--student-ink);background:#fff;align-items:center;gap:7px;padding:8px 10px;font-weight:750;display:inline-flex}@media (prefers-reduced-motion:no-preference){.hero,.dashboard-heading,.course-card,.profile-card,.level-card,.learning-progress-panel,.activity-panel,.public-courses-panel,.student-directory,.auth-page{animation:.38s both student-console-in}.course-card:nth-child(2n),.level-card,.activity-panel,.student-directory{animation-delay:50ms}.course-card:nth-child(3n),.learning-progress-panel{animation-delay:.1s}}@keyframes student-console-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (width<=1040px){.topbar-toggle{border-radius:var(--student-radius);color:var(--student-teal);background:#ecfeff;border:1px solid #ccfbf1}.topbar-menu{border-radius:var(--student-radius)}}@media (width<=900px){.auth-panel,.social-email-page{grid-template-columns:1fr}.auth-panel__intro,.social-email-page__summary{min-height:260px}.auth-panel__intro:before{inset:auto -24% 18% 20%}.social-email-page__summary:before{inset:16% 12% auto -20%}}@media (width<=760px){.app-shell{padding-inline:14px}.hero{padding:28px 20px 36px}.guest-topbar{gap:10px;padding-inline:10px}.topbar-login-link{min-width:72px;padding:0 12px;font-size:.84rem}.auth-page{padding:18px}.auth-panel__intro{min-height:auto;padding:24px}.auth-panel__intro strong{font-size:1.65rem}.auth-panel__body{padding:20px}.social-email-page{margin-top:8px}.social-email-page__summary{min-height:auto;padding:24px}.social-email-page__summary strong{font-size:1.65rem}.social-email-card{padding:20px}.dashboard-heading,.section-heading{gap:8px;display:grid}.course-card{min-height:210px}.course-category-picker{grid-template-columns:1fr}}.course-inquiry-board{background:linear-gradient(135deg,#fff 0%,#f7fbfb 54%,#fffaf1 100%);border:1px solid #d8e2ee;border-radius:8px;gap:16px;padding:18px;display:grid;box-shadow:0 14px 34px #0f172a14}.course-inquiry-board__header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.course-inquiry-board__header div{gap:5px;display:grid}.course-inquiry-board__header p{color:#0f766e;letter-spacing:.08em;margin:0;font-size:.72rem;font-weight:850}.course-inquiry-board__header h2{color:#162033;margin:0;font-size:1.08rem}.course-inquiry-board__header span{color:#64748b;font-size:.9rem;line-height:1.55}.course-inquiry-board__header strong{color:#0f766e;background:#ecfdf8;border:1px solid #b9e3dd;border-radius:999px;flex:none;padding:6px 10px;font-size:.75rem}.course-inquiry-form{gap:11px;display:grid}.course-inquiry-form label{color:#334155;gap:6px;font-size:.84rem;font-weight:750;display:grid}.course-inquiry-form input,.course-inquiry-form textarea{box-sizing:border-box;color:#162033;width:100%;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:10px 12px}.course-inquiry-form textarea{resize:vertical;min-height:122px}.course-inquiry-actions{flex-wrap:wrap;gap:8px;display:flex}.course-inquiry-message,.course-inquiry-empty,.course-inquiry-note{color:#64748b;margin:0;font-size:.86rem;line-height:1.55}.course-inquiry-message{color:#0f766e;background:#ecfdf8;border:1px solid #b9e3dd;border-radius:8px;padding:10px 12px}.course-inquiry-list{gap:12px;display:grid}.course-inquiry-card{background:#ffffffdb;border:1px solid #d8e2ee;border-radius:8px;gap:10px;padding:14px;display:grid}.course-inquiry-card--row{width:100%;color:inherit;cursor:pointer;text-align:left;box-shadow:none}.course-inquiry-card--row:hover{background:#f8fffd;border-color:#14b8a6}.course-inquiry-card--row:hover:not(:disabled){transform:none}.course-inquiry-card__content,.course-inquiry-card header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.course-inquiry-card header div,.course-inquiry-card__content div{gap:5px;display:grid}.course-inquiry-card header span,.course-inquiry-card__content div>span{color:#3730a3;background:#eef2ff;border-radius:999px;width:max-content;padding:4px 8px;font-size:.72rem;font-weight:800}.course-inquiry-card h3,.course-inquiry-card h2,.course-inquiry-card p{margin:0}.course-inquiry-card h3,.course-inquiry-card h2{color:#162033;font-size:.98rem}.course-inquiry-card>p{color:#334155;white-space:pre-wrap;font-size:.9rem;line-height:1.62}.course-inquiry-card small,.course-reply small{color:#94a3b8;font-size:.76rem}.course-reply-thread{border-left:3px solid #99f6e4;gap:9px;padding-left:12px;display:grid}.course-reply{background:#f6fffc;border:1px solid #d7f3ee;border-radius:8px;gap:6px;padding:10px;display:grid}.course-reply--learner{background:#f8fafc;border-color:#dbe4ef}.course-reply strong{color:#0f766e;font-size:.82rem}.course-reply--learner strong{color:#334155}.course-reply p{color:#164e63;white-space:pre-wrap;margin:0;font-size:.88rem;line-height:1.58}.course-reply--learner p{color:#334155}.course-inquiry-view{box-sizing:border-box;gap:16px;width:100%;margin:0 auto 56px;display:grid}.course-inquiry-view__header{box-sizing:border-box;background:linear-gradient(135deg,#fff 0%,#f7fbfb 54%,#fffaf1 100%);border:1px solid #d8e2ee;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:16px;padding:18px;display:grid;box-shadow:0 14px 34px #0f172a14}.course-inquiry-view__header div{gap:6px;min-width:0;display:grid}.course-inquiry-view__header p,.course-inquiry-view__empty p{color:#0f766e;letter-spacing:.08em;margin:0;font-size:.72rem;font-weight:850}.course-inquiry-view__header h1,.course-inquiry-view__empty h1,.course-inquiry-view__empty h2{color:#162033;margin:0}.course-inquiry-view__header h1{font-size:clamp(1.35rem,3vw,1.9rem)}.course-inquiry-view__header span,.course-inquiry-view__empty span{color:#64748b;font-size:.92rem;line-height:1.6}.course-inquiry-view__header button{white-space:nowrap;max-width:100%}.course-inquiry-list--full .course-inquiry-card h2{color:#162033;margin:0;font-size:1.02rem}.course-inquiry-detail-card{background:#fff;border:1px solid #d8e2ee;border-radius:8px;gap:14px;padding:18px;display:grid;box-shadow:0 14px 34px #0f172a12}.course-inquiry-detail-card>header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.course-inquiry-detail-card>header div{gap:7px;display:grid}.course-inquiry-detail-card>header span{color:#3730a3;background:#eef2ff;border-radius:999px;width:max-content;padding:4px 8px;font-size:.72rem;font-weight:800}.course-inquiry-detail-card h2,.course-inquiry-detail-card>p{margin:0}.course-inquiry-detail-card h2{color:#162033;font-size:1.24rem}.course-inquiry-detail-card>p{color:#334155;white-space:pre-wrap;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:14px;line-height:1.65}.course-inquiry-form--page{background:#fff;border:1px solid #d8e2ee;border-radius:8px;padding:18px;box-shadow:0 14px 34px #0f172a12}.course-reply-followup-form{border-top:1px solid #e2e8f0;gap:11px;padding-top:14px;display:grid}.course-reply-followup-form label{color:#334155;gap:7px;font-size:.9rem;font-weight:800;display:grid}.course-reply-followup-form textarea{box-sizing:border-box;color:#162033;width:100%;min-height:132px;font:inherit;resize:vertical;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:10px 12px}.course-reply-followup-form button{justify-self:start}.course-inquiry-form--page textarea{min-height:220px}.course-inquiry-view__empty{background:#fff;border:1px solid #d8e2ee;border-radius:8px;gap:8px;padding:24px;display:grid}@media (width<=760px){.course-inquiry-view__header{grid-template-columns:1fr}.course-inquiry-view__header button{white-space:normal;justify-self:start}.course-inquiry-detail-card>header,.course-inquiry-card header,.course-inquiry-board__header{flex-direction:column}}
