:root{--paper:#faf7f2;--white:#fffdfa;--ink:#342f2b;--muted:#8b837b;--line:#e7e0d7;--peach:#f5d5c8;--accent:#975740;--sage:#dce4d8;--serif:Georgia,'Noto Serif SC','Songti SC',SimSun,serif;--sans:-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC','Microsoft YaHei',sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.65 var(--sans);-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}a{color:inherit;text-decoration:none}button{border:0;background:none}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #b47854;outline-offset:4px}input:focus,textarea:focus{outline:none;border-color:#b28b75;box-shadow:0 0 0 3px #b28b7514}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;vertical-align:middle}.sprite{position:absolute;width:0;height:0;overflow:hidden}[hidden]{display:none!important}.topbar{height:98px;padding:0 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e9e1d660}.brand{display:flex;align-items:center;gap:11px;font-size:23px;font-weight:720;letter-spacing:-.8px}.brand-mark{width:34px;height:34px;border-radius:11px;background:var(--peach);display:grid;place-items:center;color:#8d513d;font-size:31px;font-weight:400;line-height:1}.brand-tag{font-size:12px;letter-spacing:1px;font-weight:400;color:var(--muted);border-left:1px solid #d5c9bc;padding-left:17px;margin-left:7px}.top-actions{display:flex;align-items:center;gap:24px;font-size:13px}.top-actions>a{color:var(--muted)}.account-button{display:flex;align-items:center;gap:8px;background:#fff9;border:1px solid var(--line);border-radius:24px;padding:8px 15px;font-size:13px}.account-button:hover{background:#fff}.account-button span{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-view{max-width:1000px;margin:0 auto;padding:68px 30px 20px}.home-eyebrow,.eyebrow,.dialog-eyebrow{font-size:10px;letter-spacing:2.4px;color:#a39182;font-weight:600}.home-eyebrow{display:flex;align-items:center;gap:9px}.home-eyebrow>span{height:6px;width:6px;border-radius:50%;background:#a1ad91}.home-view h1{font:500 52px/1.45 var(--serif);letter-spacing:1px;margin:20px 0 20px}.home-view h1>span{color:var(--accent)}.home-intro{color:var(--muted);font-size:14px;line-height:1.95}.section-caption{display:flex;justify-content:space-between;align-items:center;margin:46px 0 16px}.section-caption>span{font-weight:600}.section-caption small{font-size:11px;color:#a3978a}.app-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.app-card{position:relative;isolation:isolate;overflow:hidden;border:1px solid #e0d5c9;border-radius:18px;padding:25px 28px 22px;background:#f8e8dd;transition:transform .25s,box-shadow .25s}.app-card:hover{transform:translateY(-4px);box-shadow:0 12px 25px #5d403b0c}.voice-app{background:#eaf0e5;border-color:#d8dfd0}.module-icon{display:inline-flex;align-items:center;justify-content:center;width:45px;height:45px;border-radius:13px;background:#fff9;color:#925d46}.voice-app .module-icon{color:#5b7153}.module-icon svg{width:24px;height:24px}.module-index{position:absolute;top:35px;right:27px;font-size:9px;letter-spacing:1.7px;color:#a28c7b}.app-card h2{font:500 27px/1.3 var(--serif);margin:22px 0 10px}.app-card p{font-size:13px;color:#8e7d70;line-height:1.9;margin:0}.voice-app p{color:#7a8571}.card-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #b8a18a35;margin-top:27px;padding-top:16px;font-size:10px;letter-spacing:.4px;color:#8a7460}.voice-app .card-bottom{color:#77846c}.paper-decoration{position:absolute;font:260px/1 var(--serif);right:10px;bottom:28px;color:#c5916b13;z-index:-1}.sound-decoration{position:absolute;right:30px;top:125px;display:flex;gap:5px;align-items:center;opacity:.16;z-index:-1}.sound-decoration i{width:7px;height:28px;background:#728969;border-radius:4px}.sound-decoration i:nth-child(2),.sound-decoration i:nth-child(4){height:48px}.sound-decoration i:nth-child(3){height:70px}.home-note{display:flex;justify-content:center;align-items:center;gap:8px;font-size:11px;color:#a0978a;margin-top:30px}.home-note svg{width:17px}footer{margin:50px 0 12px;text-align:center;font-size:10px;letter-spacing:1.3px;color:#b1a79b}footer span{padding:0 10px}.notebook-view{max-width:760px;padding:63px 28px 120px;margin:auto}.notebook-heading h1{font:600 32px/1.5 var(--serif);margin:8px 0 8px;letter-spacing:.6px}.notebook-heading h1>span{color:#a76b50}.notebook-meta{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:12px;margin-bottom:30px}.sync-button{font-size:11px;color:#8c9982;display:flex;align-items:center;gap:6px;padding:4px 0}.sync-dot{width:5px;height:5px;background:#8c9982;border-radius:50%}.sync-button[data-error=true]{color:#a96750}.sync-button[data-error=true] .sync-dot{background:#a96750}.search-box{display:flex;align-items:center;gap:12px;background:#fffdfb;border:1px solid transparent;border-radius:13px;padding:0 17px;height:53px;box-shadow:0 1px 8px #7a624404}.search-box svg{color:#8a8076;width:19px}.search-box input{width:100%;border:0;background:transparent;height:100%;font-size:13px;color:var(--ink);box-shadow:none;padding:0}.search-box kbd{border:1px solid var(--line);border-radius:4px;padding:0 5px;color:#b6ac9e;font:11px var(--sans)}input::placeholder,textarea::placeholder{color:#b2a597}.filter-bar{display:flex;align-items:center;gap:16px;margin:19px 0 22px}.filters{display:flex;border:1px solid #b1a59a;border-radius:10px;overflow:hidden;flex:1}.filters button{display:flex;align-items:center;justify-content:center;gap:8px;width:50%;font-size:12px;padding:8px 4px;min-height:37px}.filters button+button{border-left:1px solid #b1a59a}.filters .selected{background:var(--peach)}.filters svg{width:16px;height:16px}.filters button>span{font-size:10px;opacity:.55;margin-left:2px}.text-button{font-size:12px;color:var(--muted);padding:8px 0;white-space:nowrap}.text-button:hover{text-decoration:underline}.sentence-list{display:flex;flex-direction:column;gap:14px}.sentence-card{background:#fffdfb;border:1px solid var(--line);border-radius:15px;padding:22px 23px 14px;box-shadow:0 2px 3px #6b503604;transition:box-shadow .2s}.sentence-card:hover{box-shadow:0 6px 20px #6b503609}.sentence-content{font:400 18px/1.95 var(--serif);white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 13px}.sentence-source{color:#9a8a7a;font-size:11px;margin:0 0 18px;overflow-wrap:anywhere}.sentence-source:before{content:'— ';color:#bba998}.sentence-bottom{display:flex;justify-content:space-between;align-items:center}.sentence-date{font:10px var(--sans);letter-spacing:.4px;color:#a49789}.sentence-actions{display:flex;align-items:center;gap:8px}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;color:#a39789}.icon-button:hover{background:#f6efe7}.icon-button.liked{color:#a05f47}.icon-button.liked svg{fill:currentColor}.more-wrap{position:relative}.more-menu{position:absolute;right:0;top:35px;background:#fffdfb;box-shadow:0 5px 25px #4d33211a;border:1px solid var(--line);border-radius:10px;padding:5px;min-width:100px;z-index:5}.more-menu button{display:block;width:100%;font-size:12px;padding:8px 15px;text-align:left;border-radius:5px}.more-menu button:hover{background:#f6efe7}.danger{color:#a15c49}.empty-state{text-align:center;padding:54px 10px 35px}.empty-icon{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;background:#efe6db;border-radius:22px;transform:rotate(-6deg);color:#b09b83}.empty-icon svg{width:28px;height:28px}.empty-state h2{font:500 21px var(--serif);margin:25px 0 12px}.empty-state p{font-size:12px;color:#a19587;line-height:1.95}.soft-button{background:#f1dfd1;border-radius:9px;display:inline-flex;align-items:center;gap:17px;padding:10px 18px;font-size:12px;margin-top:15px}.soft-button:hover{background:#ebd5c4}.soft-button svg{width:16px}.notebook-footnote{text-align:center;font-size:10px;color:#b4a797;letter-spacing:1.3px;margin-top:34px}.floating-add{position:fixed;bottom:max(28px,env(safe-area-inset-bottom));right:4%;display:flex;align-items:center;gap:10px;background:var(--peach);padding:17px 24px;border:1px solid #eed3c4;border-radius:15px;box-shadow:0 5px 10px #6e48301c;font-size:13px;transition:transform .2s}.floating-add:hover{transform:translateY(-3px);background:#f1ccbc}.modal{border:1px solid #e0d5c8;border-radius:20px;background:var(--paper);color:var(--ink);padding:35px 32px 27px;width:min(92vw,520px);max-height:90dvh;overflow-y:auto;box-shadow:0 20px 80px #3e30251c}.modal::backdrop{background:#3d31274f;backdrop-filter:blur(5px)}.modal h2{font:500 27px var(--serif);margin:11px 0 9px}.dialog-description{font-size:12px;color:#9a8c7e;margin:0 0 22px}.close-button{position:absolute;right:15px;top:15px;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;color:#9c8c7b}.close-button:hover{background:#ede4d9}.modal label{display:block;font-size:12px;color:#7c6f60;margin:16px 0 7px}.modal input:not([type=checkbox]),.modal textarea{display:block;width:100%;border:1px solid #e4dace;border-radius:9px;background:#fffdfb;padding:11px 12px;color:var(--ink);font-size:14px}.modal input{min-height:44px}.modal textarea{font:17px/1.9 var(--serif);resize:vertical;min-height:150px;max-height:38dvh;padding:15px}.primary-button{background:#8f5b43;border:1px solid #8f5b43;color:#fff9f3;border-radius:10px;min-height:45px;padding:10px 20px;display:inline-flex;justify-content:center;align-items:center;gap:10px;font-size:13px}.primary-button:hover{background:#7b4a34}.auth-modal .primary-button{width:100%;margin-top:22px}.secondary-button{border:1px solid #d8cbbd;border-radius:9px;width:100%;padding:10px;margin:20px 0 6px}.auth-tabs{display:flex;border-bottom:1px solid var(--line);gap:24px;margin:20px 0}.auth-tabs button{padding:10px 2px;font-size:13px;color:#aa9c8b;border-bottom:2px solid transparent}.auth-tabs .selected{border-color:#a36c50;color:#7c4f37}.field-hint{font-size:11px;color:#9c8c7c;line-height:1.8}.form-status{font-size:12px;color:#9a5b41;min-height:0;margin:12px 0 0;overflow-wrap:anywhere}.form-status:empty{display:none}.user-summary{display:flex;align-items:center;gap:14px;margin:27px 0}.user-avatar{height:45px;width:45px;border-radius:15px;background:#efddce;display:grid;place-items:center;font-size:22px}.user-summary strong{display:block;font-weight:500}.user-summary small{display:block;font-size:11px;color:#a1907f}details{font-size:12px}summary{padding:10px 0;cursor:pointer}.editor-tools{display:flex;justify-content:space-between;align-items:center;margin-top:10px;font-size:10px;color:#b0a18f}.record-button{display:flex;align-items:center;gap:6px;padding:7px 11px;border:1px solid #dfd2c1;border-radius:8px;font-size:11px;color:#967455}.record-button svg{width:15px;height:15px}.record-button[data-active=true]{color:#ac5542;border-color:#d09c87;background:#fbe8dd}.record-button[data-active=true] svg{animation:pulse 1.5s infinite}@keyframes pulse{50%{opacity:.3}}.record-status,.partial-text{font-size:11px;color:#a17d60;margin:8px 0}.partial-text{font-style:italic}.optional{font-size:10px;margin-left:5px;color:#b6a797}.favorite-option{display:flex!important;align-items:center;gap:8px;font-size:12px!important;padding:9px 0}.favorite-option input{min-height:0!important;width:16px;height:16px;accent-color:#a56c4d}.favorite-option svg{width:16px;color:#b68a6a}.editor-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);margin-top:12px;padding-top:20px}.editor-footer>span{font-size:10px;color:#ac9e8e}.editor-footer .primary-button{flex-shrink:0}.trash-item{border-top:1px solid var(--line);padding:15px 0;display:flex;gap:16px;align-items:center}.trash-item p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font:15px/1.7 var(--serif);flex:1}.trash-item button{font-size:12px;color:var(--accent);white-space:nowrap}.trash-item p{max-height:120px;overflow:auto}.toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);max-width:90vw;border-radius:12px;background:#40372e;color:#fff4e5;padding:13px 20px;box-shadow:0 5px 15px #0001;display:flex;gap:20px;align-items:center;font-size:12px;z-index:20}.toast button{color:#f7c5ac;padding:2px}.list-status{font-size:12px;color:#ab6f53;margin:10px 0}.list-status:empty{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}body:has(dialog[open]){overflow:hidden}@media(max-width:700px){.topbar{height:77px;padding:0 22px}.brand{font-size:21px;gap:8px}.brand-tag{display:none}.top-actions{gap:13px;font-size:11px}.account-button{font-size:11px;padding:7px 10px}.account-button svg{width:15px}.account-button span{max-width:90px}.home-view{padding:43px 23px 20px}.home-view h1{font-size:36px;margin:20px 0 17px}.home-intro{font-size:12px}.home-eyebrow{font-size:8px;letter-spacing:1.7px}.section-caption{margin-top:36px}.section-caption small{font-size:9px}.app-grid{grid-template-columns:1fr;gap:16px}.app-card{padding:22px}.app-card h2{font-size:25px;margin:17px 0 9px}.app-card p{font-size:12px}.card-bottom{margin-top:22px}.home-note{font-size:10px;margin-top:25px}footer{margin-top:33px}.notebook-view{padding:38px 22px 120px}.notebook-heading h1{font-size:27px}.eyebrow{font-size:9px;letter-spacing:1.7px}.notebook-meta{font-size:10px;margin-bottom:25px}.sync-button{font-size:9px}.filters button{font-size:11px;gap:5px}.filter-bar{gap:12px}.sentence-card{padding:18px 18px 12px}.sentence-content{font-size:17px}.sentence-source{font-size:10px}.floating-add{bottom:calc(22px + env(safe-area-inset-bottom));right:22px;border-radius:13px;padding:14px 19px;font-size:12px}.empty-state{padding-top:40px}.modal{padding:30px 23px 24px;border-radius:17px;width:calc(100vw - 28px)}.modal h2{font-size:25px}.dialog-description{font-size:11px}.editor-footer>span{font-size:9px;max-width:95px}.search-box kbd{display:none}.toast{bottom:98px;min-width:220px}.filter-bar .text-button{font-size:10px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

.voice-view h1{font:600 30px/1.5 var(--serif);margin:10px 0 12px}.voice-view h1>span{color:var(--accent)}.voice-sheet{background:#fffdfb;border:1px solid var(--line);border-radius:15px;padding:20px}.voice-sheet textarea{width:100%;border:0;resize:vertical;background:transparent;min-height:230px;max-height:50dvh;font:17px/1.95 var(--serif);color:var(--ink);box-shadow:none}.voice-sheet-footer{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#a99b89}.voice-controls{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.voice-controls .secondary-button{width:auto;margin:0;font-size:12px;padding:8px 15px}.voice-view>.record-status{margin-top:17px}.voice-controls .primary-button[data-active=true]{background:#ad5947}.voice-controls .primary-button svg{width:16px}.voice-view .secondary-button svg{width:16px;margin-left:5px}@media(max-width:700px){.voice-view h1{font-size:25px}.voice-controls{gap:8px}.voice-controls .primary-button{font-size:12px;padding:9px 13px}.voice-controls .secondary-button{font-size:11px;padding:8px 10px}}
