@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=DM+Serif+Display:ital@0;1&family=Noto+Sans+KR:wght@400;500;700&display=swap";.login-container{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:1.5rem}.login-shell{width:min(100%,460px)}.login-brand{display:flex;flex-direction:column;align-items:center;gap:1rem;margin-bottom:2.35rem;text-align:center}.login-brand-mark{width:3.5rem;height:3.5rem;display:grid;place-items:center}.login-brand-copy{display:flex;flex-direction:column;gap:.35rem}.login-title{margin:0;color:var(--text-primary);font-size:clamp(1.95rem,6vw,2.2rem);font-family:var(--font-latin-sans);font-weight:400;letter-spacing:-.02em;line-height:1}.login-subtitle{margin:0;color:var(--text-muted);font-size:.88rem}.login-card{background:linear-gradient(180deg,color-mix(in srgb,var(--bg-elevated) 92%,transparent),var(--bg-secondary));border:1px solid var(--border-color);border-radius:28px;padding:1.8rem;box-shadow:0 24px 80px var(--shadow-heavy);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.login-form{display:flex;flex-direction:column;gap:1.2rem}.form-group{display:flex;flex-direction:column;gap:.45rem}.form-group label{color:var(--text-muted);font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.form-group input{width:100%;padding:.9rem 1rem;border:1px solid var(--border-medium);border-radius:14px;background:var(--bg-input);color:var(--text-primary);transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}.form-group input:focus{outline:none;border-color:color-mix(in srgb,var(--accent-primary) 58%,white);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-primary) 18%,transparent)}.form-group input::placeholder{color:var(--text-disabled)}.form-group-checkbox{display:flex;align-items:center;margin-top:-.15rem}.checkbox-label{display:inline-flex;align-items:center;gap:.6rem;cursor:pointer;color:var(--text-secondary);font-size:.92rem}.checkbox-label input[type=checkbox]{width:1rem;height:1rem;accent-color:var(--accent-primary)}.checkbox-label span{-webkit-user-select:none;user-select:none}.error-message{border:1px solid var(--error-border);border-radius:14px;background:var(--error-bg);color:#ff9191;padding:.85rem .95rem;font-size:.92rem}.login-submit{width:100%;margin-top:.15rem}.login-google-button{display:inline-flex;align-items:center;justify-content:center;gap:.65rem}.login-google-button svg{display:block}.login-helper{margin:.85rem 0 0;color:var(--text-muted);font-size:.82rem;text-align:center;line-height:1.5}@media (max-width: 640px){.login-container{padding:1rem}.login-brand{margin-bottom:1.7rem}.login-card{padding:1.45rem;border-radius:24px}}.app{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:max(1rem,env(safe-area-inset-top)) 1rem max(1rem,env(safe-area-inset-bottom))}.app-top{align-items:flex-start;padding-top:max(1.5rem,env(safe-area-inset-top) + .5rem)}.container{width:min(100%,760px);display:flex;flex-direction:column;gap:1rem}.home-container{width:min(100%,440px)}.study-container{width:min(100%,500px)}.input-container{width:min(100%,1180px);max-width:100%;min-width:0}.stats-container{width:min(100%,680px)}.settings-container{width:min(100%,480px)}.settings-group{display:flex;flex-direction:column;gap:.45rem}.settings-group-card{padding:0;overflow:hidden}.settings-row{display:flex;align-items:center;gap:.9rem;padding:.9rem 1.25rem;width:100%;text-align:left;background:transparent;border:none;cursor:default}.settings-row-action{cursor:pointer;transition:background .15s ease}.settings-row-action:hover{background:var(--surface-soft)}.settings-row-info{gap:.75rem}.settings-divider{height:1px;background:var(--border-color);margin:0 1.25rem}.settings-avatar{width:2.2rem;height:2.2rem;border-radius:50%;background:linear-gradient(135deg,var(--accent-primary),color-mix(in srgb,var(--accent-primary) 72%,white));color:#fff;font-size:.9rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.settings-avatar-img{object-fit:cover}.settings-user-info{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;flex:1;min-width:0}.settings-user-label{color:var(--text-primary);font-size:.9rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-admin-badge{display:inline-flex;align-items:center;padding:.12rem .45rem;border-radius:5px;background:color-mix(in srgb,var(--accent-primary) 12%,transparent);color:var(--accent-primary);font-size:.68rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;border:1px solid color-mix(in srgb,var(--accent-primary) 28%,transparent);flex-shrink:0}.settings-row-label{flex:1;font-size:.9rem;font-weight:500;color:var(--text-primary)}.settings-row-copy{flex:1;display:flex;flex-direction:column;gap:.18rem;min-width:0}.settings-row-sublabel{font-size:.78rem;color:var(--text-muted);line-height:1.4}.settings-row-chevron{font-size:1.3rem;color:var(--text-faint);line-height:1;flex-shrink:0}.settings-group-card-danger{border-color:color-mix(in srgb,#e53e3e 35%,var(--border-color))}.settings-danger-kicker{color:#c53030}[data-theme=dark] .settings-danger-kicker{color:#fc8181}.settings-row-danger:hover{background:color-mix(in srgb,#e53e3e 6%,transparent)}.settings-row-label-danger{color:#c53030}[data-theme=dark] .settings-row-label-danger{color:#fc8181}.settings-row-sublabel{color:var(--text-muted)}.settings-row-chevron-danger{color:color-mix(in srgb,#e53e3e 60%,transparent)}[data-theme=dark] .settings-row-chevron-danger{color:color-mix(in srgb,#fc8181 50%,transparent)}.settings-select-input{appearance:none;-webkit-appearance:none;-moz-appearance:none;flex-shrink:0;min-width:4.5rem;padding:.5rem 2rem .5rem .85rem;border-radius:8px;border:1px solid var(--border-color);background-color:var(--surface-soft);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none' stroke='%23888' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><polyline points='2,2 6,6 10,2'/></svg>");background-repeat:no-repeat;background-position:right .7rem center;background-size:.7rem;color:var(--text-primary);font-size:.95rem;font-weight:600;font-variant-numeric:tabular-nums;text-align:left;cursor:pointer;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}.settings-select-input:hover{border-color:color-mix(in srgb,var(--accent-primary) 40%,var(--border-color))}.settings-select-input:focus-visible{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-primary) 18%,transparent)}.settings-select-input:disabled{cursor:not-allowed;opacity:.55}.settings-select-input-saving{background-image:none;padding-right:2.4rem;position:relative}.settings-row-input{position:relative}.settings-row-input .settings-select-saving-spinner{position:absolute;right:1.55rem;top:50%;width:.85rem;height:.85rem;margin-top:-.425rem;border-radius:50%;border:2px solid color-mix(in srgb,var(--accent-primary) 25%,transparent);border-top-color:var(--accent-primary);animation:settings-spin .7s linear infinite;pointer-events:none}@keyframes settings-spin{to{transform:rotate(360deg)}}.expressions-container{width:min(100%,1680px);max-width:100%;min-width:0}.page-kicker{display:inline-block;margin-bottom:.35rem;color:var(--text-tertiary);font-size:.76rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.header-with-logout{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem}.header-copy h2{color:var(--text-primary);font-size:clamp(1.5rem,3vw,2rem);font-family:var(--font-latin-serif);font-weight:400;line-height:1.05}.header-actions{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;justify-content:flex-end}.card{position:relative;overflow:hidden;background:linear-gradient(180deg,color-mix(in srgb,var(--bg-elevated) 94%,transparent),color-mix(in srgb,var(--bg-secondary) 94%,transparent));border:1px solid var(--border-color);border-radius:28px;padding:1.4rem;box-shadow:0 24px 70px var(--shadow-color);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.card:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:1px;background:linear-gradient(90deg,transparent,var(--surface-strong),transparent)}.loading-container,.empty-state-card,.expression-list-empty{min-height:320px}.loading-container,.empty-state-card,.expression-list-empty{display:flex;align-items:center;justify-content:center}.loading-container{width:min(100%,560px)}.loading-indicator{display:flex;flex-direction:column;align-items:center;gap:1rem;color:var(--text-tertiary)}.loading-spinner{width:2.75rem;height:2.75rem;border:3px solid color-mix(in srgb,var(--border-light) 70%,transparent);border-top-color:var(--accent-primary);border-radius:999px;animation:loadingSpin .8s linear infinite}@keyframes loadingSpin{to{transform:rotate(360deg)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:2.9rem;padding:.78rem 1.1rem;border:1px solid transparent;border-radius:14px;font-weight:700;letter-spacing:.01em;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease,border-color .16s ease,color .16s ease}.btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.btn-primary{background:linear-gradient(135deg,var(--accent-primary),color-mix(in srgb,var(--accent-primary) 72%,white));color:#fefefe;box-shadow:0 14px 26px #567bdb40}.btn-primary:hover{box-shadow:0 18px 30px #567bdb54}.btn-success{background:linear-gradient(135deg,#2ea66f,#67d399);color:#fefefe;box-shadow:0 14px 26px #2ea66f38}.btn-secondary{background:var(--surface-soft);border-color:var(--border-medium);color:var(--text-primary)}.btn-secondary:hover,.btn-ghost:hover{background:var(--surface-strong)}.btn-ghost{background:transparent;border-color:var(--border-medium);color:var(--text-secondary)}.btn-text{min-height:auto;padding:.5rem .75rem;background:transparent;border:none;color:var(--text-faint);font-size:.84rem;font-weight:600}.btn-text:hover{color:var(--text-primary);box-shadow:none}.btn-large{min-width:min(100%,18rem)}.btn-logout,.btn-logout-small{min-height:2.55rem;padding:.65rem .95rem;font-size:.9rem}.home-panel{padding:.3rem 0}.home-header{margin-bottom:2rem;text-align:center}.home-header h1{color:var(--text-primary);font-family:var(--font-latin-sans);font-size:2.4rem;font-weight:400;letter-spacing:-.025em;line-height:1}.home-header p{margin-top:.5rem;color:var(--text-muted);font-size:.88rem;line-height:1.5}.home-menu{display:grid;gap:.6rem}.home-menu-button{display:flex;align-items:center;gap:1rem;width:100%;padding:1rem 1.25rem;border-radius:20px;border:1px solid var(--border-color);background:color-mix(in srgb,var(--bg-secondary) 88%,transparent);box-shadow:0 12px 26px #0000001f;text-align:left;cursor:pointer;transition:transform .15s ease,background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.home-menu-button:hover{transform:translateY(-1px);background:color-mix(in srgb,var(--bg-tertiary) 92%,transparent)}.home-menu-button-primary{background:linear-gradient(135deg,var(--accent-primary),color-mix(in srgb,var(--accent-primary) 72%,white));border-color:transparent;box-shadow:0 14px 30px color-mix(in srgb,var(--accent-primary) 32%,transparent)}.home-menu-button-primary:hover{background:linear-gradient(135deg,color-mix(in srgb,var(--accent-primary) 92%,white),color-mix(in srgb,var(--accent-primary) 74%,white))}.home-menu-icon{width:36px;height:36px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:color-mix(in srgb,var(--accent-primary) 16%,transparent);color:var(--accent-primary);font-size:1rem;font-weight:600}.home-menu-icon-primary{background:#fff3;color:#fff}.home-menu-copy{display:block;flex:1}.home-menu-title{display:block;color:var(--text-primary);font-size:.95rem;font-weight:600}.home-menu-button small{display:block;margin-top:.1rem;font-family:var(--font-korean);font-size:.8rem;font-weight:500;color:var(--text-muted)}.home-menu-button-primary .home-menu-title{color:#fff}.home-menu-button-primary small{color:#ffffffb3}.empty-state-card{flex-direction:column;gap:1rem;padding:2.4rem;text-align:center;color:var(--text-tertiary)}.empty-state-ornament{width:3rem;height:3rem;display:grid;place-items:center;border-radius:999px;background:var(--surface-soft);color:var(--text-muted);font-size:1.3rem}.empty-state-copy{display:flex;flex-direction:column;gap:.45rem;max-width:23rem}.empty-state-copy h2{margin:0;color:var(--text-primary);font-size:1.45rem;font-weight:700;letter-spacing:0}.empty-state-copy p{margin:0;color:var(--text-tertiary);font-size:.95rem;line-height:1.6}.empty-state-actions{display:flex;justify-content:center;gap:.7rem;flex-wrap:wrap;margin-top:.25rem}.empty-state-action-button{min-width:8.5rem}.badge{display:inline-flex;align-items:center;justify-content:center;min-height:1.85rem;padding:.3rem .75rem;border-radius:999px;font-size:.76rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.badge-accent{background:color-mix(in srgb,var(--accent-primary) 16%,transparent);color:color-mix(in srgb,var(--accent-primary) 88%,white)}.badge-green{background:color-mix(in srgb,#2ea66f 18%,transparent);color:#52cc8e}.badge-orange{background:color-mix(in srgb,var(--accent-warm) 18%,transparent);color:color-mix(in srgb,var(--accent-warm) 88%,white)}.badge-neutral{background:var(--surface-soft);color:var(--text-tertiary)}.study-topbar,.study-topbar-actions{display:flex;align-items:center;gap:.5rem}.study-topbar{justify-content:space-between}.study-topbar-actions{margin-left:auto}.study-progress-line{height:3px;overflow:hidden;margin-bottom:1.25rem;border-radius:2px;background:var(--bg-tertiary)}.study-progress-line-fill{height:100%;border-radius:2px;background:var(--accent-primary);transition:width .4s ease}.study-card{padding:2rem 2rem 1.5rem;border-color:var(--border-color);border-radius:14px}.card-ai-generating{border-color:color-mix(in srgb,var(--accent-warm) 38%,var(--border-medium));box-shadow:0 0 0 1px #ffba6924,0 24px 70px #16171d47}.study-expression-frame{min-height:64px;display:flex;align-items:center;justify-content:center;margin-bottom:.7rem;padding-bottom:.7rem;text-align:center}.expression-text{padding:.85rem 0 1.25rem;color:var(--expression-accent);font-family:var(--font-latin-serif);font-size:clamp(2.35rem,6vw,3.65rem);line-height:1.02;text-align:center;letter-spacing:.01em}.study-expression-text{width:100%;padding:0;color:var(--text-primary);font-family:var(--font-latin-sans);font-size:1.75rem;font-weight:400;line-height:1.3;letter-spacing:-.01em}.hidden{filter:blur(4px);color:var(--text-primary);opacity:.4;-webkit-user-select:none;user-select:none}.details{display:flex;flex-direction:column;gap:1.2rem}.meaning{color:var(--text-secondary);font-size:clamp(1.15rem,3vw,1.45rem);font-weight:700;line-height:1.5}.study-meaning{margin-bottom:0;color:var(--text-secondary);font-size:1.15rem;font-weight:500;text-align:center;letter-spacing:-.01em}.study-description{margin-top:-.3rem}.description{color:var(--text-tertiary);font-size:.98rem;line-height:1.75}.study-description .description{font-size:.88rem;line-height:1.7}.ai-badge-inline{display:inline-flex;align-items:center;align-self:flex-start;margin-left:.55rem;padding:.18rem .45rem;border-radius:999px;background:color-mix(in srgb,var(--accent-warm) 18%,transparent);color:color-mix(in srgb,var(--accent-warm) 88%,white);font-size:.68rem;font-style:normal;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.examples{display:flex;flex-direction:column;gap:.85rem}.study-examples{margin-top:.4rem;gap:.48rem}.example-row{padding:.62rem .9rem;border:1px solid var(--border-color);border-radius:18px;background:color-mix(in srgb,var(--surface-soft) 96%,transparent)}.study-example-card{border-radius:10px;background:var(--bg-tertiary)}.example-item{width:100%;display:flex;align-items:flex-start;border:none;background:transparent;padding:0;text-align:left;cursor:pointer;color:var(--text-secondary)}.example-item:hover{color:var(--text-primary)}.example-text{white-space:pre-line}.example-text-original{font-family:var(--font-latin-sans);font-size:.99rem;line-height:1.7}.study-example-card .example-text-original{color:var(--text-secondary);font-size:.95rem;font-style:italic;line-height:1.6}.example-translation,.example-translation-error{display:flex;align-items:flex-start;margin-top:.2rem;font-size:.92rem;line-height:1.65}.example-translation{color:var(--text-tertiary)}.example-translation-error{color:#e18f8f}.study-timeline-wrap{margin-top:.56rem;padding-top:.56rem;border-top:1px solid var(--border-color)}.study-interval-row{display:grid;align-items:center;margin-bottom:.3rem}.study-interval-dot-spacer{width:22px;flex:0 0 22px;justify-self:start}.study-interval-dot-spacer-current{width:28px;flex-basis:28px}.study-interval-label-wrap{flex:1 1 0;display:flex;justify-content:center;min-width:0}.study-interval-label{color:var(--text-disabled);font-size:.58rem;white-space:nowrap}.review-timeline{padding:0;border:none;background:transparent}.timeline-track{display:grid;align-items:center;overflow-x:visible;padding:0}.timeline-dot{width:22px;height:22px;display:grid;place-items:center;border-radius:999px;font-size:.62rem;font-weight:700;flex-shrink:0;justify-self:start}.timeline-dot.completed{background:var(--accent-secondary);color:#fefefe}.timeline-dot.current{width:28px;height:28px;background:var(--accent-primary);color:#fefefe;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-primary) 16%,transparent)}.timeline-dot.future{background:color-mix(in srgb,var(--bg-tertiary) 92%,transparent);color:var(--text-disabled)}.timeline-line{position:relative;height:2px;margin-inline:0}.timeline-line.completed{background:var(--accent-secondary)}.timeline-line.future{background:color-mix(in srgb,var(--bg-tertiary) 92%,transparent)}.timeline-line.current-to-next{--timeline-arrow-color: color-mix(in srgb, var(--accent-primary) 96%, var(--accent-secondary) 4%);--timeline-arrow-head-inset: 0px;--timeline-arrow-head-length: 10px;--timeline-arrow-head-angle: 28deg;background:linear-gradient(90deg,var(--timeline-arrow-color) 0%,var(--timeline-arrow-color) 100%) left center / calc(100% - var(--timeline-arrow-head-inset)) 2px no-repeat}.timeline-line.current-to-next:before,.timeline-line.current-to-next:after{content:"";position:absolute;top:50%;right:var(--timeline-arrow-head-inset);width:var(--timeline-arrow-head-length);height:2px;background:var(--timeline-arrow-color);border-radius:999px;transform-origin:right center}.timeline-line.current-to-next:before{transform:translateY(-50%) rotate(var(--timeline-arrow-head-angle))}.timeline-line.current-to-next:after{transform:translateY(-50%) rotate(calc(var(--timeline-arrow-head-angle) * -1))}[data-theme=light] .study-interval-label{color:color-mix(in srgb,var(--text-tertiary) 82%,var(--text-secondary) 18%);font-weight:600}[data-theme=light] .timeline-dot.future{background:color-mix(in srgb,white 86%,var(--bg-tertiary) 14%);color:color-mix(in srgb,var(--text-secondary) 74%,var(--accent-primary) 26%);border:1px solid color-mix(in srgb,var(--accent-primary) 18%,var(--border-medium) 82%);box-shadow:0 2px 8px #1d212e0d}[data-theme=light] .timeline-line.future{background:color-mix(in srgb,var(--accent-primary) 18%,white 82%)}[data-theme=light] .timeline-line.current-to-next{--timeline-arrow-color: color-mix(in srgb, var(--accent-primary) 100%, var(--accent-secondary) 0%);--timeline-arrow-head-inset: 0px;--timeline-arrow-head-length: 9px;--timeline-arrow-head-angle: 24deg;background:linear-gradient(90deg,var(--timeline-arrow-color) 0%,var(--timeline-arrow-color) 100%) left center / calc(100% - var(--timeline-arrow-head-inset)) 2px no-repeat;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent-primary) 10%,transparent)}[data-theme=light] .timeline-line.current-to-next:before,[data-theme=light] .timeline-line.current-to-next:after{height:2px}.actions{display:flex;justify-content:center;gap:.8rem}.study-actions{margin-top:.875rem}.study-actions .btn{min-height:3.3rem;flex:1 1 0;min-width:0}.study-shortcut-line{margin-top:.6rem;text-align:center;color:var(--text-disabled);font-size:.75rem}@media (hover: none) and (pointer: coarse){.study-shortcut-line{display:none}}.study-kbd{padding:.1rem .35rem;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-tertiary);color:inherit;font:inherit;font-size:.7rem}.completion-screen-container{width:min(100%,500px)}.completion-card{padding:1.35rem 1.35rem 1.5rem}.completion-topbar{justify-content:flex-start}.completion-hero{padding:1.25rem 0 .5rem;text-align:center}.completion-checkmark{width:4rem;height:4rem;display:grid;place-items:center;margin:0 auto 1.25rem;border-radius:999px;background:color-mix(in srgb,#2ea66f 16%,transparent);color:#2ea66f;font-size:1.75rem;font-weight:700}.completion-hero h2{color:var(--text-primary);font-size:1.6rem;font-weight:700;letter-spacing:-.02em}.completion-hero p{margin-top:.4rem;color:var(--text-tertiary);font-size:.9rem}.completion-studied-list{display:flex;flex-direction:column;gap:.5rem;margin-top:1rem}.completion-studied-item{border:1px solid var(--border-color);border-radius:18px;background:color-mix(in srgb,var(--surface-soft) 96%,transparent);overflow:hidden}.completion-studied-header{display:flex;align-items:center;gap:1rem;width:100%;padding:.95rem 1rem;background:transparent;border:0;text-align:left;cursor:pointer;color:inherit;font:inherit}.completion-studied-header:disabled{cursor:default}.completion-studied-header:not(:disabled):hover{background:color-mix(in srgb,var(--surface-soft) 80%,transparent)}.completion-studied-expression{flex:1;color:var(--accent-primary);font-family:var(--font-latin-sans);font-size:1.05rem;font-weight:500}.completion-studied-meaning{color:var(--text-tertiary);font-size:.83rem}.completion-studied-chevron{color:var(--text-tertiary);font-size:.85rem;margin-left:.25rem}.completion-studied-detail{padding:.75rem 1rem .95rem;display:flex;flex-direction:column;gap:.5rem;border-top:1px dashed var(--border-color)}.completion-studied-detail .description{margin:0;font-size:.9rem;color:var(--text-secondary)}.completion-studied-example{margin:0;font-size:.88rem}.completion-actions{display:flex;gap:.75rem;margin-top:1.5rem}.completion-action-button{flex:1;min-width:0}.stats-card,.input-card,.input-result-card,.expressions-card{padding:1.4rem}.stats-header,.expressions-header,.input-card-header{margin-bottom:1rem}.stats-header h2,.expressions-header h2,.input-card-header h2{color:var(--text-primary);font-size:1.32rem}.stats-header p,.expressions-header p,.input-card-header p{margin-top:.45rem;color:var(--text-tertiary);font-size:.84rem;line-height:1.65}.stats-card{padding:1.5rem}.stats-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem;margin-bottom:1.75rem}.stats-summary-card{padding:.875rem;border:1px solid var(--border-color);border-radius:10px;background:color-mix(in srgb,var(--bg-tertiary) 94%,transparent)}.stats-summary-value{color:var(--text-primary);font-size:1.5rem;font-weight:700;line-height:1}.stats-summary-value-green{color:var(--accent-secondary)}.stats-summary-value-accent{color:var(--accent-primary)}.stats-summary-value-muted{color:var(--text-tertiary)}.stats-summary-label{margin-top:.2rem;color:var(--text-tertiary);font-size:.75rem}.stats-weekly{margin-bottom:1.75rem;padding:1rem;border:1px solid var(--border-color);border-radius:12px;background:color-mix(in srgb,var(--bg-tertiary) 94%,transparent)}.stats-weekly-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.85rem;flex-wrap:wrap;gap:.5rem}.stats-weekly-title{color:var(--text-primary);font-size:.95rem;font-weight:600}.stats-weekly-legend{display:flex;gap:.85rem;font-size:.75rem;color:var(--text-tertiary)}.stats-weekly-legend-item{display:inline-flex;align-items:center;gap:.3rem}.stats-weekly-legend-dot{width:10px;height:10px;border-radius:2px;display:inline-block}.stats-weekly-legend-dot-new{background:var(--accent-secondary)}.stats-weekly-legend-dot-review{background:var(--accent-primary)}.stats-weekly-empty{color:var(--text-tertiary);font-size:.82rem;text-align:center;padding:1.25rem 0}.stats-weekly-empty-error{color:#c75a5a}.stats-weekly-chart{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.4rem;align-items:end}.stats-weekly-bar{display:flex;flex-direction:column;align-items:center;gap:.35rem;min-width:0}.stats-weekly-count{font-size:.72rem;color:var(--text-tertiary);font-weight:600;height:1em;line-height:1}.stats-weekly-bar-track{width:100%;height:96px;display:flex;align-items:flex-end;background:color-mix(in srgb,var(--surface-soft) 70%,transparent);border-radius:6px;overflow:hidden}.stats-weekly-bar-fill{width:100%;display:flex;flex-direction:column;border-radius:6px 6px 0 0;overflow:hidden;transition:height .6s cubic-bezier(.25,.46,.45,.94)}.stats-weekly-bar-segment{width:100%}.stats-weekly-bar-segment-new{background:var(--accent-secondary)}.stats-weekly-bar-segment-review{background:var(--accent-primary)}.stats-weekly-day-label{display:flex;flex-direction:column;align-items:center;gap:.05rem;font-size:.7rem;line-height:1.1;color:var(--text-tertiary)}.stats-weekly-day-name{font-weight:500}.stats-weekly-day-date{font-size:.66rem;color:var(--text-faint)}.stats-weekly-day-label-today{color:var(--accent-primary);font-weight:700}.stats-weekly-day-label-today .stats-weekly-day-date{color:var(--accent-primary)}.stats-weekly-bar-today .stats-weekly-bar-track{outline:2px solid color-mix(in srgb,var(--accent-primary) 35%,transparent);outline-offset:1px}.stats-chart{display:grid;gap:.6rem}.stats-row{display:grid;grid-template-columns:64px minmax(0,1fr) 44px;align-items:center;gap:.75rem}.stats-level-label{color:var(--text-tertiary);font-size:.8rem;font-weight:500;text-align:right}.stats-bar-track{overflow:hidden;height:18px;border-radius:4px;background:color-mix(in srgb,var(--bg-tertiary) 94%,transparent);border:1px solid var(--border-color)}.stats-bar-fill{height:100%;border-radius:inherit;opacity:.85;transition:width .6s cubic-bezier(.25,.46,.45,.94)}.stats-count{justify-self:end;color:var(--text-tertiary);font-size:.82rem;font-weight:600}.stats-icon-action{cursor:pointer}.stats-icon-action:hover{color:var(--text-primary)}.stats-bar-track-loading{background:color-mix(in srgb,var(--surface-soft) 80%,var(--border-light))}.stats-bar-fill-loading{background:linear-gradient(90deg,#a9b2ca33,#dbe1f599,#a9b2ca33);background-size:200% 100%;animation:statsLoadingPulse 1.2s linear infinite}.stats-bar-fill-error{background:linear-gradient(90deg,#c75a5a,#e18f8f)}@keyframes statsLoadingPulse{0%{background-position:200% 0}to{background-position:-200% 0}}.input-label,.input-select-label,.expressions-search-label{display:inline-block;color:var(--text-muted);font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.input-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;margin-bottom:.85rem;padding:.3rem;border:1px solid var(--border-color);border-radius:14px;background:color-mix(in srgb,var(--surface-soft) 86%,transparent)}.input-tab{min-height:2.6rem;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--text-tertiary);font:inherit;font-size:.86rem;font-weight:700;cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease}.input-tab:hover{color:var(--text-primary)}.input-tab-active{border-color:color-mix(in srgb,var(--accent-primary) 36%,transparent);background:color-mix(in srgb,var(--accent-primary) 14%,transparent);color:var(--accent-primary)}.input-textarea,.input-select,.input-field,.expressions-search-input,.expression-inline-input{width:100%;border:1px solid var(--border-medium);border-radius:14px;background:var(--bg-input);color:var(--text-primary);transition:border-color .16s ease,box-shadow .16s ease}.input-textarea:focus,.input-select:focus,.input-field:focus,.expressions-search-input:focus,.expression-inline-input:focus{outline:none;border-color:color-mix(in srgb,var(--accent-primary) 58%,white);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-primary) 16%,transparent)}.input-textarea{min-height:240px;padding:1rem;resize:vertical;line-height:1.65}.input-field{min-height:46px;padding:.75rem .9rem;font-size:.9rem}.input-textarea-template{min-height:160px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.8rem;line-height:1.6}.input-textarea-compact{min-height:92px;font-size:.9rem}.input-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.input-form-field{display:flex;min-width:0;flex-direction:column;gap:.45rem}.input-form-field-wide{grid-column:1 / -1}.input-toolbar,.expressions-search-controls,.expressions-toolbar{display:flex;align-items:center;gap:.7rem}.input-toolbar{margin-top:.85rem}.input-toolbar-template{align-items:flex-end;gap:.75rem}.input-toolbar-field{display:flex;flex:1 1 auto;flex-direction:column;gap:.45rem}.input-select{max-width:12rem;padding:.75rem .9rem}.input-select-template{max-width:none;min-height:46px;height:auto;padding-top:.7rem;padding-bottom:.7rem;font-size:.85rem;line-height:1.2}.input-preview-button{margin-top:1.2rem}.input-error,.input-info,.expression-table-inline-error{margin-top:.8rem;border-radius:16px;padding:.85rem .95rem}.input-error,.expression-table-inline-error{border:1px solid var(--error-border);background:var(--error-bg);color:#e18f8f}.input-info{border:1px solid color-mix(in srgb,var(--accent-primary) 35%,transparent);background:color-mix(in srgb,var(--accent-primary) 12%,transparent);color:var(--accent-primary);font-size:.84rem;line-height:1.5}.input-info-success{border-color:color-mix(in srgb,#2ea66f 35%,transparent);background:color-mix(in srgb,#2ea66f 12%,transparent);color:#52cc8e}.input-card-template{border-radius:14px}.input-hint-card{margin-top:.75rem;border:1px solid color-mix(in srgb,var(--accent-primary) 35%,transparent);background:color-mix(in srgb,var(--accent-primary) 12%,transparent);border-radius:10px;padding:1rem 1.25rem}.input-hint-card p{color:var(--accent-primary);font-size:.84rem;line-height:1.5}.input-result-header{margin-bottom:.85rem}.input-result-header h3{color:var(--text-primary);font-size:1rem}.input-result-header p{margin-top:.2rem;color:var(--text-tertiary);font-size:.8rem}.input-result-table-wrapper,.expression-table-wrapper{overflow:auto;border:1px solid var(--border-color);border-radius:20px;background:color-mix(in srgb,var(--surface-soft) 96%,transparent)}.input-result-table,.expression-table{width:100%;border-collapse:collapse}.input-result-table{width:max(100%,1080px);min-width:0}.input-result-table th,.input-result-table td,.expression-table th,.expression-table td{padding:.8rem .9rem;border-bottom:1px solid var(--border-color);text-align:left;vertical-align:top;color:var(--text-secondary);font-size:.85rem}.input-result-table th,.expression-table th{position:sticky;top:0;z-index:1;background:color-mix(in srgb,var(--bg-tertiary) 96%,transparent);color:var(--text-muted);font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.input-result-table tr:last-child td,.expression-table tr:last-child td{border-bottom:none}.input-actions{justify-content:flex-end;margin-top:1rem}.duplicate-match-list{display:flex;flex-direction:column;gap:.35rem;min-width:0}.input-result-detail-list{display:grid;gap:.35rem;min-width:0;line-height:1.45}.input-result-detail-item{display:grid;grid-template-columns:44px minmax(0,1fr);gap:.45rem}.input-result-detail-label{color:var(--text-faint);font-size:.74rem;font-weight:700}.input-result-detail-value{min-width:0;color:var(--text-secondary)}.duplicate-match-item{display:flex;gap:.35rem;min-width:0;color:var(--text-secondary);line-height:1.4}.duplicate-match-expression{color:var(--text-primary);font-weight:600}.duplicate-match-divider{color:var(--text-faint)}.duplicate-match-meaning{min-width:0}.input-result-selection-column{width:68px;min-width:68px}.input-result-expression-column{min-width:220px;color:var(--text-primary);font-weight:600}.input-result-meaning-column{min-width:220px}.input-result-details-column{min-width:360px}.input-result-duplicates-column{min-width:320px}.input-result-status-column{width:150px;min-width:150px}.status-badge,.expression-level-badge,.expressions-count-badge{display:inline-flex;align-items:center;justify-content:center;min-height:1.9rem;padding:.22rem .7rem;border-radius:999px;font-size:.74rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.status-pending{background:color-mix(in srgb,var(--accent-primary) 16%,transparent);color:color-mix(in srgb,var(--accent-primary) 90%,white)}.status-in_progress{background:color-mix(in srgb,var(--accent-warm) 18%,transparent);color:color-mix(in srgb,var(--accent-warm) 90%,white)}.status-done{background:color-mix(in srgb,#2ea66f 18%,transparent);color:#52cc8e}.status-skipped,.status-duplicated{background:var(--surface-soft);color:var(--text-tertiary)}.status-failed{background:color-mix(in srgb,#c75a5a 18%,transparent);color:#e18f8f}.expressions-search{display:grid;gap:.5rem;margin-bottom:1rem}.expressions-topbar{align-items:center}.expressions-topbar-actions{margin-left:auto}.expressions-search-input{flex:1 1 auto;min-width:0;padding:.78rem .95rem}.expressions-search-input-topbar{width:200px;height:36px;padding:.4rem .75rem;font-size:.85rem;border-radius:8px}.expressions-card-template{padding:0;overflow:hidden;border-radius:14px;max-width:100%}.expressions-card-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--border-color)}.expressions-card-header h2{color:var(--text-primary);font-size:1.2rem}.expressions-card-header p{margin-top:.15rem;color:var(--text-tertiary);font-size:.78rem}.expressions-card-header-actions{display:flex;align-items:center}.expressions-delete-button{font-size:.82rem;color:#d96b6b;border-color:color-mix(in srgb,#d96b6b 30%,transparent);border-radius:8px}.expressions-delete-button:disabled{opacity:.4}.expression-table{width:max(100%,1440px);min-width:0}.expression-table-wrapper-template{border:none;border-radius:0;background:transparent;width:100%;max-width:100%;max-height:calc(100vh - 200px);overflow-x:auto;overflow-y:auto;scrollbar-gutter:stable}.expression-table tbody tr:hover{background:color-mix(in srgb,var(--surface-soft) 96%,transparent)}.expression-table-checkbox{width:56px;min-width:56px}.expression-table-star{width:40px;min-width:40px;text-align:center}.expression-star-button.study-actions-star{font-size:1.5rem;min-height:3.3rem;padding:0 1rem;border:1px solid var(--border-medium);border-radius:14px;flex-shrink:0}.expression-star-button{background:none;border:none;cursor:pointer;font-size:1.1rem;color:var(--text-faint);padding:2px 4px;border-radius:4px;line-height:1;transition:color .15s,transform .1s}.expression-star-button:hover:not(:disabled){color:var(--accent-primary);transform:scale(1.2)}.expression-star-button-active{color:#f5a623}.expression-star-button-active:hover:not(:disabled){color:#c07800}.expression-star-button:disabled{opacity:.4;cursor:default}.expression-table-checkbox input{width:1rem;height:1rem;accent-color:var(--accent-primary)}.expression-table-expression{min-width:180px;color:var(--text-primary);font-weight:700}.expression-table-meaning{min-width:200px}.expression-table-description,.expression-table-example{min-width:250px}.expression-table-date{min-width:104px;white-space:nowrap;color:var(--text-faint);font-size:.78rem}.expression-level-badge{background:color-mix(in srgb,var(--accent-primary) 16%,transparent);color:color-mix(in srgb,var(--accent-primary) 90%,white);font-size:.72rem;min-width:3.5rem;white-space:nowrap}.expression-inline-button{width:100%;border:none;background:transparent;color:inherit;padding:0;text-align:left;font:inherit;cursor:pointer}.expression-inline-button:hover{color:var(--text-primary)}.expression-inline-button-generate{color:var(--accent-primary);font-size:.8rem;font-weight:600}.expression-inline-input{font-size:.85rem;padding:.55rem .7rem}.expression-list-empty{flex-direction:column;gap:.85rem;color:var(--text-tertiary);text-align:center}.expression-list-empty p{color:inherit}.expression-table-more{padding:.9rem 1rem;color:var(--text-tertiary);text-align:center}.expression-card-list{display:none;list-style:none;padding:0;margin:0}.expression-card-item{padding:.85rem 1rem;border-bottom:1px solid var(--border-color);transition:background .1s}.expression-card-item:last-child{border-bottom:none}.expression-card-item-selected{background:color-mix(in srgb,var(--accent-primary) 6%,transparent)}.expression-card-top{display:flex;gap:.65rem;align-items:flex-start}.expression-card-checkbox{width:1rem;height:1rem;margin-top:.25rem;flex-shrink:0;accent-color:var(--accent-primary)}.expression-card-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:.3rem}.expression-card-header-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.expression-card-expression{font-weight:700;font-size:1rem;color:var(--text-primary);flex:1;min-width:0}.expression-card-meaning{font-size:.88rem;color:var(--text-secondary)}.expression-card-description,.expression-card-example{font-size:.82rem;color:var(--text-tertiary)}.expression-card-meta{display:flex;justify-content:space-between;align-items:center;margin-top:.15rem;font-size:.75rem;color:var(--text-faint)}.expression-card-meta-updated{margin-left:auto}@media (max-width: 768px){.app{align-items:flex-start;padding-inline:.75rem}.card,.study-card,.stats-card,.input-card,.input-result-card,.expressions-card{padding:1.15rem;border-radius:24px}.header-with-logout,.expressions-search-controls,.expressions-toolbar,.input-toolbar,.actions{flex-direction:column;align-items:stretch}.header-actions{width:100%;justify-content:stretch}.header-actions .btn{flex:1 1 auto}.home-menu-button{padding:.95rem 1rem}.expression-table-desktop{display:none}.expression-card-list{display:block}.expression-table-wrapper-template{overflow-x:hidden}.expressions-topbar,.expressions-card-header{flex-direction:column;align-items:stretch}.expressions-topbar>.btn-text{align-self:flex-start}.expressions-topbar-actions,.expressions-card-header-actions{margin-left:0}.expressions-search-input-topbar,.input-container{width:100%}.input-tabs,.input-form-grid{grid-template-columns:1fr}.study-card{padding:1.35rem 1.15rem 1.15rem;border-radius:14px}.study-topbar{gap:.75rem}.study-topbar-actions{gap:.35rem}.study-actions{flex-direction:row;align-items:stretch}.stats-row{grid-template-columns:76px minmax(0,1fr) 60px;gap:.6rem}}@media (max-width: 540px){.stats-summary-grid{gap:.6rem;margin-bottom:1.25rem}.example-row{padding:.8rem .85rem}}.admin-container{max-width:920px}.admin-dashboard-card{padding:1.25rem}.admin-summary-grid{margin-bottom:1.25rem}.admin-chart-stack{display:flex;flex-direction:column;gap:.75rem}.admin-signup-section{padding:1rem 1.1rem;border:1px solid var(--border-color);border-radius:10px;background:color-mix(in srgb,var(--bg-tertiary) 94%,transparent)}.admin-signup-total{font-size:.8rem;color:var(--text-tertiary)}.admin-signup-chart{display:grid;grid-template-columns:repeat(30,minmax(0,1fr));gap:2px;align-items:end;margin-top:.85rem}.admin-signup-bar{display:flex;flex-direction:column;align-items:center;gap:.2rem;min-width:0}.admin-signup-count{font-size:.6rem;color:var(--text-tertiary);font-weight:600;height:.7rem;line-height:1}.admin-signup-bar-track{width:100%;height:64px;display:flex;align-items:flex-end;background:color-mix(in srgb,var(--surface-soft) 70%,transparent);border-radius:3px;overflow:hidden}.admin-signup-bar-fill{width:100%;background:var(--accent-primary);border-radius:3px 3px 0 0;transition:height .6s cubic-bezier(.25,.46,.45,.94)}.admin-signup-day-label{font-size:.55rem;color:var(--text-faint);white-space:nowrap;transform:rotate(-45deg);transform-origin:top center;margin-top:.5rem;height:1.2rem}.admin-users-card{padding:1.25rem}.admin-users-toolbar{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.admin-users-search{flex:1 1 220px;padding:.55rem .8rem;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-tertiary);color:var(--text-primary);font-size:.9rem}.admin-users-meta{font-size:.78rem;color:var(--text-tertiary)}.admin-users-list{display:flex;flex-direction:column;gap:.5rem}.admin-user-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem .95rem;border:1px solid var(--border-color);border-radius:10px;background:color-mix(in srgb,var(--bg-tertiary) 94%,transparent)}.admin-user-main{display:flex;align-items:center;gap:.85rem;min-width:0;flex:1 1 auto}.admin-user-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;background:var(--surface-soft);display:inline-flex;align-items:center;justify-content:center;font-weight:700;color:var(--text-secondary);flex-shrink:0}.admin-user-avatar-fallback{font-size:1rem}.admin-user-info{min-width:0;display:flex;flex-direction:column;gap:.15rem}.admin-user-name{display:flex;align-items:center;gap:.4rem;color:var(--text-primary);font-weight:600;font-size:.92rem}.admin-user-email{color:var(--text-secondary);font-size:.82rem;word-break:break-all}.admin-user-meta{display:flex;flex-wrap:wrap;gap:.4rem;color:var(--text-tertiary);font-size:.74rem}.admin-role-badge{background:color-mix(in srgb,var(--accent-primary) 18%,transparent);color:var(--accent-primary);font-size:.66rem;font-weight:700;letter-spacing:.05em;padding:.1rem .4rem;border-radius:4px;text-transform:uppercase}.admin-self-badge{background:color-mix(in srgb,var(--accent-secondary) 18%,transparent);color:var(--accent-secondary);font-size:.66rem;font-weight:700;padding:.1rem .4rem;border-radius:4px}.admin-user-actions{flex-shrink:0}.admin-user-delete{color:#c75a5a}.admin-user-delete:disabled{color:var(--text-faint);cursor:not-allowed}.admin-users-pager{display:flex;justify-content:space-between;margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--border-color)}@media (max-width: 540px){.admin-signup-chart{height:80px}.admin-signup-day-label{display:none}.admin-user-row{flex-direction:column;align-items:stretch}.admin-user-actions{align-self:flex-end}}*{margin:0;padding:0;box-sizing:border-box}:root{color-scheme:dark;--bg-primary: #0f1015;--bg-secondary: rgba(24, 26, 35, .88);--bg-tertiary: rgba(34, 37, 50, .82);--bg-elevated: rgba(20, 22, 30, .96);--bg-input: rgba(18, 21, 31, .9);--surface-strong: rgba(255, 255, 255, .08);--surface-soft: rgba(255, 255, 255, .04);--text-primary: #eef0fb;--text-secondary: #d8dcee;--text-tertiary: #a8afca;--text-muted: #8a90aa;--text-faint: #707690;--text-disabled: #5a6079;--expression-accent: #7ca2ff;--accent-primary: #7ca2ff;--accent-secondary: #8bffd8;--accent-warm: #ffba69;--border-color: rgba(255, 255, 255, .08);--border-medium: rgba(255, 255, 255, .14);--border-light: rgba(255, 255, 255, .18);--shadow-color: rgba(0, 0, 0, .28);--shadow-heavy: rgba(0, 0, 0, .42);--timeline-bg: rgba(255, 255, 255, .08);--error-bg: rgba(145, 36, 36, .18);--error-border: rgba(255, 106, 106, .25);--success-bg: rgba(76, 175, 124, .16);--font-latin-sans: "DM Sans", "Noto Sans KR", sans-serif;--font-latin-serif: "DM Serif Display", "Times New Roman", serif;--font-korean: "Noto Sans KR", "DM Sans", sans-serif;--page-gradient: radial-gradient(circle at top left, rgba(124, 162, 255, .18), transparent 28%), radial-gradient(circle at top right, rgba(109, 246, 197, .14), transparent 24%), linear-gradient(180deg, #12131a 0%, #0b0d12 100%)}[data-theme=light]{color-scheme:light;--bg-primary: #f4f1e9;--bg-secondary: rgba(255, 255, 255, .86);--bg-tertiary: rgba(250, 247, 241, .92);--bg-elevated: rgba(255, 255, 255, .97);--bg-input: rgba(247, 244, 238, .95);--surface-strong: rgba(24, 28, 38, .08);--surface-soft: rgba(24, 28, 38, .04);--text-primary: #1c1d24;--text-secondary: #313444;--text-tertiary: #555b72;--text-muted: #70768b;--text-faint: #8f94a8;--text-disabled: #b0b5c6;--expression-accent: #385cbf;--accent-primary: #385cbf;--accent-secondary: #168f72;--accent-warm: #c57a18;--border-color: rgba(24, 28, 38, .08);--border-medium: rgba(24, 28, 38, .12);--border-light: rgba(24, 28, 38, .16);--shadow-color: rgba(29, 33, 46, .08);--shadow-heavy: rgba(29, 33, 46, .14);--timeline-bg: rgba(24, 28, 38, .1);--error-bg: rgba(219, 91, 91, .12);--error-border: rgba(219, 91, 91, .24);--success-bg: rgba(40, 155, 93, .12);--page-gradient: radial-gradient(circle at top left, rgba(76, 113, 219, .15), transparent 32%), radial-gradient(circle at top right, rgba(47, 157, 127, .12), transparent 26%), linear-gradient(180deg, #f4f1e9 0%, #ebe7df 100%)}html,body,#root{min-height:100vh;width:100%;overflow-x:hidden}body{font-family:var(--font-korean);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--text-primary);background:var(--page-gradient);transition:background-color .3s ease,color .3s ease}button,input,textarea,select{font:inherit}button{color:inherit}
