.open-learning{background:#f8f5ee;color:#252b25;min-height:70vh;padding:48px 24px}.open-container{max-width:960px;margin:auto}.open-learning h1{font-size:clamp(2rem,5vw,3.3rem);line-height:1.12;font-weight:650;margin:12px 0 20px}.open-learning h2{font-size:1.4rem;margin:20px 0 12px}.open-learning p{line-height:1.65}.open-eyebrow{color:#9c2929;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase}.open-links{display:flex;gap:20px;flex-wrap:wrap;margin:18px 0}.open-links a{text-decoration:underline;text-underline-offset:4px}.open-card{background:#fffdf8;border:1px solid #d8d4c9;border-radius:20px;padding:24px;margin:24px 0}.open-btn{border-radius:10px;padding:11px 17px;background:#ae3030;color:#fff;display:inline-flex;align-items:center;gap:8px;font-size:.95rem;border:1px solid transparent;cursor:pointer}.open-btn.secondary{background:transparent;color:#252b25;border-color:#c8c5bb}.open-btn:disabled{opacity:.5;cursor:default}.open-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:16px 0}.open-learning input[type=text],.open-search{padding:13px;border:1px solid #babcb3;background:#fff;border-radius:10px;color:#252b25;max-width:100%;width:100%}.open-notice{font-size:.9rem;color:#575e55}.open-feedback{border-inline-start:3px solid #748967;padding:10px 15px;background:#f0f3e9}.open-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}.chinese-reader{line-height:1.8}.reader-word{display:inline;padding:0 1px;border-radius:3px;border-bottom:1px dotted #ad7770;background:transparent;color:inherit;font:inherit;cursor:pointer}.reader-word:hover,.reader-word:focus-visible{background:#ead9b7;color:#252b25;outline:2px solid #ac6c52;outline-offset:2px}.word-dialog{background:#fffdf8!important;color:#252b25!important;max-height:90dvh;overflow-y:auto;border-radius:20px!important;max-width:min(560px,calc(100vw - 28px))!important}.word-dialog p{line-height:1.6}.word-dialog [data-slot=dialog-description]{color:#65705f}.word-title{font-size:2.5rem!important;padding-right:25px}.word-pronunciation{display:flex;gap:14px;align-items:center;color:#a43131}.word-pronunciation button{background:#eee7dd;color:#6b332e}.word-definitions{display:grid;gap:14px}.word-definitions article{border-bottom:1px solid #e1ded3;padding-bottom:15px}.word-definitions .reading{font-size:.9rem;color:#65705f}.word-definitions .open-btn{margin-top:8px}.character-buttons{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.character-buttons button{background:#eee9dc;border:1px solid #d6cdbc;border-radius:8px;min-width:44px;padding:6px;font-size:1.5rem}.character-buttons button[aria-pressed=true]{background:#d9e7cd}.word-writing{padding:16px;background:#252b25;border-radius:12px}.word-footer{display:flex;gap:14px;justify-content:space-between;flex-wrap:wrap;font-size:.8rem}.word-footer a{text-decoration:underline}.open-card .word-pronunciation{justify-content:center}.saved-review{text-align:center}.saved-review .hanzi{font-size:3rem}.saved-word-row{display:flex;justify-content:space-between;align-items:center;padding:16px 0;gap:14px;border-bottom:1px solid #dedbd0}.saved-word-row .hanzi{font-size:1.6rem}.tone-graph{width:100%;height:150px;display:block;background:#f2eee3;border-radius:12px}.tone-graph text{font-size:12px;fill:#575e55}.speech-player{width:100%;margin:12px 0}.open-learning button:focus-visible,.open-learning a:focus-visible{outline:3px solid #59794a;outline-offset:3px}.open-learning progress{width:100%}.open-learning a{color:inherit}.open-learning .error{color:brown}.reader-note{font-size:.85rem;color:var(--color-text-secondary);margin:12px 0}.audio-speeds{display:inline-flex;gap:5px}.audio-speeds button{border:1px solid #cbbbab;border-radius:8px;padding:6px 10px;color:inherit}.audio-speeds button[aria-pressed=true]{background:#ead9b7;color:#252b25}@media (max-width:600px){.open-learning{padding:30px 16px}.open-card{padding:18px}.open-actions .open-btn{flex-grow:1;justify-content:center}.word-dialog{padding:20px!important}.saved-word-row{align-items:flex-start}}.open-learning a.open-btn{color:#fff;text-decoration:none}.open-learning a.open-btn.secondary{color:#292e29}
