@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Noto+Serif+TC:wght@400;600;700;900&display=swap');

:root { --paper:#f2efe6; --ink:#17201d; --red:#d84a35; --muted:#6d736e; --line:#b9b8ae; --white:#fbfaf5; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background-color:var(--paper); background-image:radial-gradient(circle at 12% 8%,rgba(255,255,255,.72),transparent 28%),linear-gradient(90deg,rgba(23,32,29,.022) 1px,transparent 1px),linear-gradient(rgba(23,32,29,.016) 1px,transparent 1px); background-size:auto,32px 32px,32px 32px; font-family:"Noto Serif TC",serif; }
body::before { content:"BETWEEN  WORDS  ·  字裡行間"; position:fixed; z-index:9; right:8px; top:50%; color:rgba(23,32,29,.36); font:500 8px "DM Mono"; letter-spacing:.24em; writing-mode:vertical-rl; transform:translateY(-50%); pointer-events:none; }
::selection { color:var(--paper); background:var(--red); }
.grain { position:fixed; inset:0; pointer-events:none; opacity:.055; z-index:10; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }
.masthead { position:relative; max-width:1400px; margin:auto; padding:26px 5vw; display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid var(--ink); }
.masthead::after { content:""; position:absolute; width:42px; height:3px; left:5vw; bottom:-2px; background:var(--red); }
.brand { color:inherit; text-decoration:none; display:flex; align-items:center; gap:12px; font-weight:900; letter-spacing:.08em; }
.brand-mark { width:42px; aspect-ratio:1; display:grid; place-items:center; border:1px solid; border-radius:50%; font:500 22px "DM Mono"; box-shadow:inset 0 0 0 4px var(--paper),inset 0 0 0 5px rgba(23,32,29,.18); }
.brand small { display:block; font:400 9px "DM Mono"; letter-spacing:.28em; margin-top:3px; }
.source-link { color:inherit; font:500 11px "DM Mono"; letter-spacing:.08em; text-underline-offset:5px; }
.header-actions { display:flex; align-items:center; gap:18px; font:500 11px "DM Mono"; }
.practice-link { color:inherit; text-underline-offset:5px; }
.user-name { max-width:170px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--muted); }
.logout-button { border:1px solid var(--ink); background:transparent; padding:8px 12px; font:500 10px "DM Mono"; cursor:pointer; }
.logout-button:hover { color:var(--paper); background:var(--ink); }
main { max-width:1400px; margin:auto; padding:0 5vw 80px; }
.hero { min-height:470px; padding:74px 0 58px; display:grid; grid-template-columns:1fr; gap:60px; align-items:end; border-bottom:1px solid var(--ink); }
.hero-copy { position:relative; max-width:980px; padding-left:48px; }
.hero-copy::before { content:"“"; position:absolute; left:-8px; top:34px; color:var(--red); font:400 92px/1 "Noto Serif TC"; opacity:.85; }
.hero-copy::after { content:"WORDS BECOME MEMORY"; position:absolute; left:0; bottom:0; color:var(--muted); font:500 8px "DM Mono"; letter-spacing:.18em; writing-mode:vertical-rl; }
.eyebrow,.section-no { font:500 11px "DM Mono"; letter-spacing:.16em; color:var(--red); }
h1 { font-size:clamp(52px,8.1vw,124px); line-height:.93; letter-spacing:-.07em; margin:26px 0 36px; font-weight:900; }
.hero-copy h1 { position:relative; display:inline-block; font-size:36px; line-height:1.35; letter-spacing:.04em; }
.hero-copy h1::after { content:""; position:absolute; left:0; right:18%; bottom:-13px; height:2px; background:var(--red); transform:rotate(-1.3deg); }
h1 em { color:var(--red); font-weight:400; }
.intro { max-width:680px; font-size:clamp(16px,1.4vw,20px); line-height:2.05; letter-spacing:.035em; margin:0; text-align:justify; }
.stats { border-left:1px solid var(--ink); padding:12px 0 10px 30px; }
.stats span { display:block; font:500 clamp(62px,8vw,108px)/1 "DM Mono"; letter-spacing:-.08em; color:var(--red); }
.stats p { line-height:1.75; margin:18px 0 0; color:var(--muted); font-size:14px; }
.stats b { color:var(--ink); font:500 14px "DM Mono"; }
.hero-tools { display:grid; grid-template-columns:minmax(210px,.7fr) repeat(2,minmax(250px,1fr)); border-top:1px solid var(--ink); border-bottom:1px solid var(--ink); }
.hero-tools .stats { padding:28px 30px 28px 0; border-left:0; }
.feature-card { position:relative; min-height:210px; padding:30px; display:flex; flex-direction:column; justify-content:flex-end; color:inherit; text-decoration:none; border-left:1px solid var(--ink); overflow:hidden; transition:color .25s,background .25s; }
.feature-card::before { content:""; position:absolute; inset:auto 0 0; height:0; background:var(--ink); transition:height .35s cubic-bezier(.2,.75,.25,1); z-index:0; }
.feature-card>* { position:relative; z-index:2; }
.feature-card::after { content:attr(data-glyph); position:absolute; z-index:1; right:18px; bottom:-38px; color:rgba(23,32,29,.045); font:900 150px/1 "Noto Serif TC"; transition:color .25s,transform .35s; }
.feature-card .feature-no { margin-bottom:auto; color:var(--red); font:500 10px "DM Mono"; letter-spacing:.14em; }
.feature-card strong { font-size:clamp(29px,3vw,46px); letter-spacing:-.05em; }
.feature-card small { margin-top:8px; color:var(--muted); font-size:13px; }
.feature-card i { position:absolute; top:27px; right:27px; font:400 25px "DM Mono"; font-style:normal; }
.feature-card:hover,.feature-card:focus-visible { color:var(--paper); background:var(--ink); outline:none; }
.feature-card:hover::before,.feature-card:focus-visible::before { height:100%; }
.feature-card:hover::after,.feature-card:focus-visible::after { color:rgba(242,239,230,.08); transform:translateY(-8px) rotate(-3deg); }
.feature-card:hover small,.feature-card:focus-visible small { color:#b9c0bc; }
.feature-card-practice:hover,.feature-card-practice:focus-visible { background:var(--red); }
.feature-card-practice::before { background:var(--red); }
.catalogue { padding-top:72px; counter-reset:entry; }
.catalogue-head { display:flex; justify-content:space-between; gap:40px; align-items:end; }
h2 { font-size:clamp(34px,4vw,58px); margin:8px 0 0; letter-spacing:.01em; }
.catalogue-head h2::after { content:"辭典式閱讀"; display:inline-block; margin-left:18px; color:var(--muted); font:400 10px "Noto Serif TC"; letter-spacing:.22em; vertical-align:middle; writing-mode:vertical-rl; }
.search { width:min(540px,48%); border-bottom:2px solid var(--ink); display:flex; align-items:center; gap:12px; padding:12px 0; }
.search svg { width:20px; fill:none; stroke:currentColor; stroke-width:1.8; }
.search input { border:0; outline:0; background:transparent; color:inherit; width:100%; font:400 15px "Noto Serif TC"; }
kbd { border:1px solid var(--line); padding:2px 7px; font:11px "DM Mono"; }
.alphabet { display:flex; gap:5px; flex-wrap:wrap; padding:34px 0 26px; border-bottom:1px solid var(--line); }
.alphabet button { width:35px; height:35px; border:0; background:transparent; font:500 13px "DM Mono"; cursor:pointer; transition:.2s; border-radius:50%; }
.alphabet button:hover,.alphabet button.active { background:var(--ink); color:var(--paper); transform:translateY(-2px); }
.alphabet button:first-child { width:auto; padding:0 14px; border-radius:30px; }
.result-meta { min-height:62px; display:flex; align-items:center; justify-content:space-between; font:12px "DM Mono"; color:var(--muted); }
.result-meta select { border:0; border-bottom:1px solid; background:transparent; color:inherit; font:inherit; margin-left:5px; }
.vocabulary-list { border-top:2px solid var(--ink); }
.word-row { position:relative; display:grid; grid-template-columns:26% 21% 1fr; border-bottom:1px solid var(--line); min-height:142px; animation:reveal .45s both; counter-increment:entry; }
.word-row::before { content:counter(entry,decimal-leading-zero); position:absolute; left:-31px; top:27px; color:var(--red); font:500 8px "DM Mono"; writing-mode:vertical-rl; letter-spacing:.12em; }
.word-cell { padding:25px 24px 25px 0; }
.word-cell + .word-cell { border-left:1px solid var(--line); padding-left:24px; }
.word-title { display:flex; gap:11px; align-items:baseline; flex-wrap:wrap; }
.word-title h3 { margin:0; font:500 clamp(24px,2.2vw,34px) "DM Mono"; letter-spacing:-.04em; text-decoration-thickness:1px; text-underline-offset:7px; }
.word-row:hover .word-title h3 { color:var(--red); text-decoration:underline; }
.pos { color:var(--red); font:500 11px "DM Mono"; text-transform:uppercase; }
.level { border:1px solid var(--line); border-radius:20px; padding:2px 7px; color:var(--muted); font:500 9px "DM Mono"; letter-spacing:.08em; }
.phonetic { color:var(--muted); font:13px "DM Mono"; margin:12px 0 0; }
.meaning { font-size:18px; font-weight:600; line-height:1.7; margin:0; }
.examples p { margin:0; line-height:1.65; }
.examples .en { font-size:15px; font-weight:600; }
.examples .zh { margin-top:8px; color:var(--muted); font-size:14px; }
.pagination { display:flex; justify-content:space-between; align-items:center; padding-top:32px; }
.pagination button { border:1px solid var(--ink); color:inherit; background:transparent; padding:11px 17px; font:500 12px "DM Mono"; cursor:pointer; }
.pagination button:hover:not(:disabled) { background:var(--ink); color:var(--paper); }
.pagination button:disabled { opacity:.3; cursor:not-allowed; }
#pageNumbers { font:500 12px "DM Mono"; }
.empty { text-align:center; padding:80px 20px; border-top:2px solid; border-bottom:1px solid var(--line); }
.empty span { color:var(--red); font:60px "DM Mono"; }
.empty h3 { font-size:25px; margin:10px; }
.empty p { color:var(--muted); }
footer { max-width:1400px; margin:auto; border-top:1px solid; padding:25px 5vw 40px; display:flex; justify-content:space-between; font:11px "DM Mono"; letter-spacing:.1em; }
.login-page { min-height:100vh; display:grid; place-items:center; }
.login-shell { position:relative; width:min(1180px,calc(100% - 44px)); min-height:680px; padding:0; display:grid; grid-template-columns:1.25fr .75fr; border:1px solid var(--ink); background:rgba(251,250,245,.62); box-shadow:18px 18px 0 rgba(23,32,29,.07); }
.login-shell::after { content:"讀一字，知一境。"; position:absolute; right:22px; top:24px; color:var(--red); font-size:11px; letter-spacing:.18em; writing-mode:vertical-rl; }
.login-intro { padding:58px; display:flex; flex-direction:column; justify-content:center; border-right:1px solid var(--ink); }
.login-intro .brand { align-self:flex-start; margin-bottom:auto; }
.login-intro h1 { margin-top:32px; }
.login-intro>p:last-child { max-width:560px; line-height:1.8; font-size:17px; }
.login-panel { padding:58px 46px; display:flex; flex-direction:column; justify-content:center; }
.login-panel h2 { margin-bottom:22px; }
.login-note { color:var(--muted); line-height:1.8; margin-bottom:28px; }
.google-button { display:flex; align-items:center; justify-content:center; gap:14px; padding:15px 18px; color:var(--ink); background:var(--white); border:1px solid var(--ink); text-decoration:none; font:600 14px "Noto Serif TC"; transition:.2s; }
.google-button svg { width:22px; }
.google-button:hover { transform:translateY(-2px); box-shadow:5px 5px 0 var(--ink); }
.google-button.disabled { opacity:.45; pointer-events:none; }
.config-warning { margin-top:24px; padding:16px; border-left:3px solid var(--red); background:#eadfd4; font-size:13px; }
.config-warning p { margin:6px 0 0; line-height:1.6; }
.privacy-note { margin-top:28px; color:var(--muted); font-size:11px; line-height:1.7; }
.practice-shell { padding-bottom:70px; }
.practice-head { min-height:330px; display:grid; grid-template-columns:1fr auto; align-items:end; gap:50px; padding:50px 0; border-bottom:1px solid var(--ink); }
.practice-head h1 { font-size:36px; line-height:1.35; letter-spacing:.04em; margin:20px 0 0; }
.practice-controls { display:flex; align-items:end; gap:14px; padding-bottom:12px; }
.speech-settings { display:flex; align-items:end; gap:14px; }
.practice-controls label { display:grid; gap:7px; color:var(--muted); font:10px "DM Mono"; }
.practice-controls select,.practice-controls button { min-height:42px; border:1px solid var(--ink); background:transparent; padding:0 14px; color:inherit; font:12px "DM Mono"; }
.practice-controls button { background:var(--ink); color:var(--paper); cursor:pointer; }
.practice-controls .auto-speak { min-height:42px; display:flex; flex-direction:row; align-items:center; gap:8px; padding:0 10px; border:1px solid var(--line); cursor:pointer; }
.auto-speak input { width:15px; height:15px; accent-color:var(--red); }
.deck-area { max-width:850px; margin:45px auto 0; }
.deck-meta { display:flex; justify-content:space-between; gap:18px; margin-bottom:14px; color:var(--muted); font:12px "DM Mono"; }
.saved-progress { margin-left:auto; padding-left:18px; border-left:1px solid var(--line); }
.flashcard-wrap { position:relative; }
.flashcard { position:relative; width:100%; height:460px; padding:0; border:0; background:transparent; cursor:pointer; perspective:1400px; transform-style:preserve-3d; }
.speak-button { position:absolute; top:22px; right:22px; z-index:4; width:52px; height:52px; display:grid; place-items:center; border:1px solid var(--ink); border-radius:50%; background:var(--paper); color:var(--ink); cursor:pointer; transition:transform .2s,background .2s,color .2s; }
.speak-button:hover { transform:scale(1.06); background:var(--red); border-color:var(--red); color:white; }
.speak-button svg { width:24px; fill:currentColor; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.speak-button.speaking { background:var(--red); border-color:var(--red); color:white; animation:sound-pulse 1s infinite; }
.example-speak-button { background:var(--ink); border-color:var(--paper); color:var(--paper); }
.example-speak-button:hover { background:var(--red); border-color:var(--red); }
.speak-button.card-back-visible { opacity:0; pointer-events:none; transform:scale(.85); }
.card-side { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:55px; border:1px solid var(--ink); backface-visibility:hidden; transition:transform .55s cubic-bezier(.2,.8,.2,1); background-color:var(--white); background-image:linear-gradient(90deg,transparent 49.85%,rgba(23,32,29,.045) 50%,transparent 50.15%); box-shadow:10px 10px 0 rgba(23,32,29,.13); }
.card-side::before { content:"字裡行間"; position:absolute; left:24px; top:24px; color:var(--muted); font:500 8px "DM Mono"; letter-spacing:.2em; writing-mode:vertical-rl; }
.card-back { transform:rotateY(180deg); background:var(--ink); color:var(--paper); }
.flashcard.flipped .card-front { transform:rotateY(-180deg); }
.flashcard.flipped .card-back { transform:rotateY(0); }
.card-side small { color:var(--red); font:500 11px "DM Mono"; letter-spacing:.15em; }
.card-side strong { font:700 clamp(38px,6vw,72px) "Noto Serif TC"; margin:22px 0; }
.card-front strong { font-family:"DM Mono"; letter-spacing:-.06em; }
.card-back strong { font-size:clamp(22px,3vw,38px); margin:16px 0 24px; line-height:1.3; }
.card-side>span:not(.card-side) { color:var(--muted); font:14px "DM Mono"; }
.card-side p { max-width:800px; margin:7px 0; text-align:center; font-size:clamp(24px,2.45vw,32px); line-height:1.5; }
.card-back p:nth-of-type(2) { color:#b9c0bc; font-size:clamp(18px,1.65vw,22px); }
.card-side em { position:absolute; bottom:25px; color:var(--muted); font:11px "DM Mono"; }
.deck-actions { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:24px; }
.deck-actions button,.deck-complete button { min-height:52px; border:1px solid var(--ink); background:transparent; color:inherit; font:600 13px "Noto Serif TC"; cursor:pointer; }
.deck-actions .known { background:var(--red); border-color:var(--red); color:white; }
.deck-actions button:disabled { opacity:.45; cursor:wait; }
.deck-complete { text-align:center; padding:90px 30px; border:1px solid; background:var(--white); }
.deck-complete h2 { margin:0 0 16px; }.deck-complete button { padding:0 30px; margin-top:18px; }
.admin-shell { padding-bottom:90px; }
.admin-heading { min-height:390px; padding:62px 0 50px; display:grid; grid-template-columns:1.1fr .9fr; gap:10vw; align-items:end; border-bottom:1px solid var(--ink); }
.admin-heading h1 { font-size:36px; line-height:1.35; letter-spacing:.04em; }
.admin-heading h1 { margin-bottom:0; }
.admin-heading>p { max-width:500px; margin:0 0 15px; font-size:17px; line-height:1.9; }
.admin-workspace { display:grid; grid-template-columns:minmax(270px,.7fr) minmax(520px,1.3fr); min-height:760px; border-bottom:1px solid var(--ink); }
.admin-browser { padding:45px 34px 45px 0; border-right:1px solid var(--ink); }
.admin-browser-head,.editor-title,.form-actions,.admin-pages { display:flex; justify-content:space-between; align-items:center; gap:20px; }
.admin-browser-head h2,.editor-title h2 { font-size:clamp(29px,3vw,42px); }
.admin-browser-head button { border:0; background:var(--red); color:white; padding:11px 14px; cursor:pointer; font:500 11px "DM Mono"; }
.admin-search { display:block; margin-top:28px; border-bottom:2px solid var(--ink); }
.admin-search input { width:100%; padding:13px 3px; border:0; outline:0; background:transparent; color:inherit; font:15px "Noto Serif TC"; }
.admin-result-meta { margin:18px 0 10px; color:var(--muted); font:11px "DM Mono"; }
.admin-results { min-height:475px; border-top:1px solid var(--line); }
.admin-result { width:100%; padding:14px 8px; display:grid; grid-template-columns:1fr auto; gap:4px 12px; border:0; border-bottom:1px solid var(--line); background:transparent; color:inherit; text-align:left; cursor:pointer; }
.admin-result strong { font:500 17px "DM Mono"; }
.admin-result span { color:var(--red); font:10px "DM Mono"; }
.admin-result small { grid-column:1/-1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--muted); font-size:12px; }
.admin-result:hover,.admin-result.active { padding-left:15px; background:var(--ink); color:var(--paper); }
.admin-result:hover small,.admin-result.active small { color:#b9c0bc; }
.admin-empty { padding:40px 5px; color:var(--muted); }
.admin-pages { margin-top:18px; font:11px "DM Mono"; }
.admin-pages button { width:38px; height:38px; border:1px solid var(--ink); background:transparent; color:inherit; cursor:pointer; }
.admin-pages button:disabled { opacity:.25; }
.admin-editor { position:relative; padding:45px 0 45px 50px; }
.admin-editor::after { content:"朱筆校訂"; position:absolute; right:-24px; top:48px; color:var(--red); font-size:10px; letter-spacing:.2em; writing-mode:vertical-rl; }
.editor-title { padding-bottom:25px; border-bottom:1px solid var(--line); }
.editor-title p { margin:0; color:var(--red); font:10px "DM Mono"; letter-spacing:.14em; }
.editor-title span { color:var(--muted); font:11px "DM Mono"; }
.form-grid { margin-top:30px; display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.form-grid label { display:grid; gap:8px; color:var(--muted); font:10px "DM Mono"; letter-spacing:.08em; }
.form-grid .field-wide { grid-column:1/-1; }
.form-grid input,.form-grid textarea,.form-grid select { width:100%; border:1px solid var(--line); border-radius:0; outline:0; background:rgba(251,250,245,.45); color:var(--ink); padding:12px 13px; resize:vertical; font:15px/1.6 "Noto Serif TC"; }
.form-grid input:focus,.form-grid textarea:focus,.form-grid select:focus { border-color:var(--ink); box-shadow:3px 3px 0 rgba(23,32,29,.12); }
.form-message { min-height:24px; margin:20px 0 8px; color:#287052; font-size:13px; }
.form-message.error { color:var(--red); }
.form-actions { justify-content:flex-end; padding-top:15px; border-top:1px solid var(--line); }
.form-actions button { min-width:145px; min-height:48px; padding:0 22px; cursor:pointer; font:600 13px "Noto Serif TC"; }
.save-entry { border:1px solid var(--ink); background:var(--ink); color:var(--paper); }
.delete-entry { margin-right:auto; border:1px solid var(--red); background:transparent; color:var(--red); }
.form-actions button:disabled { opacity:.5; cursor:wait; }
@keyframes sound-pulse { 50% { box-shadow:0 0 0 9px rgba(216,74,53,.15); } }
.sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
@keyframes reveal { from { opacity:0; transform:translateY(8px); } }
@media (max-width:780px) {
  body::before { display:none; }
  .masthead,main,footer { padding-left:22px; padding-right:22px; }
  .hero { min-height:auto; grid-template-columns:1fr; padding-top:52px; gap:45px; }
  .hero-copy { padding-left:28px; }
  .hero-copy::before { left:-10px; top:36px; font-size:68px; }
  .hero-copy::after { display:none; }
  h1 { font-size:clamp(50px,16vw,78px); }
  .hero-copy h1 { font-size:36px; }
  .stats { max-width:none; }
  .hero-tools { grid-template-columns:1fr; }
  .hero-tools .stats { padding-right:0; }
  .feature-card { min-height:165px; padding:24px 0; border-left:0; border-top:1px solid var(--ink); }
  .feature-card i { top:22px; right:0; }
  .catalogue-head { display:block; }
  .search { width:100%; margin-top:28px; }
  .alphabet { flex-wrap:nowrap; overflow-x:auto; scrollbar-width:none; }
  .alphabet button { flex:0 0 auto; }
  .word-row { display:block; padding:22px 0; min-height:0; }
  .word-row::before { display:none; }
  .word-cell,.word-cell + .word-cell { padding:7px 0; border:0; }
  .meaning { font-size:17px; }
  .examples { margin-top:8px; padding-top:14px!important; border-top:1px dashed var(--line)!important; }
  .pagination { gap:8px; }
  .pagination button { padding:10px; }
  footer { margin-top:0; }
  .header-actions { gap:9px; }.user-name { display:none; }.practice-link { font-size:9px; }
  .login-shell { width:calc(100% - 28px); min-height:0; display:block; margin:14px 0; }
  .login-shell::after { display:none; }
  .login-intro { min-height:520px; padding:35px 28px; border-right:0; border-bottom:1px solid; }
  .login-intro .brand { margin-bottom:70px; }.login-panel { padding:50px 28px; }
  .practice-head { display:block; min-height:0; }.practice-controls,.speech-settings { flex-wrap:wrap; margin-top:30px; }
  .speech-settings { width:100%; margin-top:0; }.practice-controls .auto-speak { flex:1; }
  .flashcard { height:480px; }.card-side { padding:38px 25px; }.card-back strong { font-size:clamp(22px,7vw,30px); margin-bottom:20px; }.card-side p { font-size:22px; }.card-back p:nth-of-type(2) { font-size:17px; }.deck-meta { font-size:10px; flex-wrap:wrap; }
  .saved-progress { width:100%; margin-left:0; padding:8px 0 0; border-left:0; border-top:1px solid var(--line); }
  .speak-button { top:15px; right:15px; width:46px; height:46px; }
  .admin-heading { min-height:0; display:block; padding:50px 0; }.admin-heading>p { margin-top:35px; }
  .admin-workspace { display:block; }.admin-browser { padding:38px 0; border-right:0; border-bottom:1px solid var(--ink); }
  .admin-editor { padding:42px 0; }.form-grid { grid-template-columns:1fr; }.form-grid .field-wide { grid-column:auto; }
  .admin-editor::after { display:none; }
  .form-actions { flex-wrap:wrap; }.form-actions button { flex:1; }.delete-entry { margin-right:0; }
}
@media (prefers-reduced-motion:reduce) { * { scroll-behavior:auto!important; animation:none!important; transition:none!important; } }
