:root{color-scheme:light;--bg:#f8fafb;--surface:#fff;--ink:#263342;--muted:#83909c;--line:#e2e8ed;--accent:#345d70;--soft:#edf3f6;--native:#eef5fa;--nav:#929da6}*{box-sizing:border-box}html[data-theme=dark]{color-scheme:dark;--bg:#19212b;--surface:#222d3a;--ink:#e3eaf0;--muted:#96a4b4;--line:#354253;--accent:#acc9da;--soft:#2c3948;--native:#253b4b;--nav:#9ba7b4}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.8 system-ui,-apple-system,"Segoe UI",sans-serif}button,input{font:inherit;color:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button{border:0;background:none}a{color:inherit;text-decoration:none}[hidden]{display:none!important}.site-header{height:84px;max-width:860px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:12px 28px}.brand{display:flex;align-items:center;gap:12px;font-size:17px;font-weight:650;letter-spacing:1px}.brand small{display:block;font-size:9px;line-height:1.2;letter-spacing:3px;color:var(--muted)}.brand-icon{width:27px;height:32px;display:block;background:var(--accent);mask:var(--icon) center/contain no-repeat}.dictionary-icon{--icon:url('/assets/dictionary-selected.png')}.person-icon{--icon:url('/assets/person-selected.png')}.icon-button{width:44px;height:44px;border-radius:50%;font-size:25px;display:grid;place-items:center}.icon-button:hover{background:var(--soft)}main{max-width:800px;margin:auto;padding:0 28px 120px}.search-tools{position:sticky;top:0;z-index:2;background:var(--bg);padding:12px 0 0}#search-form{display:flex;align-items:center;border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:7px 8px 7px 17px;gap:12px}#word-query{width:100%;min-width:0;background:none;border:0;outline:none;padding:5px 0;font-size:17px}#word-query::placeholder{color:var(--muted)}.search-symbol{width:15px;height:15px;border:1.7px solid var(--muted);border-radius:50%;position:relative;flex-shrink:0}.search-symbol:after{content:"";position:absolute;width:7px;height:1.7px;background:var(--muted);transform:rotate(45deg);right:-5px;bottom:-3px}.search-submit,.primary{background:var(--accent);color:var(--bg);border-radius:8px;padding:7px 18px;white-space:nowrap;font-size:14px}.history{display:flex;gap:12px;overflow:auto;scrollbar-width:none}.history:empty{display:none}.history button{font-size:12px;color:var(--muted);padding:6px 0 0;white-space:nowrap}.toolbar{display:flex;justify-content:space-between;gap:6px;padding:14px 0;border-bottom:1px solid var(--line)}.toolbar button{font-size:13px;color:var(--muted);padding:0 6px}.toolbar span{font-size:17px;margin-right:5px}.intro{padding:52px 6px 18px}.intro p{margin:0}.intro-preface{font-size:17px;letter-spacing:.6px;color:var(--muted)}.intro-preface span{margin-right:6px}.intro ul{padding-left:20px;margin:32px 0;line-height:2.7;color:var(--muted);font-size:16px;font-weight:350}.intro-closing{font-size:13px;line-height:2.2;color:var(--muted)}.sample-area{margin-top:44px}.eyebrow{font-size:11px;letter-spacing:1.5px;color:var(--muted)}.word-tags{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.word-tag{padding:5px 15px;background:var(--soft);border:1px solid var(--line);border-radius:7px;font-size:14px}.word-tag:hover{border-color:var(--accent)}.edition-note{text-align:center;font-size:11px;color:var(--muted);margin:32px 0 0}.tabbar{position:fixed;z-index:3;bottom:0;left:0;right:0;display:flex;justify-content:center;gap:120px;border-top:1px solid var(--line);background:var(--bg);padding:10px 24px max(10px,env(safe-area-inset-bottom))}.tabbar button{display:grid;justify-items:center;min-width:64px;gap:2px;color:var(--nav);font-size:11px}.tabbar button[aria-current]{color:var(--accent)}.nav-icon{display:block;width:24px;height:24px;background:currentColor;mask:var(--icon) center/contain no-repeat}.word-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:34px}.word-heading h1{font-size:clamp(36px,7vw,52px);line-height:1.15;letter-spacing:-1px;margin:0 0 8px;font-weight:700}.phonetic{color:var(--muted);font-size:15px}.phonetic button{font-size:18px;color:var(--accent);padding:0 10px}.pos{font-size:13px;color:var(--muted);margin-left:12px}.favorite{font-size:28px;color:var(--muted)}.favorite[aria-pressed=true]{color:#be933c}.native-box{background:var(--native);padding:20px 24px;border-radius:12px;margin:28px 0}.native-box p{margin:6px 0 0;line-height:1.9}.section-label{font-size:11px;font-weight:650;letter-spacing:1.5px;color:var(--accent)}.word-section{margin-top:30px}.word-section h2{font-size:17px;font-weight:650;margin:0 0 12px}.word-section p{margin:10px 0;font-size:15px}.evolution{padding:0;list-style:none;counter-reset:evolution}.evolution li{padding:18px 0 18px 35px;border-top:1px solid var(--line);position:relative;counter-increment:evolution}.evolution li:before{content:counter(evolution,decimal-leading-zero);position:absolute;left:0;top:21px;font-size:11px;color:var(--muted)}.evolution strong{font-size:15px}.evolution p{font-size:14px}.example{color:var(--accent)}.translation{color:var(--muted);font-size:13px!important}.profile-heading{display:flex;justify-content:space-between;align-items:center;padding:30px 0 25px}.profile-heading h1{font-size:26px;margin:0}.profile-heading p{font-size:12px;color:var(--muted);margin:0}.text-button{color:var(--accent);font-size:13px}.stats-strip{display:grid;grid-template-columns:1fr 1fr;background:var(--native);border:1px solid var(--line);border-radius:12px;margin:0 0 32px;padding:25px}.stats-strip div+div{border-left:1px dashed var(--line);padding-left:25px}.stats-strip strong{font-size:32px;display:block;line-height:1.3}.stats-strip span{font-size:12px;color:var(--muted)}.settings-group{margin:24px 0}.settings-group h2{font-size:11px;letter-spacing:2px;font-weight:500;color:var(--muted)}.settings-row{display:flex;align-items:center;justify-content:space-between;width:100%;border-bottom:1px solid var(--line);padding:17px 0;font-size:15px;text-align:left}.settings-row span:last-child{font-size:12px;color:var(--muted)}.local-note{font-size:12px;color:var(--muted);line-height:2;margin-top:30px}.empty-state{padding:45px 8px;text-align:center}.empty-state h2{font-size:22px}.empty-state p{font-size:14px;color:var(--muted)}dialog{width:min(520px,calc(100% - 32px));max-height:82dvh;padding:0;border:1px solid var(--line);border-radius:18px;color:var(--ink);background:var(--surface);box-shadow:0 24px 80px #0003}dialog::backdrop{background:#14233166;backdrop-filter:blur(3px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 12px 24px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--surface);z-index:1}.dialog-heading h2{font-size:18px;margin:0}.dialog-body{padding:20px 24px 28px;font-size:15px}.dialog-body p{margin:0 0 18px}.dialog-body input{width:100%;border:1px solid var(--line);border-radius:8px;background:var(--bg);padding:10px 12px;margin-bottom:18px}.dialog-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}.dialog-list{display:grid;gap:8px}.dialog-list button{text-align:left;padding:10px 14px;background:var(--soft);border-radius:8px}.dialog-list button[aria-pressed=true]{outline:1px solid var(--accent)}.toast{position:fixed;z-index:10;left:50%;bottom:105px;transform:translateX(-50%);padding:10px 20px;max-width:85vw;border-radius:9px;background:var(--ink);color:var(--bg);font-size:13px;text-align:center;box-shadow:0 6px 25px #0002}body:has(dialog[open]){overflow:hidden}noscript{display:block;text-align:center;padding:32px}@media(max-width:560px){.site-header{height:76px;padding:10px 20px}.brand{font-size:15px}main{padding:0 20px 110px}.intro{padding:36px 0 12px}.intro-preface{font-size:16px}.intro ul{font-size:14px;line-height:2.5;margin:26px 0}.intro-closing{font-size:12px}.sample-area{margin-top:32px}.tabbar{gap:90px}.native-box{padding:18px}.word-heading h1{font-size:40px}}@media(prefers-reduced-motion:no-preference){dialog[open]{animation:appear .16s ease-out}@keyframes appear{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}}
