@import "https://fonts.googleapis.com/css2?family=Coiny&family=Nunito:wght@300;400;500;600;700;800&display=swap";:root{--pink:#ffe5ec;--pink-deep:#ff8fab;--yellow:#fff4d6;--yellow-deep:#f4c430;--green:#ddf4e7;--green-deep:#48bb78;--blue:#dceeff;--blue-deep:#4299e1;--purple:#fff0f5;--purple-deep:#e91e7b;--bg:#faf9fb;--surface:#fff;--surface-hover:#f8f7fa;--text:#2d3748;--text-secondary:#718096;--text-muted:#a0aec0;--border:#edf2f7;--border-light:#f7fafc;--accent:#e91e7b;--accent-light:#f472a8;--accent-soft:#fce7f3;--accent-strong:#b83280;--success-soft:#f0fff4;--success:#38a169;--success-strong:#22543d;--info-soft:#ebf8ff;--info:#3182ce;--info-strong:#2c5282;--warning-soft:#fffaeb;--warning:#dd6b20;--warning-strong:#b7791f;--danger-soft:#fff5f5;--danger:#e53e3e;--danger-strong:#c53030;--gray-200:#e2e8f0;--gray-300:#cbd5e0;--gray-600:#4a5568;--gradient-brand:linear-gradient(135deg, #f472a8, #e91e7b);--sidebar-w:260px;--topbar-h:64px;--radius:14px;--radius-sm:8px;--radius-lg:20px;--shadow-sm:0 2px 4px #00000005;--shadow:0 6px 18px #0000000a;--shadow-lg:0 10px 30px #0000000f;--shadow-glow:0 0 20px #e91e7b1f}*{box-sizing:border-box;margin:0;padding:0}button,input,select,textarea{font-family:inherit}::-webkit-scrollbar{width:14px;height:14px}::-webkit-scrollbar-track{background:var(--pink);border:1.5px dashed var(--pink-deep);border-radius:20px;margin:3px}::-webkit-scrollbar-thumb{background:var(--pink-deep);border:3.5px solid var(--pink);border-radius:20px}::-webkit-scrollbar-thumb:hover{background:var(--accent)}*{scrollbar-width:auto;scrollbar-color:var(--pink-deep) var(--pink)}body{background:var(--bg);color:var(--text);font-family:Nunito,-apple-system,sans-serif;font-weight:500;line-height:1.6;overflow-x:hidden}.app-layout{min-height:100vh;display:flex}.sidebar{display:none!important}.sidebar-logo{border-bottom:1px solid var(--border-light);align-items:center;gap:12px;padding:20px 24px;display:flex}.logo-icon{background:linear-gradient(135deg, var(--pink-deep), var(--purple-deep));color:#fff;border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;font-family:Coiny,cursive;font-size:20px;display:flex}.logo-text{background:linear-gradient(135deg, var(--pink-deep), var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-family:Coiny,cursive;font-size:18px}.sidebar-nav{flex-direction:column;flex:1;gap:2px;padding:12px;display:flex;overflow-y:auto}.nav-item{border-radius:var(--radius-sm);cursor:pointer;color:var(--text-secondary);text-align:left;background:0 0;border:none;align-items:center;gap:12px;width:100%;padding:11px 16px;font-family:inherit;font-size:14px;font-weight:500;transition:all .2s;display:flex}.nav-item:hover{background:var(--surface-hover);color:var(--text)}.nav-item.active{color:var(--accent);background:linear-gradient(135deg,#e91e7b14,#f472a814);font-weight:600}.nav-item.active .nav-icon{color:var(--accent)}.nav-icon{flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:18px;display:flex}.sidebar-footer{border-top:1px solid var(--border-light);padding:16px}.user-profile{border-radius:var(--radius-sm);align-items:center;gap:12px;padding:8px;display:flex}.user-avatar{background:linear-gradient(135deg, var(--green-deep), var(--blue-deep));color:#fff;border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;font-size:16px;font-weight:700;display:flex}.user-info{flex-direction:column;display:flex}.user-name{font-size:13px;font-weight:600}.user-level{color:var(--text-muted);font-size:11px}.main-content{flex:1;max-width:100vw;min-height:100vh;margin-left:0;transition:margin-left .3s cubic-bezier(.4,0,.2,1);overflow-x:hidden}.topbar{height:var(--topbar-h);background:var(--surface);border-bottom:1px solid var(--border-light);z-index:50;align-items:center;gap:clamp(6px,1.5vw,16px);padding:0 clamp(8px,2vw,28px);display:flex;position:sticky;top:0}.menu-toggle{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;width:36px;height:36px;color:var(--text-secondary);justify-content:center;align-items:center;transition:all .2s;display:flex}.menu-toggle:hover{background:var(--surface-hover);color:var(--accent);border-color:var(--accent-light)}@media (width>=769px){.app-layout.sidebar-collapsed .sidebar{transform:translate(-100%)}.app-layout.sidebar-collapsed .main-content{margin-left:0}}.search-box{background:var(--bg);border-radius:10px;flex:1;align-items:center;gap:8px;min-width:0;max-width:480px;padding:0 14px;display:flex}.search-box input{color:var(--text);background:0 0;border:none;outline:none;flex:1;padding:10px 0;font-family:inherit;font-size:14px}.search-icon{color:var(--text-muted);flex-shrink:0;font-size:16px}.topbar-actions{flex-shrink:0;align-items:center;gap:clamp(4px,1vw,12px);margin-left:auto;display:flex}.notif-btn{cursor:pointer;background:0 0;border:none;padding:6px;font-size:20px;position:relative}.notif-badge{background:var(--danger);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:10px;font-weight:700;display:flex;position:absolute;top:0;right:0}.page-content{padding:clamp(10px,3vw,28px);animation:.3s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.page-title{color:var(--text);margin-bottom:4px;font-family:Coiny,cursive;font-size:clamp(18px,4vw,26px)}.page-subtitle{color:var(--text-secondary);margin-bottom:clamp(12px,3vw,24px);font-size:clamp(12px,2vw,14px)}.card{background:var(--surface);border-radius:var(--radius);border:2px solid var(--gray-200);padding:24px;transition:box-shadow .2s,transform .2s;box-shadow:0 8px 24px #959da51f,0 2px 8px #0000000a}.card:hover{box-shadow:0 12px 28px #00000017,0 3px 8px #0000000d}.card-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.card-title{font-size:16px;font-weight:700}.card-badge{border-radius:20px;padding:4px 12px;font-size:11px;font-weight:600}.grid-2{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.grid-4{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}.grid-auto{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;display:grid}.stat-card{border-radius:var(--radius);background:var(--surface);border:1px solid var(--border-light);align-items:center;gap:16px;padding:20px;transition:transform .2s;display:flex}.stat-card:hover{transform:translateY(-2px)}.stat-icon{border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;font-size:22px;display:flex}.stat-value{font-size:24px;font-weight:800;line-height:1}.stat-label{color:var(--text-secondary);margin-top:2px;font-size:13px}.progress-bar{background:var(--border-light);border-radius:4px;height:8px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--accent), var(--accent-light));border-radius:4px;height:100%;transition:width .6s cubic-bezier(.4,0,.2,1)}.btn{border-radius:var(--radius-sm);cursor:pointer;border:none;align-items:center;gap:8px;padding:10px 20px;font-family:inherit;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.btn-primary{background:linear-gradient(135deg, var(--accent), var(--accent-light));color:#fff;box-shadow:0 4px 12px #e91e7b4d}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px #e91e7b66}.btn-secondary{background:var(--bg);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{background:var(--surface-hover)}.btn-sm{padding:6px 14px;font-size:12px}.btn-lg{padding:14px 28px;font-size:16px}.tag{border-radius:20px;align-items:center;gap:4px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-flex}.tag-pink{background:var(--pink);color:var(--pink-deep)}.tag-green{background:var(--green);color:var(--green-deep)}.tag-blue{background:var(--blue);color:var(--blue-deep)}.tag-yellow{background:var(--yellow);color:var(--yellow-deep)}.tag-purple{background:var(--purple);color:var(--purple-deep)}.quest-item{border-radius:var(--radius-sm);background:var(--bg);align-items:center;gap:14px;padding:14px 16px;transition:background .2s;display:flex}.quest-item:hover{background:var(--surface-hover)}.quest-icon{font-size:24px}.quest-info{flex:1}.quest-title{font-size:14px;font-weight:600}.quest-progress-text{color:var(--text-muted);font-size:12px}.quest-xp{color:var(--accent);font-size:13px;font-weight:700}.continue-item{border-radius:var(--radius-sm);background:var(--bg);cursor:pointer;align-items:center;gap:14px;padding:16px;transition:all .2s;display:flex}.continue-item:hover{background:var(--surface-hover);transform:translate(4px)}.continue-icon{font-size:28px}.continue-info{flex:1}.continue-title{font-size:14px;font-weight:600}.continue-sub{color:var(--text-muted);font-size:12px}.flashcard-container{perspective:1000px;cursor:pointer;width:100%;max-width:480px;height:440px;margin:0 auto}.flashcard{width:100%;height:100%;transform-style:preserve-3d;will-change:transform;transition:transform .6s cubic-bezier(.4,0,.2,1);position:relative;transform:translate(0,0)}.flashcard.flipped{transform:rotateY(180deg)translate(0,0)}.flashcard-front,.flashcard-back{backface-visibility:hidden;border-radius:var(--radius-lg);box-shadow:var(--shadow);flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0;overflow:hidden;transform:translate(0,0)}.flashcard-front{background:linear-gradient(135deg, var(--accent), var(--accent-light));color:#fff}.flashcard-back{background:var(--surface);border:2px solid var(--border-light);transform:rotateY(180deg)}.flashcard-word{margin-bottom:12px;font-family:Coiny,cursive;font-size:48px}.flashcard-pronunciation{opacity:.8;margin-bottom:8px;font-size:18px}.flashcard-type{background:#fff3;border-radius:20px;padding:4px 14px;font-size:13px}.flashcard-meaning{color:var(--accent);margin-bottom:16px;font-size:28px;font-weight:700}.flashcard-example{text-align:center;color:var(--text-secondary);font-size:14px;line-height:1.8}.flip-hint-icon{animation:3.2s ease-in-out infinite flip-hint-spin;display:inline-block}@keyframes flip-hint-spin{0%,65%{transform:rotate(0)}82%{transform:rotate(180deg)}to{transform:rotate(360deg)}}.hangul-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:10px;display:grid}.hangul-grid--alpha{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.hangul-alpha-card{background:var(--surface);border:2px solid var(--border-light);border-radius:var(--radius-sm);flex-direction:column;min-height:0;transition:border-color .2s,box-shadow .2s;display:flex;overflow:hidden}.hangul-alpha-card:hover{border-color:var(--accent);box-shadow:var(--shadow-glow)}.hangul-alpha-card--consonant:hover{border-color:var(--green-deep)}.hangul-alpha-card__listen{cursor:pointer;text-align:center;width:100%;min-height:148px;font:inherit;color:inherit;box-sizing:border-box;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:6px;margin:0;padding:18px 14px 12px;display:flex}.hangul-alpha-card__listen:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.hangul-alpha-card__char{letter-spacing:-.02em;font-family:Coiny,Nunito,sans-serif;font-size:clamp(42px,3.2vw,52px);font-weight:800;line-height:1.05}.hangul-alpha-card__name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:14px;font-weight:700;line-height:1.25;overflow:hidden}.hangul-alpha-card__rom{color:var(--text-secondary);font-size:13px;font-weight:700;line-height:1.25}.hangul-alpha-card__sound{color:var(--text-secondary);-webkit-line-clamp:2;word-break:break-word;-webkit-box-orient:vertical;max-width:100%;padding:0 2px;font-size:13px;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.hangul-alpha-card__sound strong{font-weight:800}.hangul-alpha-card__hear{color:var(--accent);opacity:1;background:#e91e7b14;border-radius:999px;align-items:center;gap:5px;margin-top:6px;padding:4px 10px;font-size:13px;font-weight:800;display:inline-flex}.hangul-alpha-card--consonant .hangul-alpha-card__hear{color:var(--green-deep);background:#48bb781a}.hangul-alpha-card__srs{border:none;border-top:1px solid var(--border-light);width:100%;min-height:40px;color:var(--text-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;background:#00000005;justify-content:center;align-items:center;margin:0;padding:8px 10px;font-family:inherit;font-size:12px;font-weight:700;display:flex}.hangul-alpha-card__srs:hover{color:var(--accent);background:#805ad50f}.hangul-alpha-card--consonant .hangul-alpha-card__srs:hover{color:var(--green-deep);background:#48bb7814}.hangul-alpha-card__srs:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media (width<=900px){.hangul-grid--alpha{grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:12px}.hangul-alpha-card__listen{gap:5px;min-height:128px;padding:14px 10px 10px}.hangul-alpha-card__char{font-size:clamp(36px,5vw,44px)}}@media (width<=520px){.hangul-grid--alpha{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.hangul-alpha-card__listen{gap:3px;min-height:44px;padding:10px 6px 6px}.hangul-alpha-card__char{letter-spacing:normal;font-size:30px}.hangul-alpha-card__name{font-size:12px}.hangul-alpha-card__rom{font-size:12px;font-weight:600}.hangul-alpha-card__sound{font-size:10px;font-weight:600}.hangul-alpha-card__hear{background:0 0;gap:4px;margin-top:4px;padding:0;font-size:11px;font-weight:700}.hangul-alpha-card__srs{min-height:40px;padding:6px 8px;font-size:11px}}.hangul-cell{aspect-ratio:1;background:var(--surface);border:2px solid var(--border-light);border-radius:var(--radius-sm);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:4px;transition:all .2s;display:flex}.hangul-cell:hover{border-color:var(--accent);box-shadow:var(--shadow-glow);transform:scale(1.08)}.hangul-cell.active{border-color:var(--accent);background:var(--purple)}.hangul-char{font-size:32px;font-weight:700}.hangul-rom{color:var(--text-muted);font-size:11px}.grammar-card{background:var(--surface);border:2px solid var(--gray-200);border-radius:var(--radius);cursor:pointer;padding:24px;transition:all .25s;box-shadow:0 8px 24px #959da51f,0 2px 8px #0000000a}.grammar-card:hover{border-color:var(--accent);box-shadow:0 10px 24px #00000014, 0 3px 6px #0000000a, var(--shadow-glow);transform:translateY(-3px)}.grammar-pattern{color:var(--accent);margin-bottom:6px;font-size:24px;font-weight:800}.grammar-name{margin-bottom:8px;font-size:15px;font-weight:600}.grammar-formula{color:var(--text-secondary);background:var(--bg);border-radius:var(--radius-sm);padding:8px 12px;font-size:13px}.exercise-box{background:var(--bg);border-radius:var(--radius);margin-top:16px;padding:24px}.exercise-question{margin-bottom:16px;font-size:18px;font-weight:600}.exercise-input{border:2px solid var(--border);border-radius:var(--radius-sm);outline:none;width:100%;padding:12px 16px;font-family:inherit;font-size:16px;transition:border-color .2s}.exercise-input:focus{border-color:var(--accent)}.exercise-input.correct{border-color:var(--success);background:var(--success-soft)}.exercise-input.wrong{border-color:var(--danger);background:var(--danger-soft)}.exercise-hint{color:var(--text-muted);margin-top:8px;font-size:13px;font-style:italic}.syl-root{flex-direction:column;gap:16px;width:100%;max-width:760px;margin:0 auto;display:flex}.syl-mode-bar{background:var(--surface);border:1.5px solid var(--border);border-radius:12px;gap:4px;width:100%;max-width:360px;margin:0 auto;padding:4px;display:flex}.syl-mode-tab{min-height:42px;color:var(--text-secondary);font:inherit;cursor:pointer;touch-action:manipulation;background:0 0;border:none;border-radius:9px;flex:1 1 0;font-size:14px;font-weight:700;transition:background .15s,color .15s,box-shadow .15s}.syl-mode-tab:hover:not(.is-active){color:var(--text);background:color-mix(in srgb, var(--bg) 70%, transparent)}.syl-mode-tab.is-active{background:var(--bg,#fff);color:var(--accent);box-shadow:0 1px 4px color-mix(in srgb, var(--text) 12%, transparent);border:1.5px solid color-mix(in srgb, var(--accent) 35%, var(--border))}.syl-mode-panel{min-width:0}.syl-mode-tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.syl-section-title{color:var(--text);margin:0;font-size:18px;font-weight:800;line-height:1.3}.syl-step-body,.syl-lead{color:var(--text-secondary);margin:0 0 10px;font-size:15px;line-height:1.55}.syl-note{color:var(--text-secondary);margin:0;font-size:13px}.syl-muted{color:var(--text-muted);font-weight:500}.syl-term-kr{color:var(--text-muted);font-size:.92em;font-weight:600}.syl-theory{width:100%}.syl-theory-inner{max-width:740px;margin:0 auto}.syl-theory-header{margin-bottom:14px}.syl-theory-header .syl-section-title{margin-bottom:8px}.syl-accordion{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.syl-accordion-item{border:1.5px solid var(--border);border-radius:var(--radius-sm,12px);background:var(--surface);overflow:hidden}.syl-accordion-item.is-open{border-color:color-mix(in srgb, var(--accent) 28%, var(--border))}.syl-accordion-heading{font-size:inherit;font-weight:inherit;margin:0}.syl-accordion-trigger{cursor:pointer;text-align:left;width:100%;font:inherit;color:var(--text);touch-action:manipulation;background:0 0;border:none;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.syl-accordion-trigger:hover{background:color-mix(in srgb, var(--bg) 55%, transparent)}.syl-accordion-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.syl-accordion-meta{flex-direction:column;gap:2px;min-width:0;display:flex}.syl-step-num{letter-spacing:.04em;text-transform:uppercase;color:var(--accent);font-size:11px;font-weight:700}.syl-accordion-title{font-size:15px;font-weight:800;line-height:1.35}.syl-accordion-state{width:28px;height:28px;color:var(--text-muted);background:var(--bg);border:1px solid var(--border);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;font-weight:700;display:inline-flex}.syl-accordion-panel{border-top:1px solid var(--border-light,var(--border))}.syl-accordion-body{padding:14px 16px 18px}.syl-formula{background:color-mix(in srgb, var(--purple) 70%, var(--surface));border:1.5px solid color-mix(in srgb, var(--accent) 25%, transparent);border-radius:var(--radius-sm);text-align:center;margin:10px 0 14px;padding:12px 14px}.syl-formula-vi{color:var(--text);margin-bottom:4px;font-size:15px;font-weight:700}.syl-formula-kr{color:var(--text-muted);font-size:13px;font-weight:600}.syl-layout-grid,.syl-group-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin-top:10px;display:grid}.syl-layout-card,.syl-group-card{background:var(--bg);border:1px solid var(--border-light,var(--border));border-radius:10px;margin-top:0;padding:12px 14px}.syl-layout-title{margin-bottom:2px;font-size:14px;font-weight:800}.syl-layout-when{margin-bottom:8px;font-size:12px}.syl-layout-note{color:var(--text-secondary);margin:8px 0 0;font-size:13px;line-height:1.45}.syl-diagram{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin:8px 0;display:flex}.syl-diagram-row,.syl-diagram-col,.syl-diagram-complex{justify-content:center;align-items:center;gap:6px;display:flex}.syl-diagram-col{flex-direction:column}.syl-diagram-complex{grid-template-columns:1fr 1fr;gap:6px;display:grid}.syl-diagram-cell{border:1.5px solid var(--border);background:var(--surface);border-radius:10px;justify-content:center;align-items:center;min-width:44px;min-height:44px;font-size:22px;font-weight:800;display:flex}.syl-diagram-cell--choseong{border-color:color-mix(in srgb, var(--blue-deep) 45%, var(--border));background:var(--blue)}.syl-diagram-cell--jungseong{border-color:color-mix(in srgb, var(--accent) 40%, var(--border));background:var(--pink)}.syl-diagram-arrow{color:var(--text-muted);font-size:20px;font-weight:800}.syl-diagram-result{color:var(--accent);font-size:36px;font-weight:900;line-height:1}.syl-jamo-row{flex-wrap:wrap;gap:6px;margin:10px 0;display:flex}.syl-jamo-pill{background:var(--surface);border:1.5px solid var(--border);border-radius:8px;justify-content:center;align-items:center;min-width:32px;height:32px;padding:0 8px;font-size:15px;font-weight:700;display:inline-flex}.syl-mini-example{align-items:center;gap:10px;margin-top:8px;display:flex}.syl-mini-char{color:var(--accent);font-size:28px;font-weight:900}.syl-batchim-visual{flex-direction:column;align-items:center;gap:12px;margin:12px 0;display:flex}.syl-block{flex-direction:column;align-items:center;gap:4px;display:flex}.syl-block-main{border:1.5px dashed color-mix(in srgb, var(--accent) 40%, var(--border));background:var(--surface);border-radius:14px;justify-content:center;align-items:center;width:80px;height:80px;display:flex}.syl-block--batchim .syl-block-main{border-style:solid;border-color:var(--green-deep);background:var(--green)}.syl-block-char{color:var(--accent);font-size:44px;font-weight:900;line-height:1}.syl-block-batchim-label{color:var(--green-deep);font-size:12px;font-weight:700}.syl-part-chips{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.syl-part-chip{background:var(--surface);border:1px solid var(--border);color:var(--text-muted);border-radius:12px;flex-direction:column;align-items:center;gap:1px;padding:8px 12px;font-size:11px;display:flex}.syl-part-chip strong{color:var(--text);font-size:22px}.syl-part-chip .syl-term-kr{font-size:10px}.syl-breakdown-line{text-align:center;color:var(--text-secondary);margin-top:8px;font-size:14px;font-weight:600}.syl-more-examples{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:14px;display:flex}.syl-example-tag{border:1px solid var(--border);background:var(--surface);font:inherit;color:var(--text);border-radius:999px;align-items:baseline;gap:4px;padding:8px 12px;line-height:1.3;display:inline-flex}.syl-theory-cta{flex-direction:column;align-items:center;gap:8px;margin-top:20px;padding:16px 0 4px;display:flex}.syl-cta-practice{border-radius:999px;min-height:48px;padding:12px 28px;font-size:15px;font-weight:800}.syl-cta-hint{text-align:center;margin:0;font-size:13px}.syl-practice{width:100%}.syl-practice-card{width:100%;max-width:560px;margin:0 auto}.syl-practice-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px;display:flex}.syl-score-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.syl-score-pill{background:color-mix(in srgb, var(--green) 55%, var(--surface));min-height:28px;color:var(--green-deep,var(--text));border:1px solid color-mix(in srgb, var(--green-deep) 25%, transparent);border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.syl-score-pill--muted{background:var(--bg);color:var(--text-secondary);border-color:var(--border)}.syl-practice-lead{margin-bottom:8px}.syl-progress{background:var(--border-light,var(--border));border-radius:999px;height:8px;margin:8px 0 14px;overflow:hidden}.syl-progress-bar{background:linear-gradient(90deg, var(--accent-light,var(--accent)), var(--accent));border-radius:999px;height:100%;transition:width .25s}.syl-audio-zone{flex-direction:column;align-items:center;padding:8px 0 4px;display:flex}.syl-play-btn{border-radius:999px;align-items:center;gap:10px;min-height:48px;padding:12px 22px;font-size:16px;display:inline-flex}.syl-audio-caption{text-align:center;margin:10px 0 0;font-size:13px}.syl-audio-hint{color:var(--warning-strong,#b7791f);text-align:center;max-width:360px;margin:8px 0 0;font-size:13px}.syl-selected-zone{border-radius:var(--radius-sm);background:var(--bg);border:1.5px dashed var(--border);min-height:68px;margin-top:14px;padding:12px 14px}.syl-selected-label{color:var(--text-muted);letter-spacing:.02em;margin-bottom:8px;font-size:12px;font-weight:700}.syl-selected-row{flex-wrap:wrap;align-items:center;gap:8px;min-height:40px;display:flex}.syl-placeholder{color:var(--text-muted);font-size:14px}.syl-selected-chip{background:var(--purple);border:1.5px solid var(--accent);min-width:40px;height:40px;color:var(--accent);border-radius:10px;justify-content:center;align-items:center;padding:0 10px;font-size:22px;font-weight:800;display:inline-flex}.syl-edit-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:10px;display:flex}.syl-edit-actions .btn{min-height:40px;padding:8px 14px;font-size:13px}.syl-options{grid-template-columns:repeat(auto-fill,minmax(56px,1fr));gap:10px;margin-top:16px;display:grid}.syl-option-btn{aspect-ratio:1;border:1.5px solid var(--border);background:var(--surface);cursor:pointer;min-height:52px;color:var(--text);touch-action:manipulation;border-radius:14px;font-family:inherit;font-size:clamp(22px,5vw,28px);font-weight:800;transition:transform .15s,border-color .15s,background .15s,opacity .15s}.syl-option-btn:hover:not(:disabled){border-color:var(--accent);box-shadow:var(--shadow-glow);transform:scale(1.04)}.syl-option-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.syl-option-btn.is-used,.syl-option-btn:disabled.is-used{opacity:.35;cursor:default;transform:none}.syl-option-btn:disabled:not(.is-used){opacity:.7;cursor:default}.syl-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:16px;display:flex}.syl-actions .btn{min-height:44px;padding:10px 18px}.syl-btn-primary{min-width:140px;font-weight:800}.syl-result{border-radius:var(--radius-sm);border:1.5px solid var(--border);margin-top:14px;padding:12px 14px}.syl-result.is-correct{background:var(--success-soft,var(--green));border-color:var(--success,var(--green-deep));color:var(--success-strong,var(--green-deep))}.syl-result.is-wrong{background:var(--danger-soft,color-mix(in srgb, #e53e3e 8%, var(--surface)));border-color:var(--danger,#e53e3e);color:var(--danger-strong,#c53030)}.syl-result-head{margin-bottom:10px}.syl-result-status{font-size:15px}.syl-result-msg{color:var(--text-secondary);margin:4px 0 0;font-size:13px;font-weight:500;line-height:1.45}.syl-result-answer{border-top:1px solid color-mix(in srgb, var(--border) 70%, transparent);flex-wrap:wrap;align-items:center;gap:14px;padding:10px 0;display:flex}.syl-reveal-char{color:var(--info-strong,#2c5282);font-size:clamp(36px,10vw,48px);font-weight:900;line-height:1}.syl-result-meta{flex:140px;min-width:0}.syl-result-rom{color:var(--text);font-size:14px;font-weight:700}.syl-result-tags{border-top:1px solid color-mix(in srgb, var(--border) 70%, transparent);flex-wrap:wrap;gap:6px;margin-top:8px;padding-top:8px;display:flex}.syl-meta-tag{background:var(--surface);min-height:24px;color:var(--text-secondary);border:1px solid var(--border);border-radius:999px;align-items:center;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}@media (width<=520px){.syl-root{gap:12px}.syl-layout-grid,.syl-group-grid{grid-template-columns:1fr}.syl-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.syl-option-btn{aspect-ratio:auto;border-radius:12px;width:100%;min-width:0;height:56px;min-height:52px;max-height:60px;font-size:24px}.syl-edit-actions{justify-content:stretch}.syl-edit-actions .btn{flex:auto}.syl-practice-card{padding-bottom:8px}.syl-actions{z-index:5;background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--border-light,var(--border));box-shadow:0 -2px 12px color-mix(in srgb, var(--text) 6%, transparent);border-radius:12px;margin-top:12px;padding:10px 8px;position:sticky;bottom:8px}.syl-btn-primary{flex:auto;min-width:0}.syl-result{margin-bottom:4px}}@media (width<=340px){.syl-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.syl-option-btn{height:54px;min-height:52px}}.ai-fab{background:linear-gradient(135deg, var(--accent), var(--pink-deep));cursor:pointer;z-index:200;color:#fff;border:none;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;font-size:24px;transition:transform .2s;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 4px 20px #e91e7b66}.ai-fab:hover{transform:scale(1.1)}.ai-widget{background:var(--surface);border-radius:var(--radius-lg);width:360px;height:480px;box-shadow:var(--shadow-lg);z-index:200;opacity:0;pointer-events:none;flex-direction:column;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;bottom:92px;right:24px;transform:scale(.9)}.ai-widget.open{opacity:1;pointer-events:all;transform:scale(1)}.ai-widget-header{border-bottom:1px solid var(--border-light);align-items:center;gap:10px;padding:16px 20px;font-weight:600;display:flex}.ai-avatar-small{background:linear-gradient(135deg, var(--accent), var(--pink-deep));border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;display:flex}.ai-close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;margin-left:auto;padding:4px;font-size:18px}.ai-chat-body{flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.ai-msg{border-radius:14px;max-width:85%;padding:12px 16px;font-size:14px;line-height:1.5}.ai-msg.bot{background:var(--bg);border-bottom-left-radius:4px;align-self:flex-start}.ai-msg.user{background:var(--accent);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}.ai-input-area{border-top:1px solid var(--border-light);gap:8px;padding:12px 16px;display:flex}.ai-input{border:1px solid var(--border);border-radius:10px;outline:none;flex:1;padding:10px 14px;font-family:inherit;font-size:14px}.ai-input:focus{border-color:var(--accent)}.ai-send{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;width:40px;height:40px;font-size:18px;transition:background .2s}.ai-send:hover{background:var(--accent-light)}.tab-group{background:var(--bg);white-space:nowrap;scrollbar-width:none;border-radius:10px;gap:4px;margin-bottom:20px;padding:4px;display:flex;overflow-x:auto}.tab-group::-webkit-scrollbar{display:none}.tab-btn{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-radius:8px;flex-shrink:0;padding:8px 18px;font-family:inherit;font-size:13px;font-weight:500;transition:all .2s}.tab-btn.active{background:var(--surface);color:var(--accent);box-shadow:var(--shadow-sm);font-weight:600}.badge-item{border-radius:var(--radius-sm);background:var(--bg);text-align:center;flex-direction:column;align-items:center;gap:6px;padding:16px;display:flex}.badge-icon{font-size:32px}.badge-name{font-size:12px;font-weight:600}.profile-hero-card{border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border-light);box-shadow:var(--shadow);position:relative;overflow:hidden}.profile-hero-bg{background:linear-gradient(135deg, var(--accent), var(--accent-light));background-size:300% 300%;height:140px;animation:8s infinite profileGradient}@keyframes profileGradient{0%,to{background-position:0%}50%{background-position:100%}}.profile-hero-content{align-items:flex-start;gap:28px;margin-top:-50px;padding:0 32px 32px;display:flex}.profile-avatar-section{flex-direction:column;flex-shrink:0;align-items:center;gap:8px;display:flex}.profile-avatar-wrapper{cursor:pointer;border:4px solid var(--surface);border-radius:50%;width:120px;height:120px;transition:transform .3s;position:relative;overflow:hidden;box-shadow:0 4px 20px #0000001f}.profile-avatar-wrapper:hover{transform:scale(1.05)}.profile-avatar-wrapper:hover .profile-avatar-overlay{opacity:1}.profile-avatar-img{object-fit:cover;width:100%;height:100%;display:block}.profile-avatar-placeholder{background:linear-gradient(135deg, var(--accent), var(--pink-deep));color:#fff;justify-content:center;align-items:center;width:100%;height:100%;font-family:Coiny,cursive;font-size:48px;font-weight:800;display:flex}.profile-avatar-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);color:#fff;opacity:0;background:#00000073;border-radius:50%;justify-content:center;align-items:center;transition:opacity .3s;display:flex;position:absolute;inset:0}.profile-avatar-spinner{border:3px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.profile-status-dot{border:3px solid var(--surface);z-index:2;border-radius:50%;width:20px;height:20px;position:absolute;bottom:6px;right:6px}.profile-status-dot.online{background:var(--green-deep);animation:2s infinite statusPulse;box-shadow:0 0 8px #48bb7899}.profile-status-dot.offline{background:var(--text-muted)}@keyframes statusPulse{0%,to{box-shadow:0 0 4px #48bb7866}50%{box-shadow:0 0 12px #48bb78cc}}.profile-remove-avatar{border:1px solid var(--border);color:var(--danger);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:4px;padding:4px 10px;font-family:inherit;font-size:11px;transition:all .2s;display:flex}.profile-remove-avatar:hover{background:var(--danger-soft);border-color:var(--danger-soft)}.profile-hero-info{flex:1;padding-top:58px}.profile-name-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.profile-display-name{margin:0;font-family:Coiny,cursive;font-size:24px}.profile-status-badge{border-radius:20px;align-items:center;gap:6px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-flex}.profile-status-badge.online{background:var(--success-soft);color:var(--success)}.profile-status-badge.offline{background:var(--border-light);color:var(--text-muted)}.profile-status-pulse{border-radius:50%;width:8px;height:8px;display:inline-block}.profile-status-badge.online .profile-status-pulse{background:var(--green-deep);animation:2s infinite statusPulse}.profile-status-badge.offline .profile-status-pulse{background:var(--gray-300)}.profile-email{color:var(--text-secondary);margin-top:4px;font-size:14px}.profile-joined{color:var(--text-muted);margin-top:4px;font-size:13px}.profile-quick-stats{flex-wrap:wrap;gap:12px;margin-top:16px;display:flex}.profile-stat-chip{background:var(--bg);border:1px solid var(--border-light);border-radius:12px;align-items:center;gap:10px;padding:10px 16px;transition:transform .2s;display:flex}.profile-stat-chip:hover{transform:translateY(-2px)}.profile-stat-icon{border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;display:flex}.profile-stat-value{font-size:16px;font-weight:800;line-height:1.2}.profile-stat-label{color:var(--text-muted);font-size:11px}.profile-section-card{animation:.3s fadeIn}.profile-form-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.profile-field{flex-direction:column;gap:6px;display:flex}.profile-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:700}.profile-value{color:var(--text);padding:10px 0;font-size:15px;font-weight:500}.profile-msg{border-radius:var(--radius-sm);margin-bottom:16px;padding:10px 16px;font-size:13px;font-weight:600;animation:.3s fadeIn}.profile-msg.success{background:var(--success-soft);color:var(--success);border:1px solid var(--success-soft)}.profile-msg.error{background:var(--danger-soft);color:var(--danger);border:1px solid var(--danger-soft)}.profile-skills-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.profile-skill-card{background:var(--bg);border-radius:var(--radius);border:1px solid var(--border-light);padding:20px;transition:transform .2s,box-shadow .2s}.profile-skill-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.profile-skill-header{align-items:center;gap:10px;display:flex}.profile-skill-icon{font-size:24px}.profile-skill-name{flex:1;font-size:15px;font-weight:600}.profile-skill-score{font-size:20px;font-weight:800}.profile-badges-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;display:grid}.profile-badge-card{text-align:center;background:var(--bg);border-radius:var(--radius);border:1px solid var(--border-light);padding:24px 16px;transition:all .3s}.profile-badge-card:hover{box-shadow:var(--shadow-glow);border-color:var(--accent-light);transform:translateY(-4px)scale(1.02)}.profile-badge-icon{margin-bottom:8px;font-size:42px;animation:2s infinite badgeBounce}@keyframes badgeBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.profile-badge-name{margin-bottom:4px;font-size:14px;font-weight:700}.profile-badge-desc{color:var(--text-secondary);margin-bottom:6px;font-size:12px}.profile-badge-date{color:var(--text-muted);font-size:11px}.profile-security-item{background:var(--bg);border-radius:var(--radius);justify-content:space-between;align-items:center;gap:16px;padding:20px;display:flex}.profile-security-title{align-items:center;gap:8px;font-size:15px;font-weight:700;display:flex}.profile-security-desc{color:var(--text-secondary);margin-top:4px;font-size:13px}.profile-pw-form{background:var(--bg);border-radius:var(--radius);flex-direction:column;gap:16px;margin-top:20px;padding:24px;animation:.3s fadeIn;display:flex}.profile-loader{color:var(--text-muted);flex-direction:column;align-items:center;gap:16px;display:flex}.profile-loader-spinner{border:4px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}.sr-layout{height:calc(100vh - var(--topbar-h));background:var(--bg);color:var(--text);display:flex;overflow:hidden}.sr-channels{border-right:1px solid var(--border);background:#fff0f3;flex-direction:column;flex-shrink:0;width:240px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.sr-channels.sr-channels-collapsed{border-right:none;width:0;overflow:hidden}.sr-bg-deco-container{z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden}.sr-deco-item{will-change:transform;position:absolute}.sr-deco-item-1{width:56px;animation:25s linear infinite drift-sway-1;top:10%}.sr-deco-item-2{width:34px;animation:35s linear -8s infinite drift-sway-2;top:25%}.sr-deco-item-3{width:48px;animation:30s linear -15s infinite drift-sway-1;top:45%}.sr-deco-item-4{width:36px;animation:28s linear -5s infinite drift-sway-2;top:60%}.sr-deco-item-5{width:52px;animation:32s linear -20s infinite drift-sway-1;top:75%}.sr-deco-item-6{width:32px;animation:26s linear -12s infinite drift-sway-2;top:90%}.sr-deco-item-7{width:46px;animation:29s linear -3s infinite drift-sway-2;top:18%}.sr-deco-item-8{width:42px;animation:33s linear -18s infinite drift-sway-1;top:40%}.sr-deco-item-9{width:54px;animation:27s linear -9s infinite drift-sway-2;top:58%}.sr-deco-item-10{width:35px;animation:31s linear -22s infinite drift-sway-1;top:72%}.sr-deco-item-11{width:50px;animation:35s linear -16s infinite drift-sway-2;top:30%}.sr-deco-item-12{width:44px;animation:25s linear -6s infinite drift-sway-1;top:82%}@keyframes drift-sway-1{0%{opacity:0;transform:translate(-60px,-15px)rotate(0)}10%{opacity:.55}50%{transform:translate(120px,15px)rotate(180deg)}90%{opacity:.55}to{opacity:0;transform:translate(300px,-15px)rotate(360deg)}}@keyframes drift-sway-2{0%{opacity:0;transform:translate(-60px,15px)rotate(360deg)}15%{opacity:.5}50%{transform:translate(120px,-15px)rotate(180deg)}85%{opacity:.5}to{opacity:0;transform:translate(300px,15px)rotate(0)}}.sr-status-box{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2;background:#fff9;border:1.5px solid #fff9;border-radius:16px;margin:12px 12px 0;padding:8px 10px;position:relative}.sr-status-input{width:100%;color:var(--text);background:0 0;border:none;outline:none;font-family:inherit;font-size:12px}.sr-status-input::placeholder{color:var(--text-muted)}.sr-channel-section{-webkit-backdrop-filter:blur(16px);z-index:1;background-color:#ffffff73;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3E%3Ccircle cx='4' cy='4' r='1' fill='%234a5568' fill-opacity='0.08'/%3E%3C/svg%3E");border:2px solid #ffffffb3;border-radius:20px;margin:10px 10px 14px;padding:12px 10px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:inset 0 1.5px #fff9,0 8px 32px #e91e7b05}.sr-channel-section:hover{background-color:#ffffff8c;border-color:#ffffffe6;box-shadow:inset 0 1.5px #fffc,0 12px 36px #e91e7b0d}.sr-cs-study{border-left:4px solid var(--accent)!important;background-color:#ffeef599!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24' fill='%23e91e7b' fill-opacity='0.15'%3E%3Cpath d='M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z'/%3E%3C/svg%3E"),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3E%3Ccircle cx='4' cy='4' r='1' fill='%234a5568' fill-opacity='0.06'/%3E%3C/svg%3E")!important;background-position:right 6px bottom 4px,0 0!important;background-repeat:no-repeat,repeat!important}.sr-cs-study .sr-section-pill{background:linear-gradient(135deg, var(--accent-light) 0%, var(--accent) 100%);color:#fff}.sr-cs-study .sr-section-title:hover .sr-section-pill{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-strong) 100%)}.sr-cs-chat{background-color:#fff8e699!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24' fill='%23FF7F50' fill-opacity='0.15'%3E%3Cpath d='M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5C2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3C19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z'/%3E%3C/svg%3E"),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3E%3Ccircle cx='4' cy='4' r='1' fill='%234a5568' fill-opacity='0.06'/%3E%3C/svg%3E")!important;background-position:right 6px bottom 4px,0 0!important;background-repeat:no-repeat,repeat!important;border-left:4px solid #ffa07a!important}.sr-cs-chat .sr-section-pill{color:#fff;background:linear-gradient(135deg,#ffa07a 0%,coral 100%)}.sr-cs-chat .sr-section-title:hover .sr-section-pill{background:linear-gradient(135deg,coral 0%,#e65c00 100%)}.sr-cs-voice{background-color:#e6f8f599!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24' fill='%23319795' fill-opacity='0.15'%3E%3Cpath d='M12 3v10.55c-.59-.34-1.27-.55-2-.55-2.21 0-4 1.79-4 4s1.79 4 4 4 4-1.79 4-4V7h4V3h-6z'/%3E%3C/svg%3E"),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3E%3Ccircle cx='4' cy='4' r='1' fill='%234a5568' fill-opacity='0.06'/%3E%3C/svg%3E")!important;background-position:right 6px bottom 4px,0 0!important;background-repeat:no-repeat,repeat!important;border-left:4px solid #4fd1c5!important}.sr-cs-voice .sr-section-pill{color:#fff;background:linear-gradient(135deg,#4fd1c5 0%,#319795 100%)}.sr-cs-voice .sr-section-title:hover .sr-section-pill{background:linear-gradient(135deg,#319795 0%,#236c6d 100%)}.sr-section-pill{text-transform:uppercase;letter-spacing:.2px;white-space:nowrap;border-radius:24px;flex:1;justify-content:center;align-items:center;gap:6px;padding:8px 10px;font-size:12.5px;font-weight:800;transition:all .25s;display:flex;box-shadow:0 3px 8px #0000000d}.sr-section-title{-webkit-user-select:none;user-select:none;cursor:pointer;align-items:center;gap:8px;width:100%;padding:4px 6px 10px;transition:color .2s;display:flex;position:relative}.sr-section-title svg{transition:transform .2s}.sr-menu-png-icon{filter:drop-shadow(0 2px 4px #0000000d);flex-shrink:0;transition:transform .3s cubic-bezier(.175,.885,.32,1.275),filter .3s}.sr-section-title:hover .sr-menu-png-icon{filter:drop-shadow(0 6px 12px #0000001f);transform:scale(1.25)rotate(-6deg)}.sr-add-channel-btn{cursor:pointer;z-index:2;width:16px;height:16px;position:absolute;top:50%;right:18px;transform:translateY(-50%);color:#319795!important;background:#fffc!important;border:1px solid #ffffffe6!important;border-radius:50%!important;justify-content:center!important;align-items:center!important;font-size:11px!important;font-weight:800!important;line-height:1!important;transition:all .2s!important;display:flex!important;box-shadow:0 2px 5px #0000000d!important}.sr-add-channel-btn:hover{color:#fff!important;background:#319795!important;transform:translateY(-50%)scale(1.15)!important;box-shadow:0 4px 8px #31979533!important}@keyframes active-bounce{0%,to{transform:scale(1)translateY(0)}50%{transform:scale(1.08)translateY(-1px)}}.sr-icon-active{animation:2s infinite active-bounce}@keyframes wave-pulse{0%,to{opacity:.3;transform:scale(.95)}50%{opacity:1;transform:scale(1.1)}}.sr-voice-wave{transform-origin:50%;animation:1.2s ease-in-out infinite wave-pulse}.sr-channel-btn{color:#4a5568;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:16px;align-items:center;gap:10px;width:100%;padding:9px 12px;font-family:inherit;font-size:15px;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.sr-channel-btn svg,.sr-channel-btn .sr-badge,.sr-channel-btn span{transition:transform .2s}.sr-channel-btn:hover{color:var(--accent);background:#ffffff73;transform:translate(4px)}.sr-channel-btn:hover svg:not(.sr-dropdown-arrow){transform:scale(1.15)rotate(-5deg)}.sr-dropdown-arrow{opacity:.6;margin-left:auto;transition:transform .25s cubic-bezier(.4,0,.2,1),opacity .2s;transform:rotate(0)}.sr-dropdown-arrow.open{transform:rotate(180deg)}.sr-channel-btn:hover .sr-dropdown-arrow{opacity:1}.sr-dropdown-arrow:not(.open){animation:1.6s ease-in-out infinite arrow-bob-down}.sr-dropdown-arrow.open{animation:1.6s ease-in-out infinite arrow-bob-up}@keyframes arrow-bob-down{0%,to{transform:rotate(0)translateY(0)}50%{transform:rotate(0)translateY(2px)}}@keyframes arrow-bob-up{0%,to{transform:rotate(180deg)translateY(0)}50%{transform:rotate(180deg)translateY(2px)}}.sr-channel-btn.active{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:var(--accent);background:#ffffffbf;font-weight:700;transform:translate(4px);box-shadow:0 4px 12px #e91e7b0f}.sr-channel-btn.active:before{content:"";background:var(--accent);border-radius:0 4px 4px 0;width:4px;position:absolute;top:20%;bottom:20%;left:0}.sr-sub-channel-btn{color:var(--text-secondary);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:12px;align-items:center;gap:8px;width:100%;padding:8px 12px;font-size:14.5px;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.sr-sub-channel-btn svg{transition:transform .2s}.sr-sub-channel-btn:hover{color:var(--accent);background:#ffffff73;transform:translate(4px)}.sr-sub-channel-btn:hover svg{transform:scale(1.15)}.sr-sub-channel-btn.active{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:var(--accent);background:#ffffffbf;font-weight:700;transform:translate(4px);box-shadow:0 2px 8px #e91e7b0d}.sr-badge{background:var(--accent);color:#fff;text-align:center;border-radius:8px;min-width:15px;margin-left:auto;padding:1px 5px;font-size:9px;font-weight:700}.sr-voice-users{padding:4px 0 6px 36px}.sr-voice-user{color:#4a5568;align-items:center;gap:8px;padding:4px 8px;font-size:12.5px;transition:transform .2s;display:flex}.sr-voice-user:hover{transform:translate(2px)}.sr-voice-controls{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2;background:#fff9;border-top:1px solid #fff6;margin-top:auto;padding:12px 14px;position:relative}.sr-vc-btn{background:var(--surface);width:32px;height:32px;color:var(--text);cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;font-size:14px;transition:all .2s;display:flex;box-shadow:0 1px 3px #00000014}.sr-vc-btn:hover{background:var(--accent);color:#fff}.sr-vc-btn.active,.sr-vc-leave{background:var(--pink-deep);color:#fff}.sr-vc-leave:hover{background:var(--accent-light)}.sr-main{flex-direction:column;flex:1;min-width:0;display:flex}.sr-main-header{border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0;align-items:center;gap:10px;padding:12px 16px;display:flex}.sr-join-btn{background:var(--green-deep);color:#fff;cursor:pointer;border:none;border-radius:12px;margin-left:auto;padding:8px 20px;font-family:inherit;font-size:13px;font-weight:700;transition:all .2s;box-shadow:0 2px 8px #48bb784d}.sr-join-btn:hover{background:var(--green-deep);transform:translateY(-2px)}.sr-leave-btn{background:var(--pink-deep);color:#fff;cursor:pointer;border:none;border-radius:12px;margin-left:auto;padding:8px 20px;font-family:inherit;font-size:13px;font-weight:700;box-shadow:0 2px 8px #ff8fab4d}.sr-leave-btn:hover{background:var(--accent-light)}.sr-chat-area{flex:1;padding:16px;overflow-y:auto}.sr-chat-area::-webkit-scrollbar{width:6px}.sr-chat-area::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.sr-message{border-radius:12px;gap:12px;padding:10px 8px;transition:background .15s;display:flex}.sr-message:hover{background:var(--surface)}.sr-msg-user{color:var(--accent);font-size:14px;font-weight:700}.sr-msg-time{color:var(--text-muted);font-size:11px}.sr-msg-text{color:var(--text);margin-top:2px;font-size:14px;line-height:1.5}.sr-chat-input-area{background:var(--surface);border:1px solid var(--border);border-radius:14px;gap:8px;margin:0 16px 16px;padding:12px 16px;display:flex;box-shadow:0 2px 8px #0000000a}.sr-chat-input{color:var(--text);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:14px}.sr-chat-input::placeholder{color:var(--text-muted)}.sr-send-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;transition:all .2s;display:flex}.sr-send-btn:hover{background:var(--accent-light);transform:scale(1.05)}.sr-send-btn:disabled{background:var(--border);cursor:default;color:var(--text-muted)}.sr-voice-grid{background:linear-gradient(135deg, var(--purple) 0%, var(--pink) 50%, var(--yellow) 100%);flex:1;justify-content:center;align-items:center;padding:24px;display:flex}.sr-voice-seats{flex-wrap:wrap;justify-content:center;align-items:center;gap:24px;max-width:650px;display:flex}.sr-seat{box-sizing:border-box;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd9;border:2px solid #0000;border-radius:20px;flex-direction:column;justify-content:space-between;align-items:center;width:140px;height:190px;padding:16px 12px;transition:all .3s;display:flex;box-shadow:0 4px 20px #0000000f}.sr-seat:hover{background:#fff;transform:translateY(-6px);box-shadow:0 8px 30px #0000001a}.sr-seat-me{border-color:var(--accent);box-shadow:0 0 20px #e91e7b33}.sr-seat-name{color:var(--text);font-size:13px;font-weight:700}.sr-seat-wave{align-items:end;gap:3px;height:22px;display:flex}.sr-wave-bar{background:var(--accent);border-radius:2px;width:4px;animation:1s ease-in-out infinite srWave}.sr-wave-bar-live{background:linear-gradient(to top, var(--accent), var(--accent-light));border-radius:2px;width:4px;min-height:3px;transition:height 80ms ease-out}@keyframes srWave{0%,to{height:4px}50%{height:18px}}.sr-empty{text-align:center;color:var(--text-muted)}.sr-empty h3{color:var(--text);margin:12px 0 4px;font-family:Coiny,cursive;font-size:18px}.sr-empty p{margin-bottom:16px;font-size:14px}.sr-sidebar-right{background:#fff0f3;border-left:none;flex-direction:column;flex-shrink:0;width:0;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.sr-sidebar-right.sr-sidebar-right-open{border-left:1px solid var(--border);width:240px}.sr-sidebar-backdrop,.sr-right-sidebar-backdrop{display:none}.sr-right-scrollable{z-index:1;flex:1;height:100%;padding-bottom:16px;position:relative;overflow-y:auto}.sr-right-scrollable::-webkit-scrollbar{width:4px}.sr-right-scrollable::-webkit-scrollbar-thumb{background:#00000014;border-radius:2px}.sr-right-section{-webkit-backdrop-filter:blur(16px);z-index:1;background-color:#ffffff73;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3E%3Ccircle cx='4' cy='4' r='1' fill='%234a5568' fill-opacity='0.08'/%3E%3C/svg%3E");border:2px solid #ffffffb3;border-radius:24px;margin:12px 12px 16px;padding:14px 12px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;box-shadow:inset 0 1.5px #fff9,0 8px 32px #e91e7b05}.sr-right-section:hover{background-color:#ffffff8c;border-color:#ffffffe6;box-shadow:inset 0 1.5px #fffc,0 12px 36px #e91e7b0d}.sr-rc-pomodoro{border-right:5px solid var(--accent)!important;background-color:#ffeef599!important}.sr-rc-lofi{background-color:#fff8e699!important;border-right:5px solid #ffa07a!important}.sr-rc-members{background-color:#e6f8f599!important;border-right:5px solid #4fd1c5!important}.sr-rc-members .sr-section-pill{color:#fff;background:#4fd1c5}.sr-member-item{cursor:pointer;border-radius:12px;align-items:center;gap:10px;padding:8px 10px;transition:all .2s;display:flex}.sr-member-item:hover{background:#fff9;transform:translate(3px)}.sr-pomodoro{flex-direction:column;align-items:center;display:flex}.sr-pomodoro-ring{background:conic-gradient(var(--ring-color) var(--pct), var(--border) var(--pct));border-radius:50%;justify-content:center;align-items:center;width:120px;height:120px;display:flex;box-shadow:0 4px 15px #0000000f}.sr-pomodoro-inner{background:var(--surface);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:100px;height:100px;display:flex}.sr-pomodoro-time{color:var(--text);font-variant-numeric:tabular-nums;font-size:26px;font-weight:800}.sr-pomodoro-label{color:var(--text-muted);letter-spacing:1px;font-size:10px;font-weight:700}.sr-btn{background:var(--purple);color:var(--text);cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;transition:all .2s;display:flex}.sr-btn:hover{background:var(--accent);color:#fff}.sr-btn-dim:hover{background:var(--pink);color:var(--text)}.sr-lofi{padding:0}.sr-lofi-track-item{cursor:pointer;text-align:left;width:100%;color:var(--text-secondary);background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:8px;padding:6px 10px;font-family:inherit;font-size:12px;transition:all .2s;display:flex}.sr-lofi-track-item:hover{background:var(--bg);color:var(--accent)}.sr-lofi-track-item.active{background:var(--accent-soft);border-color:var(--accent-light);color:var(--accent);font-weight:700}.sr-lofi-track-item.active:hover{background:var(--accent-soft)}.sr-clickable-user{cursor:pointer;transition:color .15s,-webkit-text-decoration .15s,text-decoration .15s}.sr-clickable-user:hover{text-decoration:underline;color:var(--accent)!important}.sr-profile-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background:#00000073;justify-content:center;align-items:center;animation:.2s srFadeIn;display:flex;position:fixed;inset:0}@keyframes srFadeIn{0%{opacity:0}to{opacity:1}}.sr-profile-popup{background:var(--surface);border-radius:20px;width:340px;max-width:90vw;animation:.25s srSlideUp;position:relative;overflow:hidden;box-shadow:0 20px 60px #00000040}@keyframes srSlideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.sr-profile-close{z-index:2;color:#fff;cursor:pointer;background:#0000004d;border:none;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;transition:background .15s;display:flex;position:absolute;top:10px;right:10px}.sr-profile-close:hover{background:#00000080}.sr-profile-banner{background:linear-gradient(135deg, var(--accent) 0%, var(--accent-light) 50%, var(--pink) 100%);height:80px}.sr-profile-avatar-wrap{justify-content:center;margin-top:-36px;display:flex;position:relative}.sr-profile-avatar-img{object-fit:cover;border:4px solid var(--surface);border-radius:50%;width:72px;height:72px;box-shadow:0 4px 12px #0000001f}.sr-profile-avatar-placeholder{background:linear-gradient(135deg, var(--accent), var(--accent-light));color:#fff;border:4px solid var(--surface);border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;font-size:28px;font-weight:800;display:flex;box-shadow:0 4px 12px #0000001f}.sr-profile-dot{background:var(--text-muted);border:3px solid var(--surface);border-radius:50%;width:16px;height:16px;position:absolute;bottom:2px;right:calc(50% - 36px)}.sr-profile-dot.online{background:var(--green-deep)}.sr-profile-stats{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px;padding:12px 16px;display:grid}.sr-profile-stat{text-align:center;background:var(--bg);border-radius:12px;padding:8px 4px}.sr-profile-stat-val{color:var(--text);font-size:13px;font-weight:800}.sr-profile-stat-lbl{color:var(--text-muted);margin-top:2px;font-size:10px;font-weight:600}.sr-profile-full-btn{cursor:pointer;background:var(--accent);color:#fff;text-align:center;border:none;border-radius:12px;width:calc(100% - 32px);margin:12px 16px 16px;padding:10px;font-family:inherit;font-size:13px;font-weight:700;transition:all .2s;display:block}.sr-profile-full-btn:hover{background:var(--accent-light);transform:translateY(-1px)}.topik-level-selector{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;padding:6px;display:flex}.topik-lvl-btn{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:10px;padding:8px 18px;font-family:inherit;font-size:14px;font-weight:700;transition:all .2s}.topik-lvl-btn.active{background:var(--accent);color:#fff;box-shadow:0 4px 12px #764ba233}.topik-tabs{gap:8px;margin-bottom:20px;padding-bottom:6px;display:flex;overflow-x:auto}.topik-tab-btn{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;white-space:nowrap;border-radius:12px;padding:10px 18px;font-family:inherit;font-size:14px;font-weight:700;transition:all .2s}.topik-tab-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.topik-sub-tabs{border-bottom:2px solid var(--border);gap:6px;padding-bottom:2px;display:flex}.topik-sub-tab-btn{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-bottom:3px solid #0000;padding:8px 16px;font-family:inherit;font-size:14px;font-weight:700;transition:all .2s}.topik-sub-tab-btn.active{color:var(--accent);border-bottom-color:var(--accent)}.topik-table{border-collapse:collapse;width:100%;margin-top:12px;font-size:14px}.topik-table th{background:var(--bg);color:var(--text-muted);font-weight:700}.topik-table tr.highlight-row{background:#ff6b9d0d}.vocab-flashcard{transform-style:preserve-3d;transition:transform .6s}.vocab-flashcard.flipped{transform:rotateY(180deg)}.topik-exam-room{background:var(--surface);border-radius:16px;box-shadow:0 10px 30px #0000000d}.topik-exam-bar{border-bottom:2px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:14px;display:flex}.topik-option-label{border:1px solid var(--border);border-radius:10px;padding:12px 16px;transition:background .15s}.topik-option-label:hover{background:var(--bg)}@media (width<=1024px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}.sr-channels{top:var(--topbar-h);z-index:100;background:var(--surface);transition:transform .3s cubic-bezier(.4,0,.2,1);position:fixed;bottom:0;left:0;transform:translate(-100%);box-shadow:10px 0 30px #00000026;width:240px!important}.sr-channels.sr-channels-mobile-open{transform:translate(0)}.sr-right-sidebar-toggle-btn{display:flex}.sr-sidebar-right{top:var(--topbar-h);z-index:100;background:var(--surface);border-left:1px solid var(--border);width:260px;transition:transform .3s cubic-bezier(.4,0,.2,1);position:fixed;bottom:0;right:0;transform:translate(100%);box-shadow:-10px 0 30px #00000026}.sr-sidebar-right.sr-sidebar-right-open{width:260px;transform:translate(0)}.sr-sidebar-backdrop,.sr-right-sidebar-backdrop{display:block}}.topik-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.topik-level-selector{gap:8px;display:flex}.topik-lvl-btn{border:2px solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer;color:var(--text-secondary);white-space:nowrap;padding:clamp(8px,1.5vw,10px) clamp(12px,3vw,24px);font-family:inherit;font-size:clamp(11px,1.8vw,14px);font-weight:700;transition:all .2s}.topik-lvl-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.topik-tabs{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.topik-tab-btn{border:2px solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer;color:var(--text-secondary);white-space:nowrap;padding:clamp(6px,1.5vw,10px) clamp(10px,2.5vw,20px);font-family:inherit;font-size:clamp(10px,1.6vw,13px);font-weight:600;transition:all .2s}.topik-tab-btn.active{background:linear-gradient(135deg, var(--accent), var(--accent-light));color:#fff;border-color:var(--accent)}.topik-exam-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.topik-analytics-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.topik-exp-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.topik-practice-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:10px;display:flex}.topik-practice-header h3{margin:0;font-size:16px}.topik-practice-skill-btns{gap:10px;display:flex}.topik-question-card{margin-bottom:16px;padding:clamp(12px,2.5vw,18px)}.topik-option-label{cursor:pointer;border-radius:10px;align-items:center;gap:clamp(8px,1.5vw,12px);padding:clamp(7px,1.5vw,10px) clamp(10px,2vw,16px);transition:all .2s;display:flex}.topik-option-number{-webkit-user-select:none;user-select:none;flex-shrink:0;font-size:clamp(16px,2.5vw,20px);line-height:1}.topik-option-text{color:var(--text);word-break:break-word;font-size:clamp(12px,1.8vw,14px)}.topik-result-stats{flex-wrap:wrap;justify-content:center;gap:20px;margin-bottom:24px;display:flex}.topik-result-card{background:var(--bg);border:1px solid var(--border);text-align:center;min-width:160px;padding:20px 16px}.topik-exam-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.topik-sub-tabs{flex-wrap:wrap;gap:8px;display:flex}.topik-sub-tab-btn{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;color:var(--text-secondary);white-space:nowrap;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:600;transition:all .2s}.topik-sub-tab-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.topik-table{border-collapse:collapse;width:100%;font-size:14px}.topik-table th,.topik-table td{text-align:left;border-bottom:1px solid var(--border);padding:10px 12px}.topik-table th{background:var(--bg);color:var(--text-secondary);font-size:13px;font-weight:700}.table-responsive{-webkit-overflow-scrolling:touch;overflow-x:auto}.topik-section-header{padding:clamp(10px,2vw,16px) clamp(12px,2.5vw,20px)}.topik-compact-title{font-size:clamp(14px,2.5vw,18px);margin-bottom:4px!important}.topik-section-desc{color:var(--text-muted);margin-bottom:clamp(10px,2vw,16px);font-size:clamp(11px,1.6vw,13px)}@media (width<=1024px){.topik-exam-grid{grid-template-columns:1fr 1fr;gap:12px}.topik-analytics-grid,.topik-exp-grid{grid-template-columns:1fr}.topik-tabs{gap:6px}.topik-tab-btn{padding:8px 14px;font-size:12px}.topik-lvl-btn{padding:8px 16px;font-size:13px}}@media (width<=768px){.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.main-content{margin-left:0}.menu-toggle{display:block}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.ai-widget{width:calc(100vw - 32px);right:16px}.profile-hero-content{text-align:center;flex-direction:column;align-items:center}.profile-hero-info{padding-top:16px}.profile-name-row,.profile-quick-stats{justify-content:center}.profile-form-grid{grid-template-columns:1fr}.profile-security-item{text-align:center;flex-direction:column}.sr-layout{height:calc(100vh - var(--topbar-h))}.sr-voice-controls{padding:6px}.sr-vc-btn{width:28px;height:28px;font-size:12px}.sr-main-header{padding:8px 12px}.sr-chat-input-area{margin:0 8px 8px;padding:8px 12px}.topbar-widget,.topbar-widgets-wrapper,.topbar-user-name,.topbar-user-role{display:none!important}.search-box{display:none}.topik-header{flex-direction:column;align-items:stretch}.topik-header .page-title{text-align:center}.topik-level-selector{justify-content:center}.topik-lvl-btn{text-align:center;flex:1}.topik-tabs{grid-template-columns:1fr 1fr;gap:6px;display:grid}.topik-tab-btn{text-align:center;white-space:normal;line-height:1.3}.topik-exam-grid,.topik-analytics-grid,.topik-exp-grid{grid-template-columns:1fr}.topik-practice-header{flex-direction:column;align-items:stretch}.topik-practice-skill-btns{flex-direction:column}.topik-practice-skill-btns .btn{width:100%}.topik-result-stats{flex-direction:column;align-items:center}.topik-result-card{width:100%;min-width:unset}.topik-exam-bar{text-align:center;flex-direction:column;align-items:stretch}.topik-sub-tabs{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto}.topik-sub-tab-btn{flex-shrink:0}.topik-table{font-size:clamp(11px,2vw,13px)}}.vocab-animate{animation:.6s cubic-bezier(.34,1.56,.64,1) both vocabBounceIn}@keyframes vocabBounceIn{0%{opacity:0;transform:translateY(10px)scale(.9)}70%{transform:translateY(-2px)scale(1.02)}to{opacity:1;transform:translateY(0)scale(1)}}.flip-book{transform-style:preserve-3d;perspective:1000px;animation:.6s cubic-bezier(.4,0,.2,1) both flipBook}@keyframes flipBook{0%{opacity:1;transform:rotateY(0)}45%{opacity:.3;transform:rotateY(-90deg)}55%{opacity:.3;transform:rotateY(90deg)}to{opacity:1;transform:rotateY(0)}}.vocab-book-card{background:var(--surface);border:2px solid var(--gray-200);border-radius:var(--radius);cursor:pointer;align-items:center;gap:20px;padding:16px;transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s cubic-bezier(.4,0,.2,1),border-color .25s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 8px 24px #959da51f,0 2px 8px #0000000a}.vocab-book-card:hover{border-color:var(--accent);transform:translateY(-4px);box-shadow:0 10px 24px #00000014,0 3px 6px #0000000a}.lesson-grid-item{background:var(--surface);border:2px solid var(--gray-200);text-align:center;cursor:pointer;border-radius:12px;padding:18px;transition:all .2s;box-shadow:0 8px 24px #959da51f,0 2px 8px #0000000a}.lesson-grid-item:hover{border-color:var(--accent);transform:scale(1.03);box-shadow:0 8px 20px #0000000f,0 2px 4px #00000008}@keyframes progress-bar-stripes{0%{background-position:1rem 0}to{background-position:0 0}}.progress-bar-animated-stripes{background-image:linear-gradient(45deg,#ffffff26 25%,#0000 25% 50%,#ffffff26 50% 75%,#0000 75%,#0000);background-size:1rem 1rem;animation:1s linear infinite progress-bar-stripes}.speaking-main-tabs{border-bottom:2px solid var(--border);gap:16px;margin-bottom:24px;display:flex}.main-tab-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;align-items:center;gap:8px;padding:12px 24px;font-family:inherit;font-size:16px;font-weight:800;transition:all .3s;display:flex}.main-tab-btn:hover{color:var(--accent)}.main-tab-btn.active{color:var(--accent);border-bottom-color:var(--accent)}.jk-chat-container{background:linear-gradient(180deg, var(--accent-soft) 0%, var(--accent-soft) 100%);border-radius:var(--radius-lg);border:2px solid var(--gray-200);height:calc(100vh - 210px);min-height:580px;box-shadow:var(--shadow-lg);flex-direction:column;display:flex;position:relative;overflow:hidden}.jk-chat-header{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10;background:#ffffffd9;border-bottom:1px solid #e2e8f0cc;justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.jk-header-profile{align-items:center;gap:12px;display:flex}.jk-header-avatar{border:2px solid var(--accent-light);object-fit:cover;width:44px;height:44px;box-shadow:var(--shadow-sm);border-radius:50%}.jk-header-info{flex-direction:column;gap:2px;display:flex}.jk-header-name{color:var(--text);align-items:center;gap:6px;font-size:15px;font-weight:800;display:flex}.jk-header-status{color:var(--text-secondary);align-items:center;gap:4px;font-size:11px;display:flex}.jk-status-dot{background-color:var(--success);border-radius:50%;width:6px;height:6px;animation:2s infinite jk-pulse-green;display:inline-block}@keyframes jk-pulse-green{0%{box-shadow:0 0 #38a169b3}70%{box-shadow:0 0 0 6px #38a16900}to{box-shadow:0 0 #38a16900}}.jk-chat-body{flex-direction:column;flex:1;gap:16px;padding:20px;display:flex;overflow-y:auto}.jk-msg-wrapper{gap:8px;max-width:80%;display:flex}.jk-msg-wrapper.jk{align-self:flex-start}.jk-msg-wrapper.user{justify-content:flex-end;align-self:flex-end;max-width:75%}.jk-bubble-avatar{object-fit:cover;width:36px;height:36px;box-shadow:var(--shadow-sm);border:1.5px solid #fff;border-radius:50%;flex-shrink:0}.jk-bubble-content-box{flex-direction:column;gap:4px;display:flex}.jk-bubble-sender-name{color:var(--text-secondary);margin-left:2px;font-size:11px;font-weight:700}.jk-msg-bubble{word-break:break-word;border-radius:18px;padding:12px 16px;font-size:14px;line-height:1.5;position:relative;box-shadow:0 2px 8px #00000008}.jk-msg-wrapper.jk .jk-msg-bubble{color:var(--text);background:#fff;border:1px solid #e2e8f099;border-top-left-radius:4px}.jk-msg-wrapper.user .jk-msg-bubble{background:linear-gradient(135deg, var(--accent), var(--pink-deep));color:#fff;text-align:left;border-top-right-radius:4px}.jk-msg-text-kr{margin-bottom:2px;font-size:15px;font-weight:700}.jk-msg-text-vi{opacity:.85;border-top:1px solid #0000000f;margin-top:4px;padding-top:4px;font-size:12px;font-style:italic}.jk-msg-wrapper.user .jk-msg-text-vi{border-top-color:#fff3}.jk-msg-time{color:var(--text-muted);flex-shrink:0;align-self:flex-end;margin-bottom:2px;font-size:10px}.jk-typing-indicator{width:fit-content;box-shadow:var(--shadow-sm);background:#fff;border:1px solid #e2e8f099;border-radius:4px 16px 16px;align-self:flex-start;align-items:center;gap:4px;margin-left:44px;padding:8px 14px;display:flex}.jk-typing-indicator span{background-color:var(--accent-light);border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite both jk-typing;display:inline-block}.jk-typing-indicator span:first-child{animation-delay:-.32s}.jk-typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes jk-typing{0%,80%,to{opacity:.3;transform:scale(0)}40%{opacity:1;transform:scale(1)}}.jk-chat-suggestions-container{-webkit-backdrop-filter:blur(10px);background:#fff9;border-top:1px solid #e2e8f080}.jk-suggestions-header{cursor:pointer;-webkit-user-select:none;user-select:none;background:#8b5cf60a;border-bottom:1px solid #e2e8f04d;justify-content:space-between;align-items:center;padding:6px 16px;transition:all .2s;display:flex}.jk-suggestions-header:hover{background:#8b5cf614}.jk-suggestions-title{color:var(--accent);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:4px;font-size:11px;font-weight:800;display:flex}.jk-suggestions-toggle{color:var(--text-secondary);background:#e2e8f080;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:700;transition:all .2s}.jk-suggestions-header:hover .jk-suggestions-toggle{background:var(--purple);color:var(--accent)}.jk-chat-suggestions{flex-wrap:wrap;gap:10px;padding:12px 16px;display:flex}.jk-suggestion-chip{cursor:pointer;text-align:left;box-sizing:border-box;background:#fff;border:1.5px solid #8b5cf61f;border-radius:12px;flex-direction:column;flex:calc(33.333% - 10px);justify-content:center;align-items:flex-start;gap:3px;min-width:200px;max-width:100%;padding:10px 16px;line-height:1.35;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 2px 5px #00000005}.jk-suggestion-chip:hover{border-color:var(--accent);background:#8b5cf608;transform:translateY(-1px);box-shadow:0 4px 10px #8b5cf614}.jk-suggestion-kr{color:var(--accent);word-break:break-word;font-size:13px;font-weight:800}.jk-suggestion-roman{color:var(--text-secondary);opacity:.95;margin-top:1px;font-size:10.5px;font-style:italic;font-weight:600}.jk-suggestion-vi{color:var(--text-muted);opacity:.85;margin-top:1px;font-size:10px;font-weight:500}@media (width<=768px){.jk-chat-suggestions{gap:8px;padding:8px 12px}.jk-suggestion-chip{border-radius:10px;flex:100%;gap:2px;min-width:100%;max-width:100%;padding:10px 14px}.jk-suggestion-kr{font-size:12.5px;font-weight:700}.jk-suggestion-roman{font-size:10px}.jk-suggestion-vi{font-size:9.5px}}@media (width<=480px){.jk-chat-suggestions{gap:6px;padding:8px}.jk-suggestion-chip{border-radius:8px;flex:100%;gap:2px;min-width:100%;max-width:100%;padding:8px 12px}.jk-suggestion-kr{font-size:12px}.jk-suggestion-roman{font-size:9.5px}.jk-suggestion-vi{font-size:9px}}.jk-input-bar{border-top:1px solid var(--border);background:#fff;align-items:center;gap:8px;padding:12px 16px;display:flex}.jk-voice-btn{background:var(--bg);width:42px;height:42px;color:var(--text-secondary);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.jk-voice-btn:hover{background:var(--purple);color:var(--accent)}.jk-voice-btn.recording{background:var(--danger);color:#fff;animation:1.5s infinite jk-pulse-danger}@keyframes jk-pulse-danger{0%{box-shadow:0 0 #e53e3e66}70%{box-shadow:0 0 0 8px #e53e3e00}to{box-shadow:0 0 #e53e3e00}}.jk-chat-input{border:1px solid var(--border);background:var(--bg);border-radius:22px;outline:none;flex:1;padding:10px 18px;font-size:14px;transition:border-color .2s}.jk-chat-input:focus{border-color:var(--accent);background:#fff}.jk-send-btn{background:linear-gradient(135deg, var(--accent), var(--pink-deep));color:#fff;cursor:pointer;width:42px;height:42px;box-shadow:var(--shadow-sm);border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.jk-send-btn:hover:not(:disabled){transform:scale(1.05)}.jk-send-btn:disabled{background:var(--border);color:var(--text-muted);cursor:not-allowed;box-shadow:none}.jk-suggestion-wrapper{box-sizing:border-box;flex-direction:column;flex:calc(33.333% - 10px);gap:6px;min-width:200px;max-width:100%;display:flex}.jk-suggestion-chip{flex:1;width:100%!important}.jk-suggestion-practice-btn{color:var(--accent);cursor:pointer;box-sizing:border-box;background:#8b5cf60f;border:1.5px dashed #8b5cf64d;border-radius:10px;justify-content:center;align-items:center;gap:6px;width:100%;padding:6px 12px;font-size:11px;font-weight:700;transition:all .2s;display:inline-flex}.jk-suggestion-practice-btn:hover{background:var(--accent);color:#fff;border-style:solid;border-color:var(--accent)}.jk-practice-panel{background:#fff;border-top:1px solid #e2e8f080;flex-direction:column;gap:12px;padding:16px 20px;animation:.25s ease-out jk-slide-up;display:flex}@keyframes jk-slide-up{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.jk-practice-header{border-bottom:1px solid #e2e8f04d;justify-content:space-between;align-items:center;padding-bottom:8px;display:flex}.jk-practice-title{color:var(--accent);text-transform:uppercase;letter-spacing:.5px;font-size:11.5px;font-weight:800}.jk-practice-close-btn{color:var(--text-secondary);cursor:pointer;background:#e2e8f080;border:none;border-radius:8px;padding:2px 8px;font-size:11px;font-weight:700;transition:all .2s}.jk-practice-close-btn:hover{color:var(--danger);background:#e53e3e14}.jk-practice-body{text-align:center;flex-direction:column;align-items:center;gap:10px;display:flex}.jk-practice-text-kr{color:var(--text);word-break:break-word;font-size:20px;font-weight:800;line-height:1.4}.jk-practice-text-vi{color:var(--text-secondary);font-size:13px;font-style:italic}.jk-practice-text-roman{color:var(--accent);opacity:.95;margin-top:-4px;font-size:14px;font-style:italic;font-weight:600}.jk-practice-audio-btn{color:var(--accent);cursor:pointer;background:#8b5cf60d;border:1px solid #8b5cf626;border-radius:50%;justify-content:center;align-items:center;margin-left:6px;padding:6px;transition:all .2s;display:inline-flex}.jk-practice-audio-btn:hover:not(:disabled){background:var(--accent);color:#fff;border-color:var(--accent);transform:scale(1.08)}.jk-practice-audio-btn:active:not(:disabled){transform:scale(.95)}.jk-practice-audio-btn:disabled{opacity:.5;cursor:not-allowed}.jk-practice-status{justify-content:center;align-items:center;min-height:24px;display:flex}.jk-practice-score-box{color:var(--text-secondary);background:#8b5cf60d;border:1.5px solid #8b5cf626;border-radius:12px;padding:8px 24px;font-size:14px;font-weight:700}.jk-practice-controls{justify-content:center;gap:12px;margin-top:4px;display:flex}@media (width<=768px){.jk-suggestion-wrapper{flex:100%;min-width:100%;max-width:100%}.jk-practice-panel{gap:8px;padding:12px 14px}.jk-practice-text-kr{font-size:16px}.jk-practice-text-vi{font-size:12px}.jk-practice-text-roman{margin-top:-2px;font-size:12px}.jk-practice-audio-btn{padding:4px}}@keyframes vocab-rocket-fly{0%{opacity:0;transform:translate(-50%,-50%)translate(calc(-50vw - 200px),140px)scale(.2)rotate(15deg)}10%{opacity:1}35%{opacity:1;transform:translate(-50%,-50%)translate(-20px,-10px)scale(1.05)rotate(-2deg)}50%{opacity:1;transform:translate(-50%,-50%)translate(0,0)scale(1)rotate(0)}65%{opacity:1;transform:translate(-50%,-50%)translate(20px,-8px)scale(1.02)rotate(2deg)}85%{opacity:1}to{opacity:0;transform:translate(-50%,-50%)translate(calc(50vw + 200px),-140px)scale(1.4)rotate(-8deg)}}@keyframes cat-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes smoke-puff-1{0%{opacity:.9;transform:scale(.4)translate(0)}to{opacity:0;transform:scale(1.4)translate(-40px,15px)}}@keyframes smoke-puff-2{0%{opacity:.8;transform:scale(.3)translate(0)}to{opacity:0;transform:scale(1.2)translate(-50px,20px)}}@keyframes smoke-puff-3{0%{opacity:.9;transform:scale(.5)translate(0)}to{opacity:0;transform:scale(1.5)translate(-35px,10px)}}@keyframes pulse-red{0%{box-shadow:0 0 #e53e3e66}70%{box-shadow:0 0 0 10px #e53e3e00}to{box-shadow:0 0 #e53e3e00}}.pulse-red{animation:2s infinite pulse-red}.recording-button-main:hover{transform:scale(1.05)}.recording-button-main:active{transform:scale(.96)}.feedback-spinner{animation:1s linear infinite spin}.study-modes-grid{grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:24px;display:grid}@media (width<=1024px){.study-modes-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=640px){.study-modes-grid{grid-template-columns:repeat(2,1fr)}}.study-mode-card{background:var(--surface);border:1.5px solid var(--gray-200);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:12px;flex-direction:row;align-items:center;gap:10px;padding:12px 14px;transition:all .2s;display:flex;box-shadow:0 2px 8px #0000000a}.study-mode-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 6px 16px #0000000f}.study-mode-card.active{border:1.5px solid var(--accent);box-shadow:0 4px 12px #e91e7b14;background:var(--purple)!important}.tab-btn{border:2px solid var(--gray-200)!important;background:var(--surface)!important;font-weight:700!important;transition:all .2s!important;box-shadow:0 6px 16px #959da514!important}.tab-btn:hover{transform:translateY(-1px);border-color:var(--accent)!important;box-shadow:0 8px 20px #959da51f!important}.tab-btn.active{border-color:var(--accent)!important;background:var(--purple)!important;color:var(--accent)!important;box-shadow:0 6px 16px #e91e7b1a!important}.study-mode-card .card-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.study-mode-card .card-title{color:var(--text);text-align:left;flex:1;font-size:13px;font-weight:700}.study-mode-card .card-badge{background:var(--bg);color:var(--text-muted);border:1px solid var(--gray-200);border-radius:6px;flex-shrink:0;padding:2px 8px;font-size:10px;font-weight:700;line-height:1.4}.study-mode-card .card-badge.completed{background:var(--green);color:var(--green-deep);border-color:var(--green)}.flashcard-speech-layout{flex-direction:row;justify-content:center;align-items:flex-start;gap:24px;width:100%;margin-top:16px;display:flex}.flashcard-speech-col-left{flex-direction:column;flex:1;gap:16px;width:100%;max-width:540px;display:flex}.flashcard-speech-col-right{box-sizing:border-box;flex:1;width:100%;max-width:540px;height:320px}.flashcard-container{max-width:540px!important}.flashcard-results-card-container{background:var(--surface);border:2px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);box-sizing:border-box;flex-direction:column;gap:10px;width:100%;height:100%;padding:14px 18px;display:flex;overflow-y:auto}.flashcard-results-card-container::-webkit-scrollbar{width:6px}.flashcard-results-card-container::-webkit-scrollbar-track{background:0 0}.flashcard-results-card-container::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.flashcard-results-card-container::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@media (width<=991px){.flashcard-speech-layout{flex-direction:column;align-items:center}.flashcard-speech-col-left,.flashcard-speech-col-right,.flashcard-container{max-width:480px!important}}@media (width<=1024px){input,select,textarea{font-size:16px!important}}.found-lab{--lab-accent:var(--accent);--lab-blue:#377cf6;--lab-gold:#f59e0b;--lab-green:#1fa971;--lab-pink:#ec2777;--lab-purple:#7c5cfc;flex-direction:column;gap:20px;min-width:0;max-width:100%;padding:4px 2px 2px;display:flex}.found-lab *{box-sizing:border-box}.found-lab-intro{border:1px solid color-mix(in srgb, var(--lab-accent) 12%, var(--border));background:linear-gradient(135deg, color-mix(in srgb, var(--lab-accent) 2%, var(--surface)), var(--surface));box-shadow:var(--shadow-sm);border-radius:16px;justify-content:space-between;align-items:center;gap:20px;padding:20px 24px;display:flex}.found-lab-kicker,.found-workbench-label,.found-check-heading>span,.found-remember-heading>span,.syllable-lab-kicker,.workbench-label,.check-heading>span{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:4px;font-size:10px;font-weight:800;display:block}.found-lab-intro h3{color:var(--text);margin:4px 0 6px;font-size:clamp(19px,2vw,24px);font-weight:800;line-height:1.2}.found-lab-intro p{max-width:680px;color:var(--text-secondary);margin:0;font-size:13.5px;line-height:1.6}.found-lab-goal{background:color-mix(in srgb, var(--lab-green) 5%, var(--surface));border:1px solid color-mix(in srgb, var(--lab-green) 20%, transparent);min-width:240px;box-shadow:0 4px 12px color-mix(in srgb, var(--lab-green) 5%, transparent);border-radius:14px;align-items:center;gap:12px;padding:12px 14px;display:flex}.found-lab-goal>span{background:color-mix(in srgb, var(--lab-green) 12%, transparent);width:32px;height:32px;color:var(--lab-green);border-radius:50%;flex-shrink:0;place-items:center;font-size:14px;font-weight:900;display:grid}.found-lab-goal div{flex-direction:column;gap:2px;display:flex}.found-lab-goal small{letter-spacing:.08em;color:var(--lab-green);text-transform:uppercase;font-size:9px;font-weight:800}.found-lab-goal strong{color:var(--text);font-size:12.5px;font-weight:700;line-height:1.35}.found-lab-picker{flex-wrap:wrap;align-items:stretch;gap:10px;min-width:0;display:flex}.found-lab-picker>span{color:var(--text-secondary);align-self:center;margin-right:5px;font-size:12.5px;font-weight:800}.found-lab-picker button,.found-choice{min-width:50px;min-height:50px;color:var(--text);background:var(--surface);border:1.5px solid var(--border);cursor:pointer;font:inherit;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:10px 14px;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex}.found-lab-picker button:hover,.found-choice:hover{border-color:color-mix(in srgb, var(--lab-accent) 35%, var(--border));transform:translateY(-2px);box-shadow:0 4px 12px #00000008}.found-lab-picker button.is-active,.found-choice.is-active{border-color:var(--lab-accent);box-shadow:0 6px 18px color-mix(in srgb, var(--lab-accent) 15%, transparent);background:color-mix(in srgb, var(--lab-accent) 5%, var(--surface));color:var(--text);font-weight:700}.found-lab-picker b,.found-choice b{font-size:15px;font-weight:700;line-height:1.2}.found-lab-picker small,.found-choice small{color:var(--text-muted);text-align:center;font-size:10px;line-height:1.3}.found-workbench{border:1px solid var(--border);background:color-mix(in srgb, var(--bg) 60%, var(--surface));border-radius:20px;gap:20px;min-width:0;padding:20px;display:grid;box-shadow:inset 0 1px 2px #ffffffb3}.found-workbench.cols-2{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}.found-workbench.cols-3{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr) minmax(0,.95fr)}.found-panel{flex-direction:column;gap:12px;min-width:0;display:flex}.found-panel-title{letter-spacing:.08em;color:var(--text-muted);text-transform:uppercase;font-size:11px;font-weight:800}.found-story{border:1px solid var(--border);background:var(--surface);min-height:130px;box-shadow:var(--shadow);border-radius:16px;flex-direction:column;gap:6px;padding:18px;display:flex}.found-story>span{letter-spacing:.1em;color:var(--lab-accent);text-transform:uppercase;font-size:9.5px;font-weight:800}.found-story h4{color:var(--text);margin:4px 0 6px;font-size:17px;font-weight:800;line-height:1.3}.found-story p{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.6}.found-story-rule{background:color-mix(in srgb, var(--lab-accent) 6%, var(--bg));border-left:3px solid var(--lab-accent);color:var(--text);border-radius:10px;margin-top:10px;padding:10px 12px;font-size:12px;line-height:1.55}.found-story-rule strong{color:var(--lab-accent);font-weight:700}.found-example-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:12px;align-items:center;gap:12px;min-width:0;padding:12px 14px;transition:border-color .2s;display:flex}.found-example-card:hover{border-color:color-mix(in srgb, var(--lab-accent) 20%, var(--border))}.found-example-card .ko{color:var(--lab-accent);word-break:keep-all;font-size:17px;font-weight:800;line-height:1.3}.found-example-card .vi{color:var(--text-secondary);margin-top:3px;font-size:12.5px;line-height:1.45}.found-tts{border:1px solid color-mix(in srgb, var(--lab-accent) 25%, var(--border));background:color-mix(in srgb, var(--lab-accent) 6%, var(--surface));min-width:52px;min-height:38px;color:var(--lab-accent);cursor:pointer;border-radius:18px;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-size:11.5px;font-weight:800;transition:all .2s;display:inline-flex}.found-tts:hover{background:var(--lab-accent);color:var(--surface);border-color:var(--lab-accent);box-shadow:0 4px 10px color-mix(in srgb, var(--lab-accent) 25%, transparent)}.found-tts.icon-only{border-radius:50%;width:38px;min-width:38px;height:38px;padding:0}.found-rail{flex-wrap:wrap;align-items:stretch;gap:10px;min-width:0;padding:4px 0;display:flex}.found-role-chip{border:1.5px solid color-mix(in srgb, var(--chip-color,var(--lab-accent)) 25%, var(--border));background:color-mix(in srgb, var(--chip-color,var(--lab-accent)) 6%, var(--surface));min-width:78px;min-height:68px;color:var(--chip-color,var(--lab-accent));cursor:pointer;font:inherit;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:10px 12px;transition:all .25s cubic-bezier(.175,.885,.32,1.1);display:flex}.found-role-chip:hover{border-color:var(--chip-color,var(--lab-accent));box-shadow:0 4px 10px color-mix(in srgb, var(--chip-color,var(--lab-accent)) 10%, transparent);transform:translateY(-2px)}.found-role-chip.is-active{box-shadow:0 6px 16px color-mix(in srgb, var(--chip-color,var(--lab-accent)) 20%, transparent);border-color:var(--chip-color,var(--lab-accent));background:color-mix(in srgb, var(--chip-color,var(--lab-accent)) 12%, var(--surface));border-width:2px;transform:scale(1.03)translateY(-2px)}.found-role-chip .ko{font-size:16px;font-weight:800;line-height:1.2}.found-role-chip .vi{opacity:.9;font-size:11px;font-weight:700}.found-role-chip .role{letter-spacing:.06em;opacity:.75;text-transform:uppercase;font-size:9px;font-weight:800}.found-connector{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:16px;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;padding:20px 16px;display:flex}.found-connector-piece{border:1.5px solid var(--border);background:var(--bg);min-width:78px;box-shadow:var(--shadow-sm);border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:12px 14px;display:flex}.found-connector-piece.accent{border-color:color-mix(in srgb, var(--lab-accent) 25%, var(--border));background:color-mix(in srgb, var(--lab-accent) 6%, var(--surface))}.found-connector-piece .ko{color:var(--text);font-size:22px;font-weight:800;line-height:1.1}.found-connector-piece .label{color:var(--text-muted);font-size:9.5px;font-weight:800}.found-connector-op{color:var(--lab-accent);font-size:18px;font-weight:800}.found-contrast{grid-template-columns:1fr auto 1fr;align-items:stretch;gap:12px;min-width:0;display:grid}.found-contrast-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:14px;flex-direction:column;gap:6px;min-width:0;padding:14px;transition:transform .2s;display:flex}.found-contrast-card:hover{transform:translateY(-2px)}.found-contrast-card strong{color:var(--text);font-size:13px;font-weight:700}.found-contrast-card span{color:var(--text-secondary);font-size:12px;line-height:1.5}.found-contrast-card .ko{color:var(--lab-accent);margin:2px 0;font-size:17px;font-weight:800}.found-contrast-vs{letter-spacing:.08em;color:var(--text-muted);align-self:center;font-size:9px;font-weight:800}.found-check,.syllable-check{background:linear-gradient(135deg, color-mix(in srgb, var(--lab-blue) 3%, var(--surface)), var(--surface));border:1px solid #377cf626;border-radius:16px;grid-template-columns:minmax(180px,.8fr) 1.4fr;gap:16px 20px;min-width:0;padding:20px;display:grid;box-shadow:0 6px 18px #377cf605}.found-check-heading h4,.check-heading h4{color:var(--text);margin:6px 0 0;font-size:15.5px;font-weight:700;line-height:1.4}.found-check-heading h4 b,.check-heading h4 b{color:var(--lab-accent);font-size:17px;font-weight:800}.found-check-heading>span,.check-heading>span{color:var(--lab-blue);font-weight:800}.found-check-options,.check-options{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;display:grid}.found-check-options label,.check-options label{border:1.5px solid var(--border);min-height:52px;color:var(--text);background:var(--surface);cursor:pointer;text-align:center;box-shadow:var(--shadow-sm);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:8px 10px;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;position:relative}.found-check-options label:hover,.check-options label:hover{border-color:var(--lab-blue);transform:translateY(-2px);box-shadow:0 4px 10px #377cf614}.found-check-options label.is-selected,.check-options label.is-selected{border-color:var(--lab-blue);background:color-mix(in srgb, var(--lab-blue) 6%, var(--surface));font-weight:700;transform:translateY(-1px);box-shadow:0 4px 12px #377cf61f}.found-check-options label.is-answer,.check-options label.is-answer{border-color:var(--lab-green);background:color-mix(in srgb, var(--lab-green) 8%, var(--surface));color:var(--success-strong);font-weight:700;box-shadow:0 4px 12px #1fa97124}.found-check-options label.is-wrong,.check-options label.is-wrong{border-color:var(--danger);background:color-mix(in srgb, var(--danger) 8%, var(--surface));color:var(--danger-strong);font-weight:700;box-shadow:0 4px 12px #e53e6224}.found-check-options input,.check-options input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}:is(.found-check-options label:has(input:focus-visible),.check-options label:has(input:focus-visible)){outline:3px solid color-mix(in srgb, var(--lab-blue) 32%, transparent);outline-offset:2px}.found-check-options strong,.check-options strong{font-size:13px;line-height:1.3}.found-check-options small,.check-options small{color:var(--text-muted);font-size:9.5px;line-height:1.3}.found-check-feedback,.check-feedback{background:var(--surface);min-height:38px;color:var(--text-secondary);border:1px solid var(--border);border-radius:10px;grid-column:1/-1;align-items:center;padding:8px 14px;font-size:12.5px;line-height:1.5;display:flex;box-shadow:inset 0 1px 2px #00000005}.found-check.is-correct .found-check-feedback,.syllable-check.is-correct .check-feedback{color:#137a51;background:color-mix(in srgb, var(--lab-green) 10%, var(--surface));border-color:color-mix(in srgb, var(--lab-green) 20%, transparent)}.found-check.is-answered:not(.is-correct) .found-check-feedback,.syllable-check.is-answered:not(.is-correct) .check-feedback{color:var(--danger-strong);background:color-mix(in srgb, var(--danger) 8%, var(--surface));border-color:color-mix(in srgb, var(--danger) 20%, transparent)}.found-remember{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:16px;grid-template-columns:minmax(180px,.75fr) 1.4fr;gap:16px 20px;min-width:0;padding:20px;display:grid}.found-remember-heading h4{color:var(--text);margin:6px 0;font-size:16.5px;font-weight:800;line-height:1.3}.found-remember-heading p{color:var(--text-secondary);margin:0;font-size:12px;line-height:1.55}.found-remember-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;display:grid}.found-remember-grid article{border:1px solid var(--border);background:var(--bg);border-radius:12px;align-items:flex-start;gap:10px;min-height:84px;padding:12px;transition:transform .2s;display:flex}.found-remember-grid article:hover{transform:translateY(-2px)}.found-remember-grid article>b{width:26px;height:26px;color:var(--lab-accent);background:color-mix(in srgb, var(--lab-accent) 12%, transparent);border-radius:8px;flex:0 0 26px;place-items:center;font-size:10px;font-weight:800;display:grid}.found-remember-grid div{flex-direction:column;gap:4px;min-width:0;display:flex}.found-remember-grid strong{color:var(--text);font-size:12px;font-weight:700;line-height:1.3}.found-remember-grid span{color:var(--text-muted);font-size:10.5px;line-height:1.45}.found-remember details,.patchim-why details{border-top:1px dashed var(--border);grid-column:1/-1;padding-top:10px}.found-remember summary,.patchim-why summary{width:fit-content;color:var(--text-secondary);cursor:pointer;align-items:center;gap:6px;min-height:38px;font-size:12px;font-weight:800;transition:color .2s;display:inline-flex}.found-remember summary:hover,.patchim-why summary:hover{color:var(--lab-accent)}.found-remember details p,.patchim-why details p{background:var(--bg);border:1px solid var(--border);color:var(--text-secondary);border-radius:10px;margin:8px 0 0;padding:10px 12px;font-size:12px;line-height:1.55}.found-shelf{grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:10px;display:grid}.found-shelf-item{text-align:left;border:1.5px solid var(--border);background:var(--surface);min-height:88px;color:var(--text);cursor:pointer;font:inherit;box-shadow:var(--shadow-sm);border-radius:14px;flex-direction:column;justify-content:center;align-items:flex-start;gap:4px;padding:12px;transition:all .22s cubic-bezier(.16,1,.3,1);display:flex}.found-shelf-item:hover{border-color:color-mix(in srgb, var(--lab-accent) 25%, var(--border));transform:translateY(-2px)}.found-shelf-item.is-active{border-color:var(--lab-accent);box-shadow:0 6px 16px color-mix(in srgb, var(--lab-accent) 12%, transparent);background:color-mix(in srgb, var(--lab-accent) 5%, var(--surface));transform:scale(1.02)}.found-shelf-item .kr-tag{color:var(--lab-accent);font-size:11px;font-weight:800}.found-shelf-item strong{font-size:13.5px;font-weight:700;line-height:1.25}.found-shelf-item small{color:var(--text-muted);font-size:10px;line-height:1.35}.found-timeline{grid-template-columns:repeat(3,1fr);gap:10px;display:grid;position:relative}.found-timeline button{border:1.5px solid var(--border);background:var(--surface);min-height:72px;color:var(--text);cursor:pointer;font:inherit;box-shadow:var(--shadow-sm);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:10px;transition:all .22s cubic-bezier(.16,1,.3,1);display:flex}.found-timeline button:hover{border-color:color-mix(in srgb, var(--lab-accent) 25%, var(--border));transform:translateY(-2px)}.found-timeline button.is-active{border-color:var(--lab-accent);box-shadow:0 6px 18px color-mix(in srgb, var(--lab-accent) 12%, transparent);background:color-mix(in srgb, var(--lab-accent) 5%, var(--surface));transform:scale(1.02)}.found-timeline button strong{font-size:13.5px;font-weight:700}.found-timeline button small{color:var(--text-muted);text-align:center;font-size:9.5px;line-height:1.3}.found-timeline button .dot{background:color-mix(in srgb, var(--lab-accent) 30%, var(--border));border-radius:50%;width:9px;height:9px;transition:background-color .2s,transform .2s}.found-timeline button.is-active .dot{background:var(--lab-accent);transform:scale(1.2)}.found-legend{flex-wrap:wrap;gap:8px 16px;display:flex}.found-legend span{color:var(--text-secondary);align-items:center;gap:6px;font-size:11.5px;font-weight:700;display:inline-flex}.found-legend i{background:var(--dot,var(--lab-accent));border-radius:50%;flex-shrink:0;width:9px;height:9px;font-style:normal}.found-lab button:focus-visible,.found-lab [role=radio]:focus-visible,.found-lab summary:focus-visible{outline:3px solid color-mix(in srgb, var(--lab-blue) 32%, transparent);outline-offset:2px}.foundation-map{flex-direction:column;gap:0;min-width:0;max-width:100%;display:flex}.foundation-map *,.foundation-map :before,.foundation-map :after{box-sizing:border-box}.foundation-board{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:16px;min-width:0;display:grid}.foundation-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;flex-direction:column;min-width:0;transition:all .25s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow:hidden;box-shadow:0 4px 10px #00000005}.foundation-card:before{content:"";background:var(--accent);opacity:0;pointer-events:none;width:4px;transition:opacity .2s;position:absolute;top:0;bottom:0;left:0}.foundation-card.is-start:not(.is-open){border-color:color-mix(in srgb, var(--accent) 20%, var(--border));box-shadow:0 4px 15px color-mix(in srgb, var(--accent) 5%, transparent)}.foundation-card.is-open{border-color:var(--border);box-shadow:var(--shadow-lg);border-width:1px;grid-column:1/-1}.foundation-card.is-open:before{opacity:1}.foundation-card:hover:not(.is-open){border-color:color-mix(in srgb, var(--accent) 30%, var(--border));box-shadow:0 8px 24px color-mix(in srgb, var(--accent) 8%, transparent);transform:translateY(-3px)}.foundation-card:hover:not(.is-open):before{opacity:.5}.foundation-card-trigger{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:0;flex-direction:column;gap:12px;margin:0;padding:16px;transition:background .2s;display:flex;position:relative}.foundation-card-trigger:hover{background:color-mix(in srgb, var(--accent) 2%, var(--surface-hover,var(--bg)))}.foundation-card-trigger:active{background:color-mix(in srgb, var(--accent) 4%, var(--surface))}.foundation-card-trigger:focus{outline:none}.foundation-card-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;background:color-mix(in srgb, var(--accent) 4%, var(--surface))}.foundation-card-header{background:linear-gradient(to bottom, color-mix(in srgb, var(--accent) 3%, var(--surface)), var(--surface));border-bottom:1px solid var(--border);cursor:default;-webkit-user-select:text;user-select:text;flex-direction:column;align-items:stretch;gap:12px;padding:18px 20px;display:flex;position:relative}.foundation-card-top{justify-content:space-between;align-items:center;gap:8px;min-height:24px;display:flex}.foundation-step{letter-spacing:.06em;min-height:20px;color:var(--accent-strong);background:var(--accent-soft);white-space:nowrap;text-transform:uppercase;border-radius:12px;align-items:center;padding:3px 8px;font-size:9px;font-weight:800;display:inline-flex}.foundation-start-pill,.foundation-open-pill{white-space:nowrap;border-radius:12px;align-items:center;min-height:20px;padding:3px 8px;font-size:9px;font-weight:800;line-height:1.2;display:inline-flex}.foundation-start-pill{color:var(--text-on-accent,#fff);background:linear-gradient(135deg, var(--accent-light), var(--accent));box-shadow:0 2px 6px color-mix(in srgb, var(--accent) 20%, transparent);animation:2.5s infinite badge-pulse}@keyframes badge-pulse{0%{box-shadow:0 0 #e91e7b66}70%{box-shadow:0 0 0 6px #e91e7b00}to{box-shadow:0 0 #e91e7b00}}.foundation-open-pill{color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, transparent);border:1px solid color-mix(in srgb, var(--accent) 20%, transparent)}.foundation-card-main{align-items:flex-start;gap:12px;min-width:0;display:flex}.foundation-badge{width:36px;height:36px;color:var(--accent);background:var(--accent-soft);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;line-height:1;display:flex;box-shadow:0 2px 6px #e91e7b0d}.foundation-card-copy{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.foundation-card-title{color:var(--text);font-size:15px;font-weight:750;line-height:1.3;display:block}.foundation-card-summary{box-shadow:none;background:0 0;border:0;margin:2px 0 0;padding:0;display:block;overflow:visible}.foundation-card-summary-marker{display:none}.foundation-card-summary-body{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.foundation-card-summary-label{display:none}.foundation-card-summary-text{color:var(--text-secondary);overflow-wrap:anywhere;word-break:keep-all;font-size:12.5px;font-weight:500;line-height:1.45;display:block}.foundation-card-meta{align-items:center;gap:12px;min-width:0;margin-right:60px;padding-top:4px;display:flex}.foundation-skill{min-width:0;color:var(--text-secondary);flex:1;align-items:center;font-size:11px;font-weight:600;line-height:1.35;display:inline-flex}.foundation-skill-label{letter-spacing:.02em;color:var(--text-muted);text-transform:uppercase;flex-shrink:0;margin-right:4px;font-size:10px;font-weight:800}.foundation-skill-value{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.foundation-time{color:var(--text-secondary);white-space:nowrap;background:var(--bg);border:1px solid var(--border);border-radius:12px;flex-shrink:0;padding:2px 8px;font-size:10.5px;font-weight:700}.foundation-cta{align-items:center;gap:4px;display:inline-flex;position:absolute;bottom:12px;right:16px}.foundation-cta-label{display:none}.foundation-cta-chevron{background:var(--accent-soft);width:28px;height:28px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;transition:all .22s cubic-bezier(.175,.885,.32,1.1);display:inline-flex}.foundation-card-trigger:hover .foundation-cta-chevron{background:var(--accent);color:#fff;transform:scale(1.05)}.foundation-card-actions{align-items:center;display:flex;position:absolute;top:14px;right:16px}.foundation-close-btn{border:1.5px solid color-mix(in srgb, var(--accent) 30%, var(--border));min-height:32px;color:var(--accent);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border-radius:10px;justify-content:center;align-items:center;gap:6px;margin:0;padding:6px 14px;font-size:12px;font-weight:700;line-height:1.2;transition:all .2s;display:inline-flex}.foundation-close-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 4px 10px #e91e7b1f}.foundation-close-btn-label{letter-spacing:.01em}.foundation-close-btn-icon{background:0 0;flex-shrink:0;justify-content:center;align-items:center;width:14px;height:14px;transition:background-color .2s;display:inline-flex}.foundation-card-panel{cursor:default;background:color-mix(in srgb, var(--accent) 2%, var(--bg));border-top:1px solid var(--border);flex-direction:column;gap:20px;min-width:0;max-width:100%;padding:20px;animation:.25s cubic-bezier(.16,1,.3,1) foundation-panel-in;display:flex}@keyframes foundation-panel-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.syllable-lab{--lab-pink:#ec2777;--lab-blue:#377cf6;--lab-gold:#f59e0b;--lab-green:#1fa971;flex-direction:column;gap:20px;padding:4px 2px 2px;display:flex}.syllable-lab-intro{border:1px solid color-mix(in srgb, var(--lab-pink) 12%, var(--border));background:linear-gradient(135deg, color-mix(in srgb, var(--lab-pink) 2%, var(--surface)), var(--surface));box-shadow:var(--shadow-sm);border-radius:16px;justify-content:space-between;align-items:center;gap:20px;padding:20px 24px;display:flex}.syllable-lab-intro h3{color:var(--text);margin:4px 0 6px;font-size:clamp(19px,2vw,24px);font-weight:800;line-height:1.2}.syllable-lab-intro p{max-width:680px;color:var(--text-secondary);margin:0;font-size:13.5px;line-height:1.6}.syllable-lab-goal{background:color-mix(in srgb, var(--lab-green) 5%, var(--surface));border:1px solid color-mix(in srgb, var(--lab-green) 20%, transparent);min-width:240px;box-shadow:0 4px 12px color-mix(in srgb, var(--lab-green) 5%, transparent);border-radius:14px;align-items:center;gap:12px;padding:12px 14px;display:flex}.syllable-lab-goal>span{width:32px;height:32px;color:var(--lab-green);background:#1fa9711f;border-radius:50%;flex-shrink:0;place-items:center;font-size:14px;font-weight:900;display:grid}.syllable-lab-goal div{flex-direction:column;gap:2px;display:flex}.syllable-lab-goal small{letter-spacing:.08em;color:var(--lab-green);text-transform:uppercase;font-size:9px;font-weight:800}.syllable-lab-goal strong{color:var(--text);font-size:12.5px;font-weight:700;line-height:1.35}.syllable-sample-picker{flex-wrap:wrap;align-items:stretch;gap:10px;display:flex}.syllable-sample-picker>span{color:var(--text-secondary);align-self:center;margin-right:5px;font-size:12.5px;font-weight:800}.syllable-sample-picker button{min-width:64px;min-height:50px;color:var(--text);background:var(--surface);border:1.5px solid var(--border);cursor:pointer;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:8px 12px;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex}.syllable-sample-picker button:hover{border-color:color-mix(in srgb, var(--lab-pink) 35%, var(--border));transform:translateY(-2px);box-shadow:0 4px 12px #00000008}.syllable-sample-picker button.is-active{border-color:var(--lab-pink);background:#ec27770a;font-weight:700;box-shadow:0 6px 18px #ec277726}.syllable-sample-picker b{font-size:18px;font-weight:800}.syllable-sample-picker small{color:var(--text-muted);font-size:10px}.syllable-workbench{border:1px solid var(--border);background:color-mix(in srgb, var(--bg) 60%, var(--surface));border-radius:20px;grid-template-columns:minmax(180px,.78fr) 48px minmax(230px,1fr) minmax(220px,.9fr);align-items:center;gap:20px;padding:20px;display:grid;position:relative;box-shadow:inset 0 1px 2px #ffffffb3}.syllable-parts{flex-direction:column;gap:10px;display:flex}.workbench-label{color:var(--text-muted);margin-bottom:4px}.syllable-part{text-align:left;background:var(--surface);border:1.5px solid var(--border);min-height:60px;color:var(--text);cursor:pointer;box-shadow:var(--shadow-sm);border-radius:14px;grid-template-columns:42px 1fr;align-items:center;gap:12px;padding:8px 12px;transition:all .25s cubic-bezier(.16,1,.3,1);display:grid}.syllable-part:hover{transform:translate(4px);box-shadow:0 4px 10px #00000008}.syllable-part.is-active{border-width:2px;font-weight:700;transform:translate(6px);box-shadow:0 6px 18px #0f172a14}.syllable-part.part-onset.is-active{border-color:var(--lab-blue);background:#377cf60a}.syllable-part.part-vowel.is-active{border-color:var(--lab-gold);background:#f59e0b0a}.syllable-part.part-coda.is-active{border-color:var(--lab-pink);background:#ec27770a}.syllable-part.is-empty .part-jamo{color:var(--text-muted);background:var(--bg);border:1px dashed var(--border)}.part-jamo{background:var(--bg);border-radius:10px;place-items:center;width:38px;height:38px;font-size:20px;font-weight:800;display:grid}.part-onset .part-jamo{color:var(--lab-blue);background:#377cf61a}.part-vowel .part-jamo{color:#c97a00;background:#f59e0b1f}.part-coda .part-jamo{color:var(--lab-pink);background:#ec27771a}.syllable-part>span:last-child{flex-direction:column;gap:2px;display:flex}.syllable-part b{font-size:12.5px;font-weight:700}.syllable-part small{color:var(--text-muted);font-size:10px}.assembly-arrow{color:var(--lab-pink);flex-direction:column;align-items:center;gap:2px;font-size:24px;font-weight:950;animation:2s ease-in-out infinite float-arrow;display:flex}@keyframes float-arrow{0%,to{transform:translate(0)}50%{transform:translate(4px)}}.assembly-arrow span{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-size:8px;font-weight:800}.syllable-stage{flex-direction:column;justify-content:center;align-items:center;min-height:280px;margin:0;display:flex;position:relative}.stage-glow{background:color-mix(in srgb, var(--lab-pink) 8%, transparent);filter:blur(12px);pointer-events:none;border-radius:50%;width:170px;height:170px;position:absolute}.hangul-tile{isolation:isolate;background:linear-gradient(135deg,#fff,#fcfbfd);border:1px solid #ec27772e;border-radius:24px;place-items:center;width:160px;height:160px;display:grid;position:relative;box-shadow:0 12px 28px #0f172a0f,inset 0 1px #ffffffe6}.tile-result{z-index:2;color:var(--text);font-size:88px;font-weight:900;line-height:1;transition:transform .22s cubic-bezier(.175,.885,.32,1.275)}.tile-zone{z-index:3;opacity:0;color:#0000;border:2.5px solid var(--zone-color);pointer-events:none;border-radius:10px;font-size:0;transition:opacity .22s,transform .22s cubic-bezier(.175,.885,.32,1.275),box-shadow .22s;display:block;position:absolute;transform:scale(.95)}.tile-zone:after{content:attr(data-label);color:#fff;background:var(--zone-color);letter-spacing:.08em;white-space:nowrap;border-radius:20px;padding:4px 8px;font-size:8px;font-weight:800;line-height:1;position:absolute;left:50%;transform:translate(-50%);box-shadow:0 4px 10px #0f172a26}.zone-onset{--zone-color:var(--lab-blue);background:#377cf60b;width:56px;height:74px;top:16px;left:16px}.zone-vowel{--zone-color:var(--lab-gold);background:#f59e0b0b;width:60px;height:74px;top:16px;right:14px}.zone-coda{--zone-color:var(--lab-pink);background:#ec27770b;height:44px;bottom:14px;left:16px;right:14px}.zone-onset:after,.zone-vowel:after{top:-10px}.zone-coda:after{bottom:-10px}.layout-stack .zone-onset{width:auto;height:48px;top:14px;left:20px;right:20px}.layout-stack .zone-vowel{width:auto;height:38px;top:66px;left:20px;right:20px}.layout-stack .zone-coda{height:38px;bottom:10px;left:20px;right:20px}.no-coda .zone-coda{--zone-color:var(--text-muted);background:#64748b08;border-style:dashed}.active-onset .zone-onset{opacity:1;transform:scale(1.02);box-shadow:0 0 12px #377cf626}.active-vowel .zone-vowel{opacity:1;transform:scale(1.02);box-shadow:0 0 12px #f59e0b26}.active-coda .zone-coda{opacity:1;transform:scale(1.02);box-shadow:0 0 12px #ec277726}.syllable-stage figcaption{z-index:2;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-top:14px;display:flex}.syllable-stage figcaption>strong{color:var(--text);font-size:17px;font-weight:800}.syllable-stage figcaption>span{color:var(--text-secondary);font-size:11.5px}.syllable-stage figcaption button{min-height:32px;color:var(--lab-pink);cursor:pointer;background:#ec27770f;border:1px solid #ec277738;border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:11px;font-weight:800;transition:all .2s;display:inline-flex}.syllable-stage figcaption button:hover{background:var(--lab-pink);color:#fff;border-color:var(--lab-pink);box-shadow:0 4px 10px #ec277733}.syllable-contrast{grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;display:grid}.syllable-contrast>div{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:14px;align-items:center;gap:12px;padding:12px 14px;transition:transform .2s;display:flex}.syllable-contrast>div:hover{transform:translateY(-2px)}.syllable-contrast>div.has-patchim{background:#ec277705;border-color:#ec277738}.contrast-tile{border:1.5px solid var(--border);background:var(--bg);width:46px;height:46px;box-shadow:var(--shadow-sm);border-radius:12px;place-items:center;font-size:24px;font-weight:900;display:grid}.has-patchim .contrast-tile{border-color:var(--lab-pink);border-bottom:5px solid var(--lab-pink)}.syllable-contrast p{flex-direction:column;gap:2px;margin:0;display:flex}.syllable-contrast b{color:var(--text);font-size:12.5px;font-weight:700}.syllable-contrast small{color:var(--text-muted);font-size:10.5px}.patchim-why{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:16px;grid-template-columns:minmax(200px,.72fr) 1.5fr;gap:16px 20px;padding:20px;display:grid}.patchim-why-heading>span{letter-spacing:.1em;color:var(--lab-pink);text-transform:uppercase;font-size:9.5px;font-weight:800}.patchim-why-heading h4{color:var(--text);margin:4px 0 6px;font-size:17px;font-weight:800}.patchim-why-heading p{color:var(--text-secondary);margin:0;font-size:12px;line-height:1.6}.patchim-why-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.patchim-why-grid article{border:1px solid var(--border);background:var(--bg);border-radius:12px;align-items:flex-start;gap:8px;min-height:84px;padding:12px;transition:transform .2s;display:flex}.patchim-why-grid article:hover{transform:translateY(-2px)}.patchim-why-grid article>b{width:26px;height:26px;color:var(--lab-pink);background:#ec27771a;border-radius:8px;flex:0 0 26px;place-items:center;font-size:10px;font-weight:800;display:grid}.patchim-why-grid article div{flex-direction:column;gap:4px;display:flex}.patchim-why-grid strong{color:var(--text);font-size:12px;font-weight:700;line-height:1.35}.patchim-why-grid span{color:var(--text-muted);font-size:10px;line-height:1.45}@media (width<=980px){.syllable-workbench{grid-template-columns:minmax(180px,.75fr) 38px 1fr}.slot-story{grid-column:1/-1;min-height:auto}.foundation-board{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.found-workbench.cols-2,.found-workbench.cols-3,.found-check,.found-remember{grid-template-columns:1fr}}@media (width<=700px){.syllable-lab-intro,.found-lab-intro{flex-direction:column;align-items:flex-start;gap:14px;padding:16px}.syllable-lab-goal,.found-lab-goal{width:100%;min-width:0}.syllable-workbench{grid-template-columns:1fr;padding:16px}.assembly-arrow{height:32px;margin:8px 0;animation:2s ease-in-out infinite float-arrow-v;transform:rotate(90deg)}@keyframes float-arrow-v{0%,to{transform:rotate(90deg)translate(0)}50%{transform:rotate(90deg)translate(4px)}}.assembly-arrow span{display:none}.syllable-stage{min-height:230px}.hangul-tile{width:140px;height:140px}.tile-result{font-size:80px}.syllable-contrast{grid-template-columns:1fr}.contrast-versus{text-align:center}.syllable-check{grid-template-columns:1fr;padding:16px}.check-feedback{grid-column:auto}.check-options{grid-template-columns:1fr}.patchim-why{grid-template-columns:1fr;padding:16px}.patchim-why-grid{grid-template-columns:1fr}.found-workbench{padding:16px}.found-contrast{grid-template-columns:1fr}.found-contrast-vs{text-align:center}.found-check{padding:16px}.found-check-feedback{grid-column:auto}.found-remember{padding:16px}}@media (width<=560px){.foundation-board{grid-template-columns:1fr}}@media (width<=430px){.syllable-sample-picker{grid-template-columns:repeat(3,1fr);display:grid}.syllable-sample-picker>span{grid-column:1/-1}.syllable-sample-picker button{min-width:0}.check-options{grid-template-columns:1fr}.check-options label{min-height:44px}.found-lab-picker{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.found-lab-picker>span{grid-column:1/-1}.found-lab-picker button{width:100%;min-width:0}.found-shelf{grid-template-columns:1fr 1fr}.found-timeline,.found-check-options{grid-template-columns:1fr}.found-role-chip{flex:calc(50% - 4px);min-width:calc(50% - 4px)}.found-connector{gap:8px}.found-connector-piece{min-width:60px;padding:8px}.found-connector-piece .ko{font-size:16px}}@media (width<=390px){.foundation-card-trigger,.foundation-card-header{padding:14px 12px}.foundation-card-title{font-size:14px}.foundation-card-summary{gap:4px;padding:0}.foundation-card-summary-text{font-size:12px;line-height:1.4}.foundation-skill{font-size:10.5px}.foundation-card-actions{justify-content:flex-start;margin-top:8px;position:relative;top:auto;right:auto}.foundation-close-btn{white-space:normal;text-align:center;width:100%;max-width:100%;padding:8px 12px}}@media (prefers-reduced-motion:reduce){.syllable-lab *,.syllable-lab :before,.syllable-lab :after,.foundation-card,.foundation-card-trigger,.foundation-cta-chevron,.foundation-close-btn,.foundation-card-panel{transition:none!important;animation:none!important}.foundation-card-trigger:hover .foundation-cta-chevron{transform:none}.found-lab *,.found-lab :before,.found-lab :after{transition:none!important;animation:none!important}}
