@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&family=Noto+Sans+TC:wght@400;500;600;700&display=swap');
:root{--bg:#f6f4ee;--paper:#fffefa;--ink:#26332f;--muted:#738078;--line:#e7e9e1;--green:#315d4a;--green-light:#e2ebe3;--peach:#e8bca6;--peach-light:#fae9de;--yellow:#f7e8bd;--shadow:0 18px 55px rgba(34,52,42,.07)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"Noto Sans TC","Noto Sans JP",system-ui,sans-serif;font-size:15px}
button,input,select{font:inherit}
button{cursor:pointer}
button:disabled{cursor:not-allowed}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #d28b65;outline-offset:3px}
[hidden]{display:none!important}
.app-shell{min-height:100vh;max-width:1600px;margin:auto}
.site-header{height:92px;padding:0 clamp(24px,5.6vw,92px);display:flex;align-items:center;gap:34px;border-bottom:1px solid #e8e9e1;background:rgba(255,254,250,.72)}
.brand{display:flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none;min-width:242px}
.brand-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:15px;background:var(--green);color:white;font-size:28px;line-height:1;font-weight:700;transform:rotate(-5deg)}
.brand strong,.brand small{display:block}
.brand strong{font-size:18px;letter-spacing:.08em}
.brand small{font-size:9px;letter-spacing:.19em;color:#94a098;font-weight:700;margin-top:3px}
.main-nav{display:flex;align-self:stretch;align-items:center;gap:32px;margin:auto}
.nav-link{height:100%;background:transparent;border:0;border-bottom:3px solid transparent;color:#7c8980;font-weight:600;white-space:nowrap;padding:3px 0 0}
.nav-link:hover,.nav-link.active{color:var(--green)}
.nav-link.active{border-color:var(--green)}
.header-actions{display:flex;align-items:center;gap:12px;min-width:200px;justify-content:flex-end}
.sync-pill{border:1px solid #d8e4da;background:#ecf2ec;border-radius:100px;padding:8px 12px;color:#42715c;font-size:12px;white-space:nowrap}
.sync-pill.local{background:#fff7e8;border-color:#eddfbe;color:#9a7342}
.user-chip{border:1px solid var(--line);background:white;padding:9px 13px;border-radius:100px;color:var(--green);font-size:13px;font-weight:700}
main{min-height:calc(100vh - 160px)}
.view{padding:0 clamp(24px,5.6vw,92px) 80px}
.hero{min-height:485px;display:grid;grid-template-columns:1.06fr .94fr;align-items:center;gap:25px;overflow:hidden}
.hero-copy{padding:56px 0 46px;position:relative;z-index:2}
.eyebrow{color:#73977d;letter-spacing:.2em;font-size:11px;font-weight:700;margin:0 0 14px;text-transform:uppercase}
.eyebrow-line{display:inline-block;width:25px;height:1px;background:#7fa48a;vertical-align:middle;margin-right:9px}
h1,h2,h3,p{overflow-wrap:anywhere}
h1{font-size:clamp(37px,4.4vw,64px);letter-spacing:-.06em;line-height:1.28;margin:0;font-weight:700}
.hero h1 span{display:block;color:var(--green)}
.hero-description{line-height:1.95;color:#65736b;max-width:490px;font-size:16px;margin:22px 0 27px}
.hero-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.button{border-radius:13px;min-height:47px;padding:12px 20px;font-weight:700;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:22px;transition:transform .18s,background .18s,box-shadow .18s;text-decoration:none}
.button:hover:not(:disabled){transform:translateY(-2px)}
.button-primary{background:var(--green);color:white;box-shadow:0 10px 24px #315d4a2b}
.button-primary:hover{background:#254b3b}
.button-outline{border-color:#b9cfc0;background:white;color:var(--green)}
.button-quiet{background:transparent;color:var(--green);padding-left:4px}
.button-disabled{background:#eef0eb;color:#9aa69c}
.button.small{min-height:36px;padding:7px 12px;font-size:12px;border-radius:10px}
.button.full{width:100%;margin-top:11px;justify-content:space-between}
.hero-art{height:480px;position:relative}
.art-circle{position:absolute;border-radius:50%;inset:auto}
.art-circle-back{width:370px;height:370px;background:#dce9d9;right:11%;top:37px}
.art-circle-front{width:250px;height:250px;background:#f5e6ce;right:-6%;bottom:15px}
.art-card{position:absolute;background:#fffefb;border-radius:28px;box-shadow:0 30px 65px #5b665436;display:flex;flex-direction:column;align-items:center;justify-content:center}
.art-card-back{width:194px;height:245px;right:6%;top:58px;transform:rotate(15deg);background:#edceb9}
.art-card-back span{font-size:12px;letter-spacing:.3em;color:#9e735c}.art-card-back strong{font-size:117px;color:#b47e63;line-height:1.1;font-weight:500}
.art-card-front{width:238px;height:300px;right:29%;top:114px;transform:rotate(-10deg);border:8px solid #fff;outline:1px solid #e9e8dc}
.art-card-front span{font-size:12px;letter-spacing:.22em;color:#9aa99b}.art-card-front strong{font-size:150px;line-height:1.06;color:var(--green);font-weight:500}.art-card-front small{letter-spacing:.17em;color:#b8a28c}
.art-spark{position:absolute;color:#e4ad90}.art-spark-one{font-size:53px;left:10%;top:82px}.art-spark-two{font-size:26px;right:7%;bottom:80px;color:#8ca78a}
.notice-banner{display:flex;align-items:center;gap:13px;background:#fff9ea;border:1px solid #efe4c9;border-radius:13px;padding:12px 18px;color:#8c6e3a;font-size:13px}
.notice-banner p{margin:0;line-height:1.6}
.notice-icon{border-radius:50%;width:21px;height:21px;min-width:21px;text-align:center;line-height:20px;border:1px solid currentColor;font-family:serif;font-weight:700}
.section{margin-top:65px}
.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:25px;gap:16px}
.section-heading .eyebrow{margin-bottom:7px}
h2{font-size:29px;letter-spacing:-.05em;line-height:1.35;margin:0}
.date-label{font-size:13px;color:#96a097}
.today-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}
.task-card{background:var(--paper);border:1px solid #eceee6;border-radius:22px;min-height:238px;padding:25px;display:flex;gap:17px;box-shadow:var(--shadow)}
.task-icon{width:54px;height:54px;flex:none;display:grid;place-items:center;border-radius:17px;font-size:26px;font-weight:600}
.task-review .task-icon{background:#e4ece3;color:#4d7b5d}.task-kana .task-icon{background:#f8e5d8;color:#a86d52}.task-words .task-icon{background:#f5eabf;color:#9d874e}
.task-card-body{flex:1;display:flex;flex-direction:column;min-width:0}
.card-kicker{font-size:10px;font-weight:700;letter-spacing:.1em;color:#91a094}
.task-card h3{margin:9px 0 4px;font-size:21px}.task-card p{margin:0;color:#8d9a90;line-height:1.7;font-size:12px}
.task-bottom{display:flex;justify-content:space-between;align-items:end;margin-top:auto;padding-top:18px}.task-bottom strong{font-size:24px}.task-bottom small{font-size:11px;color:#99a49b;font-weight:500}
.round-arrow{border:0;background:#eef2ea;color:var(--green);width:39px;height:39px;border-radius:50%;font-size:21px}.round-arrow:hover{background:var(--green);color:white}
.method-section{display:grid;grid-template-columns:1fr 1.3fr;gap:70px;border-top:1px solid #e3e7df;padding-top:54px}
.method-copy h2{font-size:35px}.method-copy>p:last-child{line-height:1.9;color:#7c8980;max-width:430px;font-size:14px}
.method-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:center}
.method-steps div{min-height:145px;border:1px solid #e5e9e1;border-radius:17px;padding:22px;background:#ffffffad;display:flex;flex-direction:column}
.method-steps span{font-size:11px;letter-spacing:.15em;color:#95ae9b}.method-steps strong{font-size:18px;margin-top:19px}.method-steps small{font-size:11px;color:#9aaa9f;margin-top:5px}
.page-intro{padding:56px 0 35px;border-bottom:1px solid #e1e5dc;margin-bottom:28px}
.page-intro h1{font-size:clamp(34px,3.5vw,49px)}
.page-intro .eyebrow{margin-bottom:13px}
.intro-row{display:flex;justify-content:space-between;align-items:center;gap:25px}.intro-row p{color:#7d8c81;line-height:1.7;margin:10px 0 0}
.intro-stamp{height:100px;min-width:100px;display:grid;place-items:center;border:2px solid #bacdbb;border-radius:50%;transform:rotate(-12deg);color:#66806d;font-size:25px;font-weight:700;white-space:nowrap}
.n5-intro .intro-stamp{border-color:#e2bca8;color:#b4775f;font-size:21px}
.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:28px;align-items:start}
.toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:28px;flex-wrap:wrap}
.segmented{border:1px solid #dfe6dc;border-radius:13px;background:#eaece5;padding:4px;display:inline-flex;gap:3px}
.segmented button{border:0;border-radius:10px;background:transparent;color:#78877c;padding:10px 18px;font-weight:700}
.segmented button.selected{background:white;color:var(--green);box-shadow:0 2px 10px #576c5b21}
.segmented small{font-size:10px;display:block;font-weight:500}
.text-button{background:none;border:0;color:var(--green);font-size:13px;font-weight:700;padding:8px 0}.text-button:hover{text-decoration:underline}
.kana-section{margin-bottom:35px}.kana-section h2{font-size:20px;margin-bottom:15px;display:flex;align-items:center;gap:12px}.kana-section h2 small{color:#acb7ad;font-weight:500;font-size:12px}
.kana-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:8px}
.kana-tile{background:#fffefb;border:1px solid #e5e9e0;border-radius:13px;min-height:80px;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:transform .16s,border-color .16s,background .16s}
.kana-tile:hover,.kana-tile.active{transform:translateY(-2px);border-color:#81a38a;background:#f2f7ef}
.kana-tile strong{font-size:28px;font-weight:500;line-height:1.1}.kana-tile small{font-size:11px;color:#9da99f;margin-top:6px}
.kana-tile.learned{box-shadow:inset 0 -3px #a2c8aa}
.pattern-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.pattern-card{padding:20px;border:1px solid #e5e8df;border-radius:17px;background:#fffefa}
.pattern-card strong{font-size:25px;color:var(--green);font-weight:600}.pattern-card span{font-size:11px;background:#f3ece0;color:#9e8765;padding:4px 8px;border-radius:6px;margin-left:8px}.pattern-card p{font-size:12px;line-height:1.8;color:#829086}
.study-sidebar{position:sticky;top:20px;display:grid;gap:15px}
.sidebar-card{background:#fffefa;border:1px solid #e8eae2;border-radius:20px;padding:24px;box-shadow:var(--shadow)}
.sidebar-illustration{display:grid;place-items:center;background:#f1e8dc;color:#8e9670;width:100%;height:112px;border-radius:14px;margin-bottom:22px;font-size:46px;letter-spacing:.12em;font-weight:500}
.sidebar-illustration.word-illustration{background:#e4eddf;color:#729078;font-size:35px}
.sidebar-card h3{font-size:21px;margin:0}.sidebar-card>p:not(.eyebrow){color:#839187;line-height:1.75;font-size:12px}
.sidebar-card .eyebrow{margin:0 0 5px}
.sidebar-card .button{font-size:13px}
.sidebar-card .button-disabled span{font-size:10px}
.detail-card{box-shadow:none;background:#f9faf5;min-height:125px}.detail-card p{margin:0}.detail-card strong{font-size:39px;color:var(--green)}.detail-card .reading{font-size:17px;color:#8c9b8d}.detail-card .meaning{color:#293d31!important;font-weight:700}.detail-card .example{padding-top:12px;border-top:1px solid #e6ebe2;margin-top:15px!important;color:#495c4c!important}
.n5-toolbar{justify-content:flex-start;margin-bottom:15px}.search-field{display:flex;align-items:center;gap:8px;background:white;border:1px solid #e1e6df;border-radius:12px;padding:0 14px;min-height:45px;flex:1;min-width:230px}.search-field span{font-size:22px;color:#839b87}.search-field input{border:0;outline:0;min-width:0;width:100%;background:transparent;color:var(--ink)}
select{min-height:45px;background:white;border:1px solid #e1e6df;border-radius:12px;padding:0 14px;color:#516357}
.catalog-meta{font-size:12px;color:#91a095;margin-bottom:16px}.catalog-meta strong{color:var(--green)}.catalog-meta span{margin:0 5px}
.word-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.word-card{border:1px solid #e8eae4;background:#fffefa;border-radius:15px;padding:17px;text-align:left;min-height:126px;transition:transform .16s,border-color .16s}.word-card:hover,.word-card.active{transform:translateY(-2px);border-color:#86aa8a}.word-card.learned{box-shadow:inset 0 -3px #a2c8aa}
.word-card small{display:block;font-size:10px;color:#a4b0a5;letter-spacing:.08em}.word-card strong{display:block;font-size:24px;margin:6px 0 2px;font-weight:600;color:#2c3e31}.word-card span{font-size:12px;color:#79887b}
.empty-state{border:1px dashed #dce5da;border-radius:16px;padding:40px;text-align:center;color:#90a093}
.account-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:20px}.account-card{background:white;border:1px solid #e7ebe3;border-radius:21px;padding:29px;min-height:230px}.account-card h2{margin:0 0 10px}.account-card h3{font-size:21px;margin:0 0 10px}.account-card p:not(.eyebrow){color:#7a8b7d;line-height:1.8;font-size:13px}.account-stats{display:flex;gap:35px;margin-top:36px}.account-stats div strong{display:block;font-size:32px;color:var(--green)}.account-stats div span{font-size:12px;color:#93a295}.account-actions{margin-top:20px}.account-actions .text-button{display:block}.danger{color:#a46153}
.site-footer{height:70px;border-top:1px solid #e5e8df;padding:0 clamp(24px,5.6vw,92px);display:flex;justify-content:space-between;align-items:center;gap:15px;color:#9ba89d;font-size:11px}
.practice-dialog{width:min(560px,calc(100vw - 24px));max-height:calc(100vh - 25px);overflow:auto;border:1px solid #e1e8de;border-radius:25px;padding:29px 31px;background:#fffefa;box-shadow:0 35px 100px #223c2b46;color:var(--ink)}
.practice-dialog::backdrop{background:#18312482;backdrop-filter:blur(4px)}
.practice-top{display:flex;justify-content:space-between;align-items:start}.practice-top h2{font-size:25px}.practice-top .eyebrow{margin:0 0 6px}.icon-close{border:0;background:#edf2eb;color:#4f7158;width:35px;height:35px;border-radius:50%;font-size:25px;line-height:1}
.practice-progress{height:6px;background:#e8eee6;border-radius:5px;margin-top:24px;overflow:hidden}.practice-progress div{height:100%;width:0;background:#84ad8e;transition:width .2s}
.practice-counter{font-size:12px;color:#91a094;text-align:right;margin:9px 0 13px}
.question-card{border:1px solid #e7ebe2;border-radius:20px;background:#fbfcf8;padding:28px;text-align:center;min-height:208px;display:flex;flex-direction:column;align-items:center;justify-content:center}
.question-card .prompt{color:#829187;font-size:13px}.question-card .big{font-size:65px;font-weight:500;line-height:1.35;margin:8px 0;color:#315d4a}.question-card .word-big{font-size:48px}.question-card .reading{color:#7d9281;font-size:17px}.question-card .sentence{font-size:25px;line-height:1.65;color:#334b3b;margin:16px 0}.question-card .translation{font-size:13px;color:#839487;line-height:1.7}.question-card .topic{font-size:11px;color:#a2b1a5}
.answer-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:16px}.answer-option{border:1px solid #dfe7dc;background:white;border-radius:12px;min-height:56px;padding:10px;color:#3e5645;font-size:17px;font-weight:600}.answer-option:hover:not(:disabled){background:#f0f6ed}.answer-option.correct{border-color:#81ad8a;background:#eaf5e9}.answer-option.wrong{border-color:#daa596;background:#fae9e4}
.reveal-button{margin-top:18px;width:100%}.rating-row{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:17px}.rating-row button{border:1px solid #dce6dc;background:white;border-radius:11px;padding:11px 4px;color:#42684d;font-weight:700;font-size:12px}.rating-row button:first-child{color:#ad695b;border-color:#ead2cb}.rating-row button:hover{background:#edf5eb}
.practice-message{font-size:13px;color:#718475;min-height:22px;text-align:center;line-height:1.5}.practice-next{display:block;margin:15px auto 0}.practice-finish{text-align:center;padding:30px 5px}.practice-finish strong{font-size:58px;color:var(--green)}.practice-finish h3{font-size:26px;margin:8px 0}.practice-finish p{color:#849587;line-height:1.7}
.audio-play{border:1px solid #b8cbbb;background:white;border-radius:100px;color:var(--green);padding:10px 16px;margin:10px 0;font-weight:700}.audio-play:hover{background:#edf5eb}
.toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%,15px);background:#263e30;color:white;border-radius:12px;padding:12px 18px;font-size:13px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:10;max-width:calc(100vw - 30px);text-align:center}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:1100px){.site-header{gap:15px}.brand{min-width:190px}.main-nav{gap:18px}.header-actions{min-width:auto}.kana-grid{grid-template-columns:repeat(8,minmax(0,1fr))}.word-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.site-header{height:auto;min-height:76px;flex-wrap:wrap;padding-top:13px}.brand{flex:1}.main-nav{order:3;width:100%;height:45px;justify-content:space-between;gap:8px}.nav-link{font-size:12px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:55px 0 15px}.hero-art{height:290px}.art-circle-back{width:280px;height:280px;right:25%;top:5px}.art-circle-front{width:220px;height:220px;right:9%;bottom:-35px}.art-card-front{width:170px;height:215px;right:42%;top:36px}.art-card-front strong{font-size:105px}.art-card-front span{font-size:9px}.art-card-back{width:143px;height:185px;right:21%;top:8px}.art-card-back strong{font-size:75px}.art-spark-one{left:22%;top:15px}.today-grid{grid-template-columns:1fr 1fr}.task-card:last-child{grid-column:span 2}.method-section{grid-template-columns:1fr;gap:18px}.content-layout{grid-template-columns:1fr}.study-sidebar{position:static;grid-template-columns:repeat(2,1fr)}.kana-grid{grid-template-columns:repeat(10,minmax(0,1fr))}.account-grid{grid-template-columns:1fr}}
@media(max-width:570px){.site-header{padding-inline:18px}.brand strong{font-size:15px}.brand small{font-size:8px}.brand-mark{width:39px;height:39px;font-size:24px}.sync-pill{font-size:10px;padding:6px 9px}.header-actions .button{font-size:10px}.view{padding-inline:18px;padding-bottom:50px}.hero-copy{padding-top:39px}.hero h1{font-size:39px}.hero-description{font-size:14px;margin:16px 0 20px}.hero-actions{gap:8px}.hero-actions .button{font-size:12px;padding:11px 14px}.hero-art{height:245px}.art-circle-back{right:17%;width:245px;height:245px}.art-card-front{right:38%;width:147px;height:185px}.art-card-front strong{font-size:92px}.art-card-back{right:14%}.today-grid,.study-sidebar,.pattern-grid,.word-grid{grid-template-columns:1fr 1fr}.task-card{min-height:210px;padding:18px;display:block}.task-card:last-child{grid-column:auto}.task-icon{width:44px;height:44px;font-size:22px}.task-card h3{font-size:18px}.task-card p{font-size:11px}.task-bottom{padding-top:15px}.task-bottom strong{font-size:20px}.task-bottom small{display:block}.round-arrow{width:33px;height:33px}.method-steps{gap:7px}.method-steps div{padding:13px;min-height:128px}.method-steps strong{font-size:15px}.method-steps small{font-size:10px}.page-intro{padding-top:35px}.intro-stamp{display:none}.kana-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.kana-tile{min-height:67px}.kana-tile strong{font-size:24px}.study-sidebar{grid-template-columns:1fr}.word-grid{grid-template-columns:1fr 1fr}.word-card{padding:14px;min-height:115px}.word-card strong{font-size:21px}.account-stats{gap:16px;justify-content:space-between}.site-footer{height:auto;min-height:70px;padding:16px 18px;align-items:flex-start;flex-direction:column;gap:4px}.practice-dialog{padding:22px}.question-card{padding:18px}.question-card .big{font-size:55px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
.level-tabs{display:flex;flex:none;gap:5px;padding:4px;border:1px solid #dfe6dc;border-radius:13px;background:#eaece5}
.level-tab{min-width:54px;min-height:44px;border:0;border-radius:10px;background:transparent;color:#78877c;font-weight:800}
.level-tab.selected{background:#fff;color:var(--green);box-shadow:0 2px 10px #576c5b21}
.level-tab:disabled{opacity:.55}
.word-pager{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:22px 0}
.word-pager span{font-size:12px;color:#7d8c81;text-align:center}
.word-pager .button{min-height:44px;padding:10px 14px;font-size:12px}
.admin-section{margin:36px 0 54px}
.admin-filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:0 0 16px}
.admin-filters label,.admin-fields label{display:grid;gap:6px;color:#718176;font-size:12px;font-weight:700}
.admin-filters select,.admin-fields input,.admin-fields textarea{width:100%;min-height:44px;border:1px solid #dfe6dc;border-radius:10px;padding:10px 12px;background:#fff;color:var(--ink)}
.admin-editorial-layout{display:grid;grid-template-columns:minmax(220px,.75fr) minmax(0,1.25fr);gap:16px;align-items:start}
.admin-queue{display:grid;gap:8px;max-height:620px;overflow:auto;overscroll-behavior:contain}
.admin-queue button{padding:13px 14px;text-align:left;border:1px solid #e4e9e1;border-radius:12px;background:#fffefa;color:var(--ink);min-height:58px}
.admin-queue button.selected{border-color:#86aa8a;background:#f0f6ed}
.admin-queue strong,.admin-queue small{display:block}.admin-queue small{margin-top:3px;color:#89978c;font-size:11px}
.admin-editor{min-width:0;padding:22px;border:1px solid #e4e9e1;border-radius:18px;background:#fffefa}
.admin-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.admin-fields label:nth-last-child(2){grid-column:1/-1}
.admin-fields textarea{resize:vertical;min-height:78px}
.admin-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.admin-actions .button{min-height:44px;padding:10px 13px;font-size:12px}
.admin-table-wrap{max-width:100%;overflow:auto;border:1px solid #e5e9e2;border-radius:14px;background:#fffefa}
.admin-table{width:100%;border-collapse:collapse;min-width:620px;font-size:12px}
.admin-table th,.admin-table td{padding:11px 13px;border-bottom:1px solid #edf0e9;text-align:left;white-space:nowrap}
.admin-table th{background:#f3f6f0;color:#62766a;font-size:11px}
.admin-table tr:last-child td{border-bottom:0}
.admin-table button{min-height:38px;border:1px solid #c4d3c5;border-radius:9px;background:white;color:var(--green);padding:6px 10px;font-weight:700}
.audit-details{margin-top:16px;padding:14px 0}.audit-details summary{cursor:pointer;color:var(--green);font-weight:700}
.admin-audio-form{margin-top:16px;padding:20px;border:1px solid #e4e9e1;border-radius:16px;background:#fffefa}
.admin-audio-form>p{font-size:12px;line-height:1.6;color:#7b8a7e}
.admin-audio-form>.button{margin-top:12px}
.reverse-prompt{font-size:clamp(24px,6vw,38px)!important;line-height:1.55!important}
.answer-japanese{display:block;margin-top:14px;color:var(--green);font-size:34px}
.usage-hint{display:block;margin-top:5px;color:#849587;font-size:12px}
@media(max-width:820px){.main-nav{justify-content:flex-start;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}.main-nav::-webkit-scrollbar{display:none}.nav-link{flex:none;padding-inline:8px}.admin-editorial-layout{grid-template-columns:1fr}.admin-queue{grid-template-columns:repeat(2,minmax(0,1fr));max-height:260px}}
@media(max-width:570px){.n5-toolbar{gap:9px}.level-tabs{width:100%}.level-tab{flex:1}.search-field{min-width:100%;min-height:48px}.n5-toolbar select{width:100%;min-height:48px}.word-pager{gap:7px}.word-pager .button{padding:9px 10px;font-size:11px;white-space:nowrap}.admin-filters>*{flex:1}.admin-queue{grid-template-columns:1fr 1fr;max-height:250px}.admin-editor{padding:16px}.admin-fields{grid-template-columns:1fr}.admin-fields label:nth-last-child(2){grid-column:auto}.admin-actions{display:grid;grid-template-columns:1fr 1fr}.admin-actions .button{padding:8px 9px}.practice-dialog{margin:auto 0 0;width:100%;max-width:none;max-height:90dvh;border-radius:22px 22px 0 0;padding:20px 18px calc(20px + env(safe-area-inset-bottom))}.practice-top{position:sticky;top:-20px;z-index:2;padding:8px 0;background:#fffefa}.answer-option,.rating-row button{min-height:52px}.word-card{min-height:112px}}
