:root{color-scheme:light;--paper:#fbf5e9;--ink:#534634;--muted:#81725c;--green:#626e52;--line:#ded5c2;--serif:'Songti SC','STSong',Georgia,serif;--sans:-apple-system,BlinkMacSystemFont,'PingFang SC',sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{cursor:wait;opacity:.5}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid #967441;outline-offset:5px}[hidden]{display:none!important}.masthead{height:84px;padding:0 5.2%;display:flex;align-items:center;justify-content:space-between}.home-link{display:inline-flex;align-items:center;min-height:44px;font:16px/1.5 var(--serif);letter-spacing:.06em;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:6px;text-decoration-thickness:1px;transition:color .2s,text-decoration-color .2s}.home-link:hover{color:#8b642f;text-decoration-color:currentColor}.text-button{background:none;border:0;padding:10px 0;min-height:42px;font-size:13px}.text-button span{margin-left:9px}.text-button:not(:disabled){text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:5px;text-decoration-thickness:1px}.text-button:not(:disabled):hover{color:#8b642f;text-decoration-color:currentColor}.garden-layout{max-width:1080px;min-height:650px;margin:0 auto;display:grid;grid-template-columns:45% 55%;align-items:center;padding:0 25px}.introduction{padding-left:35px;padding-bottom:35px;z-index:1;animation:arrive .7s .12s both}.eyebrow{font:10px/1.8 var(--sans);letter-spacing:.2em;color:var(--muted)}h1{font:400 clamp(34px,3.7vw,48px)/1.6 var(--serif);letter-spacing:.07em;margin:23px 0}.invitation{font:15px/2.1 var(--serif);color:var(--muted);letter-spacing:.04em}.mode-switch{padding:0;border:1px solid #d9d3be;display:inline-flex;border-radius:30px;margin:32px 0 6px;overflow:hidden}.mode-switch label{position:relative;cursor:pointer}.mode-switch input{position:absolute;opacity:0;width:100%;height:100%;margin:0}.mode-switch span{display:block;padding:12px 18px;font-size:12px;transition:background .2s,color .2s}.mode-switch input:checked+span{background:var(--green);color:#fffaf0}.mode-switch input:focus-visible+span{outline:2px solid #967441;outline-offset:-4px}.deck-status{font-size:11px;color:var(--muted);line-height:1.8;min-height:20px}.direct{margin-top:15px;font:13px var(--serif)}.plant{position:relative;width:min(100%,470px);justify-self:center;animation:arrive .8s both}.plant>img{width:100%;height:auto;display:block;mix-blend-mode:multiply}.bud{position:absolute;border:0;background:transparent;width:20%;height:11%;border-radius:48%;transform-origin:50% 0;transition:transform .2s}.bud-1{left:52%;top:11%}.bud-2{left:50%;top:23%}.bud-3{left:64%;top:34%}.bud-4{left:63%;top:48%}.bud-5{left:54%;top:59%}.bud-glow{display:block;position:absolute;inset:7%;border-radius:50%;box-shadow:0 0 22px 8px #e5bd5d00;transition:box-shadow .2s,background .2s}.bud:hover .bud-glow,.bud:focus-visible .bud-glow{box-shadow:0 0 25px 10px #e5bd5d55;background:#fff1b433}.bud:active{transform:rotate(7deg)}.bud.ringing{animation:ring .5s ease-out}.plant-caption{position:absolute;top:0;left:0;right:0;text-align:center;font:13px var(--serif);color:var(--ink);letter-spacing:.14em}.garden-footer{max-width:1180px;margin:20px auto 0;padding:18px 30px;display:flex;justify-content:space-between;gap:15px;font-size:9px;letter-spacing:.13em;color:var(--muted)}.page-status{text-align:center;min-height:18px;font-size:12px;padding:0 20px;margin:4px 0 12px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
dialog{color:var(--ink);background:var(--paper);border:1px solid #e2d7c3;box-shadow:0 20px 90px #46351924;max-height:calc(100dvh - 40px);border-radius:20px;padding:30px;width:min(470px,calc(100% - 28px));overflow:auto}dialog::backdrop{background:#433c3059;backdrop-filter:blur(5px)}dialog[open]{animation:card-arrive .4s cubic-bezier(.19,.65,.25,1) both}.close{position:absolute;right:13px;top:10px;width:40px;height:40px;border:0;background:transparent;font:26px Georgia;color:var(--muted);z-index:3}.word-card{padding:12px 4px 4px;text-align:center}.card-heading{display:flex;justify-content:space-between;font-size:9px;letter-spacing:.12em;color:var(--muted);padding:12px 9px}.word-card h2{font:400 clamp(27px,5vw,38px)/1.25 Georgia,var(--serif);margin:23px 0 10px;overflow-wrap:anywhere;text-wrap:balance}.phonetic{font-size:13px;color:var(--muted);margin:8px 0}.speak{font-size:11px;padding:3px 10px;min-height:32px}.card-art{width:100%;height:240px;object-fit:contain;mix-blend-mode:multiply;margin:5px 0 10px}.card-art.scene-art{height:auto;max-height:none;object-fit:contain}.recall-prompt{font:15px/1.8 var(--serif);margin:6px 0 22px;color:var(--muted)}#answer{text-align:left;animation:arrive .25s both}.meaning{border-top:1px solid var(--line);padding:16px 5px 8px}.meaning h3{font:400 23px/1.4 Georgia,var(--serif);margin:0 0 8px}.meaning p{font-size:14px;line-height:1.8;white-space:pre-line;margin:7px 0}.meaning .example{font:italic 15px/1.7 Georgia,serif;color:var(--green)}.memory-hint{font:13px/1.9 var(--serif);background:#e9eadc88;padding:14px 16px;border-radius:8px}.card-signature{font:italic 11px Georgia,serif;color:var(--muted);margin:20px 0 8px}.card-signature span{margin:0 8px}.primary,.secondary{min-height:46px;border-radius:26px;padding:12px 23px;border:1px solid var(--green);font-size:13px;transition:transform .16s,background .16s}.primary{background:var(--green);color:#fffaf0}.secondary{background:transparent;color:var(--green)}.primary:hover{background:#4f5c40}.secondary:hover{background:#eceddf}.primary:active,.secondary:active{transform:scale(.97)}.card-actions{display:flex;justify-content:center;margin:19px 0 8px}.card-actions>div{display:flex;gap:12px}.card-secondary{display:flex;justify-content:center;gap:32px}.card-secondary .text-button{font-size:12px}#card-status{font-size:12px;line-height:1.7;min-height:18px;text-align:center;margin:5px 0 0}#original-context{font-size:12px;line-height:1.8;margin-top:15px}summary{cursor:pointer}#original-context p{font:italic 14px/1.8 Georgia,serif}#sources-dialog{width:min(580px,calc(100% - 28px));padding:38px 32px}#sources-dialog h2{font:400 30px var(--serif);margin:17px 0}.sources-intro{color:var(--muted);font:14px var(--serif)}.source-row{padding:18px 0;border-bottom:1px solid var(--line)}.source-row header{display:flex;justify-content:space-between;gap:15px}.source-row p{font-size:12px;line-height:1.8;color:var(--muted);margin-bottom:0}.source-row strong{font-weight:500}.source-row span{font-size:12px;color:var(--green)}#sync{margin-top:22px}.import-section{border-top:1px solid var(--line);margin:25px 0;padding-top:23px}.import-section label,.search-label{display:block;font-size:14px;margin-bottom:10px}.import-section p{font-size:12px;line-height:1.8;color:var(--muted)}input[type=file]{font-size:12px;width:100%}input::file-selector-button{background:#eeeddf;border:1px solid #d7d4be;color:var(--ink);border-radius:5px;padding:8px;margin-right:10px}input[type=search]{border:1px solid #c9c6b2;border-radius:7px;padding:12px;background:#fffaf1;width:100%;color:var(--ink)}.word-list{max-height:250px;overflow:auto;margin:10px 0}.word-row{display:flex;align-items:center;justify-content:space-between;text-align:left;gap:10px;width:100%;border:0;border-bottom:1px solid #e6dfcf;padding:13px 2px;background:transparent}.word-row span{font:17px Georgia,var(--serif);max-width:65%;overflow-wrap:anywhere}.word-row small{font-size:10px;color:var(--muted)}.privacy-note{font-size:11px;line-height:1.8;color:var(--muted);margin:20px 0 0}.word-card.is-revealed .card-art:not(.scene-art){height:180px}.word-card.is-scene h2{font-size:26px;line-height:1.5}.empty-list{font-size:12px;color:var(--muted);padding:10px 0}
@keyframes arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes card-arrive{from{opacity:0;transform:translate(var(--from-x,0px),var(--from-y,18px)) scale(.96)}to{opacity:1;transform:none}}@keyframes ring{0%,100%{transform:rotate(0)}25%{transform:rotate(8deg)}65%{transform:rotate(-5deg)}}
@media(min-width:760px) and (max-height:850px){.masthead{height:66px}.garden-layout{min-height:0}.plant{width:400px}.garden-footer{margin-top:0}}@media(max-width:759px){.masthead{height:65px;padding:0 24px}.home-link{font-size:15px}.garden-layout{display:flex;flex-direction:column;min-height:0;padding:0 22px}.introduction{text-align:center;padding:15px 0 0}.eyebrow{font-size:9px}h1{font-size:31px;line-height:1.5;margin:14px 0 12px}h1 br{display:none}.invitation{font-size:13px;margin:0}.invitation br{display:none}.mode-switch{margin:22px 0 0}.mode-switch span{padding:10px 17px}.deck-status{margin:10px 0 0;font-size:10px}.direct{margin:3px 0 0;font-size:12px;min-height:32px}.plant{width:300px;max-width:100%;margin-top:15px}.plant-caption{font-size:13px}.garden-footer{margin:14px 0 0;padding:12px 24px;justify-content:center;font-size:8px;flex-wrap:wrap}.garden-footer>span:first-child{display:none}dialog{padding:27px 21px;max-height:calc(100dvh - 24px)}.card-heading{font-size:8px}.card-art{height:220px}#sources-dialog{padding:35px 23px}.primary,.secondary{padding:12px 18px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}dialog::backdrop{backdrop-filter:none}}
.portable-section{margin-top:18px}.portable-section p{font-size:12px;line-height:1.8;color:var(--muted)}
