.auth-page[data-v-af2f60e7]{width:min(100%,440px);margin:0 auto;padding:32px 20px 40px}.auth-mark[data-v-af2f60e7]{display:grid;width:60px;height:68px;margin:0 auto 18px;place-items:center;border-radius:5px 12px 12px 5px;background:#ead2ba;color:#9b6147;font-size:26px;font-weight:700}h1[data-v-af2f60e7]{margin:0;text-align:center;font-size:22px;font-weight:650}.auth-desc[data-v-af2f60e7]{margin:10px 0 24px;color:#8d8379;text-align:center;font-size:12px;line-height:1.7}.auth-tabs[data-v-af2f60e7]{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-bottom:18px;padding:4px;border-radius:6px;background:#eee7df}.auth-tabs button[data-v-af2f60e7]{min-height:38px;padding:6px 3px;border-radius:4px;text-align:center;color:#8c7b6c;font-size:12px}.auth-tabs button.active[data-v-af2f60e7]{color:#9f634b;background:#fffdf9;box-shadow:0 1px 5px #6c513014}.auth-form[data-v-af2f60e7]{display:grid;gap:16px;padding:20px 16px;border:1px solid #f0e7dc;border-radius:8px;background:#fffdf9}.auth-form label[data-v-af2f60e7]{display:grid;gap:8px;color:#685a50;font-size:13px}.auth-form input[data-v-af2f60e7]{width:100%;min-width:0;height:44px;padding:0 12px;border:1px solid #eadfd4;border-radius:5px;outline:0;color:#403831;background:#faf7f2;font-size:16px}.auth-form input[data-v-af2f60e7]:focus{border-color:#bd7b5f}.auth-submit[data-v-af2f60e7]{min-height:44px;padding:8px 12px;border-radius:5px;color:#fff;background:#bd7b5f;text-align:center;font-size:15px}.auth-error[data-v-af2f60e7]{margin:0;color:#a7493b;font-size:13px;line-height:1.65;overflow-wrap:anywhere}.auth-hint[data-v-af2f60e7]{margin:14px 4px 0;color:#94867a;font-size:12px;line-height:1.7}:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;color:#342f2a;background:#f7f6f2;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--brand: #bd7b5f;--brand-dark: #9f634b;--line: #ebe4dc;--muted: #8d8379;--surface: #fffdf9}*{box-sizing:border-box}html,body,#app{min-height:100%;margin:0}body{min-width:320px;background:#f7f6f2}button,input,textarea,select{font:inherit}button{appearance:none;margin:0;border:0;border-radius:0;padding:0;color:inherit;background:transparent;font:inherit;line-height:normal;text-align:inherit;cursor:pointer}button:after{display:none;border:0}button:disabled{cursor:default;opacity:.55}a{color:inherit;text-decoration:none}.app-shell{min-height:100dvh}.app-topbar{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;width:100%;max-width:750px;height:48px;margin:0 auto;padding:0 12px;background:#fffdf9f5;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.back-button,.topbar-action{width:40px;height:40px;border:0;color:#514941;background:transparent;font-size:26px}.topbar-action{justify-self:end;font-size:19px}.topbar-logout{min-height:40px;color:#9f634b;text-align:center;font-size:13px}.session-state{padding:48px 16px;color:#8d8379;text-align:center;font-size:14px}.connection-card .inline-button{margin-top:16px}.topbar-title{overflow:hidden;text-align:center;font-size:16px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.app-content{width:100%;max-width:750px;min-height:calc(100dvh - 48px);margin:0 auto}.app-content.with-bottom-nav{padding-bottom:calc(66px + env(safe-area-inset-bottom))}.connection-strip{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;color:#785542;background:#f4e8db;font-size:12px;line-height:1.5}.connection-strip button{flex:none;border:0;padding:4px 8px;color:#8f563f;background:#fffaf5;border-radius:4px}.bottom-nav{position:fixed;z-index:30;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(4,1fr);max-width:750px;height:calc(60px + env(safe-area-inset-bottom));margin:0 auto;padding:5px 8px env(safe-area-inset-bottom);border-top:1px solid var(--line);background:#fffdf9fa}.bottom-nav button{display:grid;align-content:center;justify-items:center;gap:2px;border:0;color:#867b71;background:transparent;font-size:11px}.bottom-nav button.active{color:var(--brand-dark);font-weight:600}.nav-icon{line-height:1.15;font-size:21px}.toast-message{position:fixed;z-index:50;bottom:calc(74px + env(safe-area-inset-bottom));left:50%;max-width:calc(100vw - 32px);padding:10px 14px;transform:translate(-50%);color:#fff;background:#312b26e6;border-radius:4px;font-size:13px}.page{min-height:calc(100dvh - 48px)}.state-card,.connection-card{margin:14px;padding:20px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--muted);font-size:14px;line-height:1.6}.connection-card{text-align:center}.connection-card h2{margin:0 0 8px;color:#514941;font-size:18px}.connection-card p{margin:0}.inline-button{min-height:36px;border:1px solid #d9bda8;border-radius:4px;padding:0 14px;color:var(--brand-dark);background:#fff8f1}.primary-button{min-height:40px;border:0;border-radius:4px;padding:0 18px;color:#fff;background:var(--brand)}.form-control{width:100%;min-height:42px;border:1px solid var(--line);border-radius:4px;padding:9px 11px;outline:none;color:#403831;background:#fff}.form-control:focus{border-color:#c7967c}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:22px 16px 10px}.section-head h2{margin:0;font-size:17px;font-weight:600}.section-head a,.section-head button{border:0;padding:0;color:var(--brand-dark);background:none;font-size:13px}.quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.quick-item{display:grid;justify-items:center;gap:6px;min-height:83px;padding:13px 4px 9px;border:1px solid var(--line);border-radius:5px;background:var(--surface);color:#514941;font-size:12px}.quick-item span:first-child{font-size:21px}.row{display:flex;align-items:center;gap:10px}.muted{color:var(--muted)}.empty-state{padding:24px 15px;text-align:center;color:#938981;font-size:13px;line-height:1.6}.list{display:grid;gap:10px;padding:0 14px}.list-item{padding:14px;border:1px solid var(--line);border-radius:5px;background:var(--surface)}.forum-page .composer{display:block!important;margin:14px!important;padding:14px!important;border:1px solid var(--line);border-radius:6px;background:var(--surface)}.forum-page .composer-title{display:block!important;margin:0 0 12px!important;font-size:16px!important;line-height:1.4!important}.forum-page .post-title-input{margin-bottom:10px}.forum-page .content-input{display:block!important;width:100%!important;min-height:150px;resize:vertical;padding:11px;border:1px solid var(--line);border-radius:4px;outline:none;color:#403831;background:#fff;font-size:14px;line-height:1.65;box-sizing:border-box}.forum-page .content-input:focus{border-color:#c7967c}.forum-page .composer-footer{display:flex!important;align-items:center;justify-content:flex-end;gap:9px;margin-top:10px}.forum-page .word-count{margin-right:auto}.forum-page .upload-button{display:inline-flex;align-items:center;justify-content:center;min-height:36px;white-space:nowrap}.forum-page .publish-button{min-width:80px;min-height:38px;border:0;border-radius:4px;padding:0 16px;color:#fff;background:var(--brand);text-align:center}.forum-page .avatar img,.forum-page .post-liker-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.home-page .home-links{display:grid;width:76%;align-self:center;margin-top:20px}.home-page .home-links button{display:flex;justify-content:space-between;align-items:center;min-height:44px;border-bottom:1px solid var(--line);color:#8d7464;font-size:13px}.home-page .notification-float{right:max(16px,calc((100vw - 750px)/2 + 24px))}.room-edit-page .room-form{padding:4px 16px 16px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.room-edit-page .field{display:grid;gap:8px;padding:16px 0}.room-edit-page .field-input,.room-detail-page .field-input{display:block;width:100%;min-height:44px;border:1px solid var(--line);border-radius:5px;padding:10px 12px;background:#faf7f2;color:#403831;font-size:16px}.room-edit-page textarea.field-input{min-height:120px;resize:vertical}.room-edit-page fieldset{min-width:0;margin:0;border:0}.room-edit-page .mode-options{display:flex;flex-wrap:wrap;gap:16px}.room-edit-page .mode-option{display:inline-flex;align-items:center;gap:5px;color:#68594d;font-size:13px}.room-edit-page .save-room-button{display:block;width:100%;min-height:44px;text-align:center}.room-detail-page .field{display:grid;gap:8px;min-width:0;margin-bottom:12px}.chat-page .message-list{flex:1;min-height:0;overflow-y:auto;padding:16px 14px}.chat-page .message-composer{display:flex;flex:none;gap:8px;align-items:flex-end;padding:12px 12px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fffdf9}.chat-page .peer-header{padding:12px 14px;background:var(--surface)}.chat-page .message-main{max-width:82%;padding:10px 12px;border-radius:6px;background:#fff}.chat-page .message-row.mine{justify-content:flex-end}.chat-page .message-row.mine .message-main{background:#e9dccf}.group-page .join-button,.group-page .retry-button{text-align:center}.forum-page .post-images{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-width:480px;margin-top:10px}.forum-page .post-images img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:4px}.forum-page .comment-input{width:100%;min-height:64px;resize:vertical;padding:8px;border:1px solid var(--line);border-radius:4px;background:#fff;color:#403831}.forum-page .comment-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.forum-page .comment-publish-button{align-self:end;min-height:36px;border:0;border-radius:4px;padding:0 12px;color:#fff;background:var(--brand)}.task-calendar-card{margin:0 14px 14px;padding:12px;border:1px solid var(--line);border-radius:5px;background:var(--surface)}.task-calendar-card .calendar-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}.task-calendar-card .calendar-switch{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;color:var(--brand-dark);font-size:22px}.task-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}.task-calendar-grid .calendar-week{padding:4px 0;color:var(--muted);font-size:11px}.task-calendar-day{display:grid;min-width:0;aspect-ratio:1;align-content:center;justify-items:center;gap:1px;border-radius:50%;color:#544a42;font-size:12px}.task-calendar-day.selected{background:#f3e0d0;color:#92573f;font-weight:650}.task-calendar-day.has-task:not(.selected){box-shadow:inset 0 0 0 1px #d7a48a}.task-calendar-day i{width:4px;height:4px;overflow:hidden;border-radius:50%;background:var(--brand);color:transparent;font-size:0}.task-calendar-day.blank{visibility:hidden}.profile-field{display:grid;width:min(100%,420px);gap:6px;margin:12px auto;color:var(--muted);font-size:12px;text-align:left}.avatar-upload{display:inline-flex;align-items:center;justify-content:center;min-height:32px;margin:8px auto;border:1px solid var(--line);border-radius:4px;padding:0 10px;color:var(--brand-dark);background:#fff;font-size:12px;cursor:pointer}.avatar-upload input{position:absolute;width:1px;height:1px;opacity:0}.note-edit-page .note-editor-content{display:block;width:calc(100% - 30px);min-height:48vh;margin:0 15px 12px;padding:14px;border:1px solid var(--line);border-radius:5px;background:#fff;color:#403831;font-size:15px;line-height:1.65}.note-edit-page .save-note-button{display:block;width:calc(100% - 30px);margin:0 15px 20px}.note-edit-page .form-error{margin:0 15px 10px;color:#a7493b}@media(min-width:751px){body{background:#ece9e3}.app-shell{max-width:750px;min-height:100dvh;margin:0 auto;box-shadow:0 0 26px #463c3214;background:#f7f6f2}.app-topbar,.app-content,.bottom-nav{max-width:750px}}.reading-session-card[data-v-60fa113d]{margin:0 0 18px;padding:16px;border:1px solid #eee3d8;border-radius:8px;background:#fffdf9}h2[data-v-60fa113d]{margin:0 0 14px;font-size:16px}.reading-room-select[data-v-60fa113d]{display:grid;gap:8px;color:#897568;font-size:12px}select[data-v-60fa113d]{min-width:0;width:100%;height:40px;border:1px solid #eadfd4;border-radius:5px;padding:0 8px;background:#faf7f2;color:#68584c;font-size:14px}.reading-type-options[data-v-60fa113d]{display:flex;flex-wrap:wrap;gap:20px;margin:16px 0;color:#897568;font-size:13px}.reading-type-options label[data-v-60fa113d]{display:flex;align-items:center;gap:5px}.primary-button[data-v-60fa113d]{width:100%;min-height:40px;text-align:center}.reading-timer[data-v-60fa113d]{color:#8f5a44;font-size:30px;letter-spacing:3px;text-align:center;font-variant-numeric:tabular-nums}.session-room[data-v-60fa113d],.session-tip[data-v-60fa113d]{color:#a0978e;font-size:12px;text-align:center;line-height:1.6}.reading-error[data-v-60fa113d]{margin:12px 0 0;color:#a7493b;font-size:12px;line-height:1.6}.h5-content-editor{width:100%;min-width:0}.h5-content-editor .editor-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:4px 0 8px}.h5-content-editor .editor-tool{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 8px;border:1px solid #eee4db;border-radius:4px;color:#6c5b4f;background:#fff;font-size:12px}.h5-content-editor .bold-symbol{font-weight:700}.h5-content-editor select{max-width:46px;border:0;outline:0;background:transparent;color:inherit;font-size:11px}.h5-body-editor{min-height:140px;padding:10px;border:1px solid #ebe4dc;border-radius:4px;outline:none;background:#fff;color:#403831;font-size:14px;line-height:1.65;overflow-wrap:anywhere}.h5-body-editor:focus{border-color:#c7967c}.h5-body-editor:empty:before{content:attr(data-placeholder);color:#aaa198;pointer-events:none}.h5-body-editor img.editor-image{display:block;max-width:100%;max-height:360px;margin:8px 0;object-fit:contain}.h5-content-editor .emoji-panel{display:grid;grid-template-columns:repeat(8,1fr);gap:3px;margin-bottom:8px;padding:6px;border:1px solid #eee4db;border-radius:4px;background:#fff}.h5-content-editor .emoji{display:grid;min-height:32px;place-items:center;font-size:18px}.h5-content-editor .hidden-input{display:none}.h5-content-editor.compact .h5-body-editor{height:auto;min-height:74px}@media(max-width:420px){.h5-content-editor .editor-tool{min-height:28px;padding:0 6px}.h5-content-editor .emoji-panel{grid-template-columns:repeat(6,1fr)}}.h5-rich-content{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}.h5-rich-content img{display:block;max-width:100%;max-height:560px;margin:10px 0;border-radius:4px;object-fit:contain}.h5-rich-content .image-unavailable{display:inline-block;margin:8px 0;color:#9a9086;font-size:12px}.h5-mention-overlay[data-v-c1849aaf]{position:fixed;z-index:80;inset:0;background:#30292380}.h5-mention-panel[data-v-c1849aaf]{position:absolute;right:0;bottom:0;left:0;width:min(100%,750px);margin:auto;padding:15px 16px calc(18px + env(safe-area-inset-bottom));border-radius:12px 12px 0 0;background:#fffdf9}header[data-v-c1849aaf]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}strong[data-v-c1849aaf]{color:#5b4c40;font-size:14px}header button[data-v-c1849aaf]{width:32px;height:32px;color:#958273;text-align:center;font-size:24px}.h5-mention-list[data-v-c1849aaf]{max-height:48dvh;overflow-y:auto}.h5-mention-row[data-v-c1849aaf]{display:flex;align-items:center;gap:10px;width:100%;min-height:48px;border-top:1px solid #eee4db;font-size:13px}.h5-mention-row img[data-v-c1849aaf],.h5-mention-avatar[data-v-c1849aaf]{display:grid;flex:none;width:32px;height:32px;place-items:center;border-radius:50%;background:#f4e4d5;color:#a16e4c;object-fit:cover}small[data-v-c1849aaf]{margin-left:auto;color:#a66a50;font-size:11px}p[data-v-c1849aaf]{color:#a0978e;font-size:13px}.comment-item[data-v-ef867930]{scroll-margin-top:56px}.nested-comment[data-v-ef867930]{padding-left:10px;border-left:2px solid #ead8c9}.comment-focused[data-v-ef867930]{background:#fff3df}.comment-head[data-v-ef867930]{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}.comment-actions[data-v-ef867930]{display:flex;gap:10px}.post-comment-form[data-v-ef867930]{display:grid;gap:8px;margin-top:12px;scroll-margin-top:58px}.post-comment-form footer[data-v-ef867930]{display:flex;gap:8px;justify-content:flex-end;align-items:center}footer>span[data-v-ef867930]{margin-right:auto;color:#a1968d;font-size:11px}.comments-error[data-v-ef867930]{color:#a7493b;font-size:12px}.comment-load-more[data-v-ef867930]{display:block;margin:12px auto;color:#a3765d;font-size:12px}.replying-row[data-v-ef867930]{display:flex;justify-content:space-between;color:#a07358;font-size:12px}.comment-publish-button[data-v-ef867930]{min-height:34px;padding:0 12px;border-radius:5px;text-align:center;font-size:12px}.mention-button[data-v-ef867930]{min-height:34px;padding:0 8px}.post-card[data-v-6e50cb97]{scroll-margin-top:58px}.mention-chips[data-v-6e50cb97]{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}.mention-chip[data-v-6e50cb97]{padding:5px 8px;border-radius:12px;color:#9b654d;background:#f7eadd;font-size:11px}.h5-task-editor[data-v-8b35e534]{scroll-margin-top:58px}.form-title-row[data-v-8b35e534]{display:flex;justify-content:space-between;gap:12px;align-items:center}h2[data-v-8b35e534]{margin:0 0 12px;font-size:17px}.form-title-row button[data-v-8b35e534]{color:#9f634b;font-size:13px}.page-fields[data-v-8b35e534]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.field[data-v-8b35e534]{min-width:0}.field-input[data-v-8b35e534]{max-width:100%}.task-limit-options[data-v-8b35e534]{display:flex;flex-wrap:wrap;gap:16px}.task-check[data-v-8b35e534]{display:flex;align-items:center;gap:6px;margin:16px 0;font-size:13px}small[data-v-8b35e534]{color:#9a9086;font-size:12px;line-height:1.6}.task-form-error[data-v-8b35e534]{color:#a7493b;font-size:13px}.primary-button[data-v-8b35e534]{width:100%;min-height:42px;text-align:center}.task-comments[data-v-37b713d9]{margin-top:14px;border-top:1px solid #eee4db;padding-top:12px}.task-comment[data-v-37b713d9]{scroll-margin-top:58px;padding:10px 0;border-bottom:1px solid #f1eae2;font-size:13px}.task-comment.focused[data-v-37b713d9]{background:#fff3df}header[data-v-37b713d9]{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-bottom:8px;color:#9b7e69;font-size:11px}header small[data-v-37b713d9]{display:block;margin-top:3px;color:#a49a8f}header div[data-v-37b713d9]{display:flex;gap:10px}form[data-v-37b713d9]{display:grid;justify-items:end;gap:8px;margin-top:12px}textarea[data-v-37b713d9]{min-height:72px}.reply-caption[data-v-37b713d9]{width:100%;color:#a07358;font-size:12px}.comment-error[data-v-37b713d9]{color:#a7493b;font-size:12px}.comment-state[data-v-37b713d9],.load-comments[data-v-37b713d9]{color:#a0978e;font-size:12px}.load-comments[data-v-37b713d9]{display:block;margin:10px auto}.primary-button[data-v-37b713d9]{min-height:34px;font-size:12px}.task-actions[data-v-7b1e32ab]{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.task-actions button[data-v-7b1e32ab]{min-width:62px;min-height:34px;text-align:center;font-size:12px}.task-secondary-actions[data-v-7b1e32ab]{display:flex;gap:22px;margin-top:12px;padding-top:10px;border-top:1px solid #eee6dd;color:#ad7459;font-size:12px}.makeup-review[data-v-7b1e32ab],.makeup-form[data-v-7b1e32ab]{margin-top:14px;padding:12px;border:1px solid #ecd7c5;border-radius:5px;background:#fff7ef}.makeup-form label[data-v-7b1e32ab]{display:grid;gap:8px;color:#9b7d65;font-size:12px}textarea[data-v-7b1e32ab]{min-height:90px}.makeup-review h4[data-v-7b1e32ab]{margin:0 0 12px;font-size:13px}.makeup-review article[data-v-7b1e32ab]{padding:8px 0;border-top:1px solid #f0e2d4}.makeup-review strong[data-v-7b1e32ab]{font-size:13px}.makeup-review p[data-v-7b1e32ab]{font-size:13px;overflow-wrap:anywhere}.makeup-review small[data-v-7b1e32ab]{color:#a0968b;font-size:10px}.task-action-error[data-v-7b1e32ab]{color:#a7493b;font-size:12px}.danger-button[data-v-7b1e32ab]{color:#ad685b}.room-members[data-v-f92fc3b2]{min-width:0}.invite-row[data-v-f92fc3b2]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;color:#8c6a53;font-size:13px}.member-manage-row[data-v-f92fc3b2]{display:flex;align-items:center;gap:10px;padding:12px 0;border-top:1px solid #eee7de}.member-profile[data-v-f92fc3b2]{display:flex;align-items:center;flex:1;gap:9px;min-width:0}.member-avatar[data-v-f92fc3b2]{display:grid;flex:0 0 34px;width:34px;height:34px;place-items:center;border-radius:50%;background:#f3e5d8;color:#a56b50;object-fit:cover}.member-copy[data-v-f92fc3b2]{display:grid;gap:3px;min-width:0;text-align:left}.member-copy b[data-v-f92fc3b2]{overflow-wrap:anywhere;font-size:13px}.member-copy small[data-v-f92fc3b2]{color:#a2978c;font-size:10px}.member-tools[data-v-f92fc3b2]{display:grid;gap:8px;color:#a36b50;font-size:12px}.member-error[data-v-f92fc3b2]{color:#a7493b;font-size:13px}.member-permission-form[data-v-f92fc3b2]{display:grid;gap:14px;margin-top:15px;padding:14px;border:1px solid #eadfd3;border-radius:5px;background:#faf6ef}.member-permission-form h3[data-v-f92fc3b2]{margin:0;font-size:14px}.member-permission-form label[data-v-f92fc3b2]{display:flex;align-items:center;gap:6px;font-size:13px}.permission-buttons[data-v-f92fc3b2]{display:flex;justify-content:flex-end;gap:8px}.danger-link[data-v-f92fc3b2]{color:#ad685b}.ranking-row[data-v-23b56fca]{display:flex;align-items:center;gap:6px}.ranking-name[data-v-23b56fca]{min-width:0;flex:1;overflow-wrap:anywhere}.task-ranking-score[data-v-23b56fca]{flex:none;display:grid;gap:4px;color:#a67255;font-size:12px;text-align:right}.task-ranking-score small[data-v-23b56fca]{color:#a0968b;font-size:10px}.point-trigger[data-v-23b56fca]{min-width:42px;color:#ad7459;font-size:11px}.points-overlay[data-v-23b56fca]{position:fixed;z-index:60;inset:0;display:grid;place-items:center;padding:16px;background:#30292380}.points-form[data-v-23b56fca]{display:grid;gap:14px;width:min(100%,440px);max-height:calc(100dvh - 32px);overflow-y:auto;padding:20px 16px;border-radius:8px;background:#fffdf9}h2[data-v-23b56fca]{margin:0;font-size:17px}label[data-v-23b56fca]{display:grid;gap:7px;color:#8d7e72;font-size:12px}textarea[data-v-23b56fca]{min-height:90px}.point-modes[data-v-23b56fca]{display:flex;gap:20px}.point-modes label[data-v-23b56fca]{display:flex;align-items:center}.points-buttons[data-v-23b56fca]{display:flex;justify-content:flex-end;gap:8px}p[data-v-23b56fca]{color:#a7493b;font-size:12px}.room-tabs[data-v-30c88c9f]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:15px 0;border-bottom:1px solid #e8ded4}.room-tabs button[data-v-30c88c9f]{min-width:0;padding:12px 2px;color:#9c8a7c;text-align:center;font-size:12px}.room-tabs button.active[data-v-30c88c9f]{color:#9b6147;border-bottom:2px solid #bd7b5f;font-weight:650}.task-card[data-v-30c88c9f]{scroll-margin-top:58px}.task-card-head[data-v-30c88c9f]{display:flex;justify-content:space-between;gap:12px}.task-card-head h3[data-v-30c88c9f]{margin:5px 0 10px}.task-status[data-v-30c88c9f]{flex:none;font-size:12px;color:#a3795f}.room-inline-error[data-v-30c88c9f]{color:#a7493b;font-size:12px}.notifications-page[data-v-b9369f04]{min-height:100%;padding:16px;color:#372f29;background:#f7f3ed}.mail-toolbar[data-v-b9369f04],.filter-tabs[data-v-b9369f04],.sender-row[data-v-b9369f04],.notification-foot[data-v-b9369f04]{display:flex;align-items:center}.mail-toolbar[data-v-b9369f04]{justify-content:space-between;gap:10px;margin-bottom:12px}.filter-tabs[data-v-b9369f04]{gap:2px;padding:3px;border-radius:18px;background:#eee8e1}.filter-tab[data-v-b9369f04]{min-width:48px;padding:7px 9px;border:0;border-radius:15px;background:transparent;color:#91857b;font-size:12px}.filter-tab-active[data-v-b9369f04]{background:#fff;color:#9f6149;font-weight:650;box-shadow:0 2px 6px #4a3b2d0f}.clear-read[data-v-b9369f04]{padding:8px 3px;border:0;background:transparent;color:#a56650;font-size:12px;white-space:nowrap}.clear-read[data-v-b9369f04]:disabled{color:#bdb4ac}.state-card[data-v-b9369f04],.notification-card[data-v-b9369f04]{border:1px solid #eee3d8;border-radius:8px;background:#fffdf9;box-shadow:0 3px 11px #5b422d0d}.state-card[data-v-b9369f04]{margin-top:16px;padding:38px 16px;color:#978b80;font-size:14px;text-align:center}.state-card p[data-v-b9369f04]{margin:0}.error-card[data-v-b9369f04]{color:#9f594b}.retry-button[data-v-b9369f04],.more-button[data-v-b9369f04],.load-more-error button[data-v-b9369f04]{margin-top:12px;padding:8px 16px;border:0;border-radius:18px;background:#bd7b5f;color:#fff;font-size:13px}.notification-card[data-v-b9369f04]{position:relative;margin-bottom:10px;padding:14px;cursor:pointer}.unread-card[data-v-b9369f04]:before{position:absolute;top:16px;left:6px;width:5px;height:5px;border-radius:50%;background:#d66b59;content:""}.notification-head[data-v-b9369f04]{display:flex;align-items:center;justify-content:space-between;gap:8px}.sender-row[data-v-b9369f04]{min-width:0}.sender-name[data-v-b9369f04]{margin-left:5px;overflow:hidden;color:#53463d;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.mail-state[data-v-b9369f04]{flex:none;margin-left:6px;padding:2px 6px;border-radius:8px;font-size:10px}.mail-state-unread[data-v-b9369f04]{background:#f8dfd8;color:#b65d4e}.mail-state-read[data-v-b9369f04]{background:#eeeae5;color:#958b82}.notification-time[data-v-b9369f04]{color:#a49a91;font-size:11px;white-space:nowrap}.notification-label[data-v-b9369f04],.notification-content[data-v-b9369f04]{display:block;margin:9px 0 0;line-height:1.55}.notification-label[data-v-b9369f04]{color:#978b81;font-size:12px}.notification-content[data-v-b9369f04]{color:#61564e;font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere}.notification-foot[data-v-b9369f04]{justify-content:space-between;gap:8px;margin-top:9px;padding-top:8px;border-top:1px solid #f0e8df;font-size:11px}.quick-link[data-v-b9369f04]{padding:2px 0;border:0;background:transparent;color:#a99d93;font-size:11px}.read-toggle[data-v-b9369f04]{padding:2px 0;border:0;background:transparent;color:#a56650;font-size:11px}.read-toggle[data-v-b9369f04]:disabled{opacity:.6}.read-card[data-v-b9369f04]{background:#faf8f4}.more-button[data-v-b9369f04]{display:block;margin:12px auto 20px}.load-more-error[data-v-b9369f04]{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;color:#9f594b;font-size:12px}.load-more-error button[data-v-b9369f04]{margin-top:0}@media(min-width:760px){.notifications-page[data-v-b9369f04]{max-width:750px;margin:0 auto;padding:24px}}.ranking-page[data-v-292f16a7]{min-height:100%;box-sizing:border-box;padding:20px 16px 32px;color:#342f2a;background:#f7f6f2}.ranking-header[data-v-292f16a7]{padding:6px 4px 16px}.ranking-header h1[data-v-292f16a7]{margin:0;font-size:23px;line-height:1.25;font-weight:700}.ranking-header p[data-v-292f16a7]{margin:6px 0 0;color:#938981;font-size:13px}.metric-picker[data-v-292f16a7]{position:relative;display:block;margin-bottom:12px}.metric-picker select[data-v-292f16a7]{width:100%;height:48px;padding:0 38px 0 14px;appearance:none;border:1px solid #eadfd4;border-radius:8px;background:#fff;color:#6f5d52;font-size:14px;box-shadow:0 2px 9px #4a3b2d0a}.metric-picker-arrow[data-v-292f16a7]{position:absolute;top:50%;right:15px;transform:translateY(-55%);color:#a6664c;font-size:20px;pointer-events:none}.state-card[data-v-292f16a7],.ranking-card[data-v-292f16a7]{border-radius:8px;background:#fff;box-shadow:0 3px 10px #4a3b2d0d}.state-card[data-v-292f16a7]{padding:42px 14px;color:#a0978e;font-size:14px;text-align:center}.state-card p[data-v-292f16a7]{margin:0}.error-card[data-v-292f16a7]{color:#9c5547}.retry-button[data-v-292f16a7]{margin-top:12px;padding:8px 16px;border:0;border-radius:19px;background:#bd7b5f;color:#fff;font-size:13px}.ranking-card[data-v-292f16a7]{overflow:hidden;padding:0 13px}.ranking-row[data-v-292f16a7]{display:flex;align-items:center;width:100%;min-height:56px;padding:0;border:0;border-bottom:1px solid #f0ebe5;background:transparent;text-align:left}.ranking-row[data-v-292f16a7]:last-child{border-bottom:0}.ranking-row.mine[data-v-292f16a7]{margin:0 -13px;padding:0 13px;width:calc(100% + 26px);background:#fff8ef}.rank[data-v-292f16a7]{flex:0 0 27px;color:#9c9288;font-size:15px;font-weight:700;text-align:center}.rank-1[data-v-292f16a7]{color:#d39732}.rank-2[data-v-292f16a7]{color:#9299a2}.rank-3[data-v-292f16a7]{color:#b97753}.avatar[data-v-292f16a7]{display:flex;flex:0 0 34px;align-items:center;justify-content:center;width:34px;height:34px;margin:0 9px 0 4px;border-radius:50%;background:#f4e8db;color:#ae7358;font-size:13px;font-weight:700}.member-info[data-v-292f16a7]{flex:1;min-width:0}.member-name[data-v-292f16a7],.member-caption[data-v-292f16a7]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-name[data-v-292f16a7]{font-size:14px;font-weight:600}.member-caption[data-v-292f16a7]{margin-top:3px;color:#aaa198;font-size:10px}.ranking-value[data-v-292f16a7]{flex:none;margin-left:8px;color:#ad6f53;font-size:12px;font-weight:600}.my-rank-card[data-v-292f16a7]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:14px;border-radius:8px;background:#fff6ef}.my-rank-title[data-v-292f16a7],.my-rank-desc[data-v-292f16a7]{display:block}.my-rank-title[data-v-292f16a7]{color:#443a35;font-size:14px}.my-rank-desc[data-v-292f16a7]{margin:4px 0 0;color:#9c8f88;font-size:11px}.my-rank-value[data-v-292f16a7]{color:#d87857;font-size:15px}.sr-only[data-v-292f16a7]{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%)}@media(min-width:760px){.ranking-page[data-v-292f16a7]{max-width:750px;margin:0 auto;padding:28px 24px}}.notes-page[data-v-27eb730f]{position:relative;display:flex;min-height:100%;flex-direction:column;background:#f8f8f8;color:#333}.search-bar[data-v-27eb730f]{position:sticky;top:0;z-index:2;padding:10px 15px;background:#fff}.search-input-box[data-v-27eb730f]{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:18px;background:#f0f0f0;color:#999}.search-input-box span[data-v-27eb730f]{font-size:19px;line-height:1}.search-input-box input[data-v-27eb730f]{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#333;font:inherit;font-size:14px}.note-list[data-v-27eb730f]{flex:1;padding:10px 15px 80px}.note-item[data-v-27eb730f]{margin-bottom:10px;padding:15px;border-radius:8px;background:#fff;box-shadow:0 1px 5px #0000000d}.note-header[data-v-27eb730f]{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:7px}.book-name[data-v-27eb730f]{min-width:0;color:#333;font-size:16px;overflow-wrap:anywhere}.note-meta[data-v-27eb730f]{display:flex;flex:none;align-items:center;gap:6px;color:#999;font-size:11px}.note-page[data-v-27eb730f]{color:#b36b4f}.note-time[data-v-27eb730f]{white-space:nowrap}.note-content[data-v-27eb730f]{display:-webkit-box;margin:0;overflow:hidden;color:#666;font-size:14px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:3}.note-img[data-v-27eb730f]{width:100%;max-height:210px;margin-top:10px;border-radius:6px;object-fit:cover}.note-actions[data-v-27eb730f]{display:flex;justify-content:flex-end;gap:16px;margin-top:10px;padding-top:8px;border-top:1px solid #f1ece7}.note-action[data-v-27eb730f]{display:inline-flex;align-items:center;gap:4px;padding:0;border:0;background:transparent;color:#a17663;font-size:12px}.note-delete-action[data-v-27eb730f]{color:#b26358}.empty-tip[data-v-27eb730f]{margin:50px 0 0;color:#999;font-size:13px;text-align:center}.error-tip[data-v-27eb730f]{color:#a7493b}.float-btn[data-v-27eb730f]{position:fixed;right:max(20px,calc((100vw - 750px)/2 + 20px));bottom:28px;display:grid;width:50px;height:50px;place-items:center;border:0;border-radius:50%;background:#07c160;box-shadow:0 2px 8px #07c16066;color:#fff;font-size:34px;line-height:1}.editor-head[data-v-27eb730f]{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;color:#372f29;font-size:16px;font-weight:600}.back-button[data-v-27eb730f]{width:34px;height:34px;padding:0;border:0;background:transparent;color:#66564e;font-size:31px;line-height:1;text-align:left}.editor-head-spacer[data-v-27eb730f]{width:34px}.editor-fields[data-v-27eb730f]{display:flex;gap:10px;padding:0 15px 10px}.input-group[data-v-27eb730f]{display:flex;height:44px;align-items:center;gap:7px;padding:0 10px;border-radius:8px;background:#fff;box-shadow:0 2px 6px #e6c89626}.input-group span[data-v-27eb730f]{color:#947f73;font-size:16px}.input-group input[data-v-27eb730f]{width:100%;min-width:0;border:0;outline:0;background:transparent;color:#333;font:inherit;font-size:14px}.book-group[data-v-27eb730f]{flex:1}.page-group[data-v-27eb730f]{width:90px}.editor-body[data-v-27eb730f]{display:flex;min-height:260px;flex:1;flex-direction:column;margin:0 15px 12px;padding:15px;border-radius:8px;background:#fff;box-shadow:0 2px 6px #e6c8961a}.editor-body textarea[data-v-27eb730f]{width:100%;min-height:220px;flex:1;resize:vertical;border:0;outline:0;color:#333;font:inherit;font-size:16px;line-height:1.6}.editor-body textarea[data-v-27eb730f]::placeholder{color:#ccc}.image-grid[data-v-27eb730f]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.image-item[data-v-27eb730f]{position:relative;aspect-ratio:1}.image-item img[data-v-27eb730f]{width:100%;height:100%;border-radius:6px;object-fit:cover}.image-item button[data-v-27eb730f]{position:absolute;top:-5px;right:-5px;width:23px;height:23px;border:0;border-radius:50%;background:#000a;color:#fff;font-size:18px}.emoji-panel[data-v-27eb730f]{display:grid;grid-template-columns:repeat(5,1fr);gap:2px;margin:0 15px 10px;padding:8px;border-radius:8px;background:#fff;box-shadow:0 2px 6px #e6c8961a}.emoji-panel button[data-v-27eb730f]{height:35px;border:0;background:transparent;font-size:20px}.form-error[data-v-27eb730f]{margin:0 15px 8px;color:#a7493b;font-size:12px}.hidden-input[data-v-27eb730f]{display:none}.bottom-bar[data-v-27eb730f]{display:flex;min-height:58px;align-items:center;justify-content:space-between;gap:12px;padding:0 18px 12px}.icon-group[data-v-27eb730f]{display:flex;align-items:center;gap:16px}.tool-icon[data-v-27eb730f]{display:grid;width:34px;height:34px;place-items:center;border:0;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0000000d;font-size:19px}.submit-btn[data-v-27eb730f]{width:120px;height:40px;border:0;border-radius:20px;background:#f5cbb6;color:#fff;font-size:14px}.submit-btn.active[data-v-27eb730f]{background:#e88c6d;box-shadow:0 2px 6px #e88c6d66}.submit-btn[data-v-27eb730f]:disabled{opacity:.75}.image-preview[data-v-27eb730f]{position:fixed;z-index:10;inset:0;display:grid;place-items:center;padding:16px;background:#000d}.image-preview img[data-v-27eb730f]{max-width:100%;max-height:100%;object-fit:contain}.image-preview button[data-v-27eb730f]{position:absolute;top:12px;right:12px;width:38px;height:38px;border:0;border-radius:50%;background:#fff2;color:#fff;font-size:27px}@media(min-width:760px){.notes-page[data-v-27eb730f]{max-width:750px;min-height:720px;margin:0 auto}}.admin-page[data-v-fcc63d66]{min-width:0;padding:20px 14px 36px;color:#403831}.admin-page h1[data-v-fcc63d66]{margin:0;font-size:22px;line-height:1.4}.admin-page h2[data-v-fcc63d66]{margin:0;font-size:16px;line-height:1.5}.admin-state[data-v-fcc63d66]{padding:32px 8px;text-align:center;color:#8d8379;font-size:14px;line-height:1.7}.admin-card[data-v-fcc63d66]{min-width:0;margin:16px 0;padding:16px;border:1px solid #ebe4dc;border-radius:8px;background:#fffdf9}.admin-login[data-v-fcc63d66]{max-width:420px;margin:22px auto 0}.admin-login h1[data-v-fcc63d66],.admin-subtitle[data-v-fcc63d66]{text-align:center}.admin-mark[data-v-fcc63d66]{display:grid;place-items:center;width:58px;height:62px;margin:0 auto 18px;border-radius:5px 12px 12px 5px;background:#ead2ba;color:#9b6147;font-size:25px;font-weight:650}.admin-subtitle[data-v-fcc63d66]{margin:8px 0 22px;color:#8d8379;font-size:13px}.admin-form[data-v-fcc63d66]{display:grid;gap:16px}.admin-page label[data-v-fcc63d66]{min-width:0}.admin-form label[data-v-fcc63d66],.admin-search label[data-v-fcc63d66]{display:grid;gap:8px;color:#6c5b4f;font-size:13px}.admin-page input[data-v-fcc63d66]:not([type=checkbox]),.admin-page select[data-v-fcc63d66]{width:100%;min-width:0;height:44px;padding:0 10px;border:1px solid #e6d9cc;border-radius:5px;color:#403831;background:#faf7f2;outline:none;font-size:16px}.admin-page input[data-v-fcc63d66]:focus,.admin-page select[data-v-fcc63d66]:focus{border-color:#bd7b5f}.admin-primary[data-v-fcc63d66],.admin-secondary[data-v-fcc63d66]{min-height:40px;padding:8px 12px;border-radius:5px;text-align:center;font-size:13px;line-height:1.5}.admin-primary[data-v-fcc63d66]{color:#fff;background:#bd7b5f}.admin-secondary[data-v-fcc63d66]{border:1px solid #d9bda8;color:#9f634b;background:#fff8f1}.admin-error[data-v-fcc63d66]{margin:0;color:#a7493b;font-size:13px;line-height:1.65;overflow-wrap:anywhere}.admin-notice[data-v-fcc63d66]{color:#755b43;background:#f0e5d7}.admin-feedback[data-v-fcc63d66]{margin:14px 0;padding:10px 12px;border-radius:5px}.admin-header[data-v-fcc63d66]{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.admin-header p[data-v-fcc63d66]{margin:5px 0 0;color:#8d8379;font-size:12px;overflow-wrap:anywhere}.admin-header-actions[data-v-fcc63d66]{display:flex;flex:none;flex-wrap:wrap;justify-content:flex-end;gap:12px;max-width:120px}.admin-header-actions button[data-v-fcc63d66]{min-height:32px;color:#9f634b;font-size:12px}.admin-summary[data-v-fcc63d66]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:20px 0}.admin-summary div[data-v-fcc63d66]{display:grid;justify-items:center;gap:5px;padding:14px 4px;border:1px solid #ebe4dc;border-radius:6px;background:#fffdf9}.admin-summary strong[data-v-fcc63d66]{font-size:24px;font-weight:650}.admin-summary span[data-v-fcc63d66]{font-size:12px;color:#8d8379}.admin-password-form[data-v-fcc63d66]{max-width:440px;margin-top:18px}.admin-search[data-v-fcc63d66]{display:grid;grid-template-columns:minmax(0,1fr) 110px;align-items:end;gap:12px}.admin-search>button[data-v-fcc63d66]{grid-column:1 / -1}.admin-selection[data-v-fcc63d66]{display:grid;gap:10px;margin:18px 0 8px;padding-top:16px;border-top:1px solid #ebe4dc}.admin-selection label[data-v-fcc63d66]{display:flex;align-items:center;gap:4px;color:#76685c;font-size:12px}.admin-page input[type=checkbox][data-v-fcc63d66]{width:17px;height:17px;margin:0 4px 0 0;accent-color:#bd7b5f}.admin-help[data-v-fcc63d66]{margin:10px 0;color:#8d8379;font-size:12px;line-height:1.7}.admin-user-row[data-v-fcc63d66]{display:grid;grid-template-columns:22px minmax(0,1fr) 105px;align-items:center;gap:6px;padding:16px 0;border-top:1px solid #eee6dc}.admin-select-user[data-v-fcc63d66]{display:flex;align-items:center;min-height:40px}.admin-user-copy[data-v-fcc63d66]{display:grid;min-width:0;gap:6px}.admin-user-copy strong[data-v-fcc63d66]{overflow-wrap:anywhere;font-size:14px;line-height:1.5}.admin-user-copy span[data-v-fcc63d66],.admin-user-copy small[data-v-fcc63d66]{color:#8d8379;font-size:11px;line-height:1.5;overflow-wrap:anywhere}.admin-user-action[data-v-fcc63d66]{display:grid;justify-items:end;gap:9px}.admin-user-action button[data-v-fcc63d66]{min-height:32px;color:#9f634b;font-size:11px;text-align:right}.admin-badge[data-v-fcc63d66]{padding:3px 7px;border-radius:10px;color:#9f634b;background:#f3e0d0;font-size:10px}.admin-badge.claimed[data-v-fcc63d66]{color:#677a59;background:#eaf0e2}.admin-pagination[data-v-fcc63d66]{display:grid;gap:12px;margin-top:10px;padding-top:16px;border-top:1px solid #ebe4dc;color:#8d8379;font-size:12px}.admin-pagination>div[data-v-fcc63d66]{display:flex;gap:8px}.admin-pagination button[data-v-fcc63d66]{flex:1}.admin-section-head[data-v-fcc63d66]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.issued-row[data-v-fcc63d66]{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:14px 0;border-top:1px solid #eee6dc}.issued-person[data-v-fcc63d66]{display:grid;gap:4px;min-width:0}.issued-person strong[data-v-fcc63d66]{font-size:13px;overflow-wrap:anywhere}.issued-person span[data-v-fcc63d66]{color:#8d8379;font-size:11px}.issued-row code[data-v-fcc63d66]{grid-column:1 / -1;grid-row:2;padding:8px;border-radius:4px;color:#6c503d;background:#f5eee5;overflow-wrap:anywhere;font-size:13px}.admin-text-button[data-v-fcc63d66]{min-height:36px;color:#9f634b;font-size:12px}.admin-offline[data-v-fcc63d66]{text-align:center}.admin-offline p[data-v-fcc63d66]{font-size:13px;color:#8d8379;line-height:1.7}@media(min-width:560px){.admin-page[data-v-fcc63d66]{padding:28px 24px 40px}.admin-search[data-v-fcc63d66]{grid-template-columns:minmax(0,1fr) 125px 76px}.admin-search>button[data-v-fcc63d66]{grid-column:auto;min-height:44px}.admin-selection[data-v-fcc63d66]{grid-template-columns:minmax(0,1fr) auto;align-items:center}.admin-user-row[data-v-fcc63d66]{grid-template-columns:26px minmax(0,1fr) 140px;gap:10px}.admin-user-action button[data-v-fcc63d66]{font-size:12px}.admin-pagination[data-v-fcc63d66]{display:flex;align-items:center;justify-content:space-between}.admin-pagination button[data-v-fcc63d66]{min-width:76px}.issued-row[data-v-fcc63d66]{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) auto}.issued-row code[data-v-fcc63d66]{grid-column:auto;grid-row:auto}}
