:root{--bg:#faf8f4;--paper:#fff;--ink:#383342;--muted:#8c8793;--purple:#78658c;--purple-dark:#625075;--lilac:#f0ebf5;--green:#758879;--line:#eee9e5;--rose:#b57b76;--serif:"Noto Serif SC","Songti SC","SimSun",serif;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;color:var(--ink);background:var(--bg);font-size:14px}
*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible{outline:3px solid #c6b8da;outline-offset:3px}a{color:inherit;text-decoration:none}[hidden]{display:none!important}h1,h2,h3,p{margin:0}button{border:0;background:none;color:inherit}input,textarea,select{width:100%;padding:12px 14px;border:1px solid #e3dfe5;border-radius:11px;background:#fff;color:var(--ink);outline:none}input:focus,textarea:focus,select:focus{border-color:#a38bb8;box-shadow:0 0 0 3px #f1ebf6}textarea{resize:vertical;line-height:1.75}label{display:block;font-size:13px;font-weight:500;line-height:1.7}label>input,label>textarea,label>select{margin-top:7px}label+label{margin-top:17px}.primary{background:var(--purple);color:#fff;padding:13px 19px;border-radius:11px;font-weight:600;transition:.15s}.primary:hover{background:var(--purple-dark);transform:translateY(-1px)}.secondary{border:1px solid #e4dce9;background:#fff;padding:11px 16px;border-radius:10px;color:var(--purple-dark)}.secondary:hover{background:var(--lilac)}.full{width:100%}.text-button{color:var(--purple);font-size:12px;padding:5px 0}.icon-button{width:32px;height:32px;border-radius:8px;color:#8c8197;font-size:20px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.icon-button:hover{background:var(--lilac)}.pill{display:inline-flex;align-items:center;gap:7px;background:#f3eff6;color:var(--purple);font-size:11px;border-radius:20px;padding:6px 11px;font-weight:500;white-space:nowrap}.eyebrow{font-size:10px;letter-spacing:2px;color:#a494a4;line-height:1.7}.muted{color:var(--muted);font-weight:400}.small{font-size:12px;line-height:1.8}.error{color:#b65f63;font-size:12px;line-height:1.7;min-height:20px;margin:10px 0}.brand{display:flex;align-items:center;gap:12px;font-weight:700;font-size:16px;white-space:nowrap}.brand img{width:40px;height:40px;border-radius:13px}.brand small{display:block;font-size:10px;letter-spacing:1px;color:#9b92a1;font-weight:400;margin-top:5px}.tiny-dot,.scope-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#95a78d;flex-shrink:0}
.auth-shell{min-height:100dvh;display:grid;grid-template-columns:1fr 1fr;background:#fff}.auth-story{background:#f2eee8;padding:45px 7vw 32px;display:flex;flex-direction:column;min-height:100dvh;overflow:hidden}.auth-copy{margin:auto 0;padding-top:30px}.auth-copy h1{font-family:var(--serif);font-size:clamp(38px,4vw,58px);font-weight:500;line-height:1.5;letter-spacing:3px;margin:18px 0 22px}.auth-copy p{color:#92898b;line-height:2.1;font-size:14px}.auth-foot{font-size:11px;color:#aaa096;margin-top:45px}.book-stack{display:flex;gap:20px;margin:48px 0 25px;transform:rotate(-5deg);max-width:360px}.book-stack>div{width:150px;height:190px;padding:25px 20px;background:#d8e0d4;border-radius:3px 10px 10px 3px;border-left:7px solid #b5c3b0;box-shadow:8px 12px 20px #7069630c}.book-stack>div:nth-child(2){background:#e7dce9;border-color:#c8b5d1;transform:rotate(12deg) translateY(15px)}.book-stack span{display:block;font-size:7px;letter-spacing:1px;color:#74846f}.book-stack b{display:block;font-family:var(--serif);font-size:34px;font-weight:500;letter-spacing:10px;margin:26px 0}.book-stack small{font-size:8px;color:#837b86}.auth-form-wrap{display:flex;align-items:center;justify-content:center;padding:50px 30px}.auth-card{width:min(100%,350px)}.auth-card h2{font-family:var(--serif);font-size:29px;font-weight:500;margin:25px 0 10px}.auth-card>p{font-size:13px;color:var(--muted);margin-bottom:30px}.auth-card form>.primary{margin-top:6px;display:flex;justify-content:space-between}.auth-note{text-align:center;font-size:11px!important;margin:22px 0!important}.auth-card .secondary{margin-top:12px}#setup-extra{margin-top:16px}
.app-shell{min-height:100dvh;display:grid;grid-template-columns:252px minmax(0,1fr)}.sidebar{height:100dvh;position:sticky;top:0;background:#f3f0ec;border-right:1px solid #eae5df;padding:31px 20px 19px;display:flex;flex-direction:column}.sidebar .brand{font-size:14px;gap:9px}.sidebar .brand img{width:35px;height:35px}.sidebar .brand small{font-size:10px;letter-spacing:.2px}.new-chat{margin-top:35px;margin-bottom:29px;font-size:12px;box-shadow:0 4px 9px #71628b0c}.side-caption{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#a39ba2;padding:0 5px;margin-bottom:12px}.side-caption button{font-size:10px}.thread-list{overflow:auto;flex:1}.thread-item{width:100%;display:flex;text-align:left;padding:13px 12px;border-radius:10px;gap:10px;align-items:center;margin-bottom:5px}.thread-item:hover{background:#ebe6e3}.thread-item.active{background:#e7dfea;color:#695578}.thread-glyph{font-size:17px;color:#a298a5}.thread-item div{min-width:0}.thread-item b{display:block;font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.thread-item small{display:block;font-size:10px;color:#a398a4;margin-top:5px}.sidebar-bottom{border-top:1px solid #e5dfd9;padding-top:19px;display:flex;align-items:center;gap:10px;font-size:11px}.sidebar-bottom small{display:block;font-size:9px;color:#aaa0a5;margin-top:5px}.sidebar-bottom .icon-button{margin-left:auto}.main{min-width:0}.topbar{height:89px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 42px;gap:12px}.topbar-title>span{display:block;font-size:10px;color:#aaa1a7;letter-spacing:.8px;margin-bottom:7px}.topbar-title b{font-size:12px;font-weight:400;color:#746c79}.topbar-right{display:flex;gap:17px;align-items:center}.avatar{background:#e4d9dd;border:3px solid #fff;width:37px;height:37px;border-radius:50%;color:#987b88;font-family:var(--serif);font-size:17px;box-shadow:0 0 0 1px #eae2e4}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:36px;padding:0 40px;max-width:1450px;margin:auto}.content{min-width:0}.tabs{display:flex;align-items:center;border-bottom:1px solid var(--line);gap:27px;height:72px;margin-bottom:29px;white-space:nowrap}.tabs>button{height:100%;position:relative;color:#9b929f;font-size:12px;padding:0 1px}.tabs>button.active{font-weight:600;color:var(--purple)}.tabs>button.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--purple);border-radius:2px}.tabs #due-badge:not(:empty){font-size:9px;background:#eee7f1;padding:1px 5px;border-radius:8px;margin-left:3px}.conversation-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.conversation-heading h1,.section-heading h1{font-family:var(--serif);font-size:27px;font-weight:500;letter-spacing:1px;margin-top:8px}.heading-actions{display:flex;gap:3px}.scope-bar{display:flex;gap:9px;align-items:center;margin:20px 0 23px;padding:11px 14px;border:1px solid var(--line);background:#fffdfb;border-radius:11px}.scope-bar .text-button{font-size:11px;padding:0;max-width:75%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.scope-bar small{margin-left:auto;font-size:10px;color:#a298a1;white-space:nowrap}.scope-bar span{margin-left:6px}.messages{min-height:230px;max-height:calc(100dvh - 445px);min-height:200px;overflow:auto;scroll-behavior:smooth;padding:5px 4px 16px;scrollbar-width:thin;scrollbar-color:#e2d9e4 transparent}.message{display:flex;gap:11px;margin:0 0 23px;align-items:flex-start}.message-avatar{width:30px;height:30px;border-radius:10px;flex:0 0 30px;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:16px;background:#e8e0ee;color:#8b709b}.message.user .message-avatar{background:#e9e2dc;color:#968375}.message-main{max-width:calc(100% - 41px);min-width:0;flex:1}.message-name{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:500;margin:3px 0 9px;color:#9c90a2}.message-name time{font-size:9px;font-weight:400;color:#b3aab7}.message-content{font-size:13px;line-height:1.95;white-space:pre-wrap;overflow-wrap:anywhere}.message.user .message-content{background:#efe8f2;border-radius:3px 13px 13px 13px;padding:12px 16px;display:inline-block;max-width:100%;color:#6e5a7b}.welcome-note{border:1px solid #ece3e8;border-radius:13px;background:linear-gradient(105deg,#f7f1f4,#fffdf8);padding:18px;margin:15px 0 10px}.welcome-note strong{font-family:var(--serif);font-size:18px;font-weight:500}.welcome-note p{color:#9b8996;font-size:12px;margin-top:9px}.welcome-points{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:17px}.welcome-points div{font-size:10px;line-height:1.8;border-top:1px solid #e8dfe6;padding-top:9px;color:#9f8c9f}.welcome-points b{font-weight:500;color:#7c6d86;display:block;font-size:11px}.source-links{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}.source-link{background:#f2f4ed;border:1px solid #e5e9de;color:#7c8973;border-radius:7px;font-size:10px;padding:6px 9px;text-align:left;line-height:1.6;max-width:100%;overflow:hidden;text-overflow:ellipsis}.source-link:hover{border-color:#b8c3ac}.evidence-details{margin-top:11px;font-size:11px;color:#8e8199}.evidence-details summary{cursor:pointer}.evidence-details blockquote{margin:9px 0;padding:9px 12px;border-left:2px solid #c8bad4;color:#8b7d93;background:#f5f0f7;line-height:1.8;white-space:pre-wrap}.assessment{margin-top:15px;border:1px solid #e8e1eb;border-radius:10px;overflow:hidden}.assessment h4{margin:0;padding:11px 13px;background:#f4eff6;font-size:12px;color:#7f6c90;font-weight:500}.assessment-row{padding:12px 13px;font-size:12px;line-height:1.8;border-top:1px solid #f0eaf1}.assessment-row b{font-size:10px;background:#eef1e9;color:#7a896e;padding:2px 6px;border-radius:4px;margin-right:6px}.assessment-row blockquote{color:#a295ab;font-size:11px;margin:8px 0 0}.self-review{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px;align-items:center}.self-review>span{font-size:10px;color:#a295a8}.self-review button{font-size:10px;border:1px solid #e7deeb;padding:6px 10px;border-radius:7px}.self-review button.selected{background:#e8e0ef;color:#725684}.message-meta{font-size:9px;color:#aaa1af;margin-top:8px}.pending{display:flex;align-items:center;gap:8px;color:#9b8baa;font-size:11px;padding:0 0 15px 41px}.loader{width:12px;height:12px;border:2px solid #e9e0ee;border-top-color:#9c81b0;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.composer-area{padding:7px 0 20px}.quick-actions{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px}.quick-actions button{font-size:10px;color:#9a879f;border:1px solid #e8e0e9;border-radius:8px;padding:8px 10px;background:#fcfafc}.quick-actions button:hover{background:#f1eaf5}.composer{background:#fff;border:1px solid #dfd4e6;border-radius:14px;box-shadow:0 3px 15px #876b9b06;padding:14px 14px 10px}.composer textarea{border:0;background:none;padding:0;box-shadow:none;resize:none;font-size:12px;min-height:47px;max-height:160px}.composer textarea::placeholder{color:#b5aab9}.composer-bottom{display:flex;justify-content:space-between;align-items:center}.composer-bottom>span{font-size:9px;color:#afa3b5}.send-button{width:31px;height:31px;background:var(--purple);border-radius:10px;color:#fff;font-size:20px}.composer-disclaimer{font-size:9px;color:#b3a8b5;text-align:center;line-height:1.8;margin:10px 0 0}.quiz-tools{display:flex;align-items:center;gap:8px;padding:8px 0;margin-bottom:8px;flex-wrap:wrap}.quiz-tools>span{font-size:10px;color:#a095a6}.quiz-tools button{font-size:10px;color:#9b87aa;padding:5px 7px;border-radius:6px;border:1px solid #e9e2ec}.quiz-tools button.selected{background:#efe8f3;color:#78628d}
.study-aside{padding-top:96px}.aside-quote{font-family:var(--serif);font-size:19px;line-height:2;color:#b5a7ae;padding:0 10px 28px;letter-spacing:1px}.panel{background:#fffdfb;border:1px solid var(--line);border-radius:14px;padding:21px;margin-bottom:20px}.panel h3{font-size:14px;font-weight:500;margin:7px 0 18px}.daily-panel .eyebrow,.source-panel .eyebrow{font-size:9px;letter-spacing:1.2px}.progress-item{margin-bottom:18px}.progress-item .label{display:flex;justify-content:space-between;font-size:10px;color:#9a8c99;margin-bottom:8px}.progress-item b{font-weight:500;color:#7f708e}.bar{height:5px;border-radius:5px;background:#f0ecef;overflow:hidden}.bar>i{height:100%;display:block;background:#b7a4c4;border-radius:5px;width:0}.progress-item.civil .bar>i{background:#adc1ab}.mini-book{display:flex;gap:10px;margin-bottom:15px;align-items:center;font-size:11px}.mini-book>span{display:flex;justify-content:center;align-items:center;width:28px;height:37px;background:#e2e9dc;border-left:3px solid #bdcbb6;border-radius:1px 5px 5px 1px;color:#8fa184;font-family:var(--serif)}.mini-book.criminal>span{background:#e9e0ec;border-color:#cdbbd6;color:#a78eb5}.mini-book small{display:block;font-size:9px;color:#b0a4ad;margin-top:4px}.source-panel p{font-size:10px;color:#afa2aa;line-height:1.9;border-top:1px dashed #e8e0e3;padding-top:15px}.section-heading p{color:#a295a2;line-height:1.9;font-size:12px;margin:13px 0 25px}.library-controls{display:flex;flex-wrap:wrap;gap:13px;margin-bottom:22px}.segmented{display:inline-flex;gap:4px;border:1px solid #e6dfe8;padding:4px;border-radius:9px;background:#f4f0f6}.segmented button{padding:6px 15px;border-radius:6px;font-size:11px;color:#a28faa}.segmented button.active{background:white;color:#7a628d;box-shadow:0 1px 3px #8d7d9620}.search-field{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:10px;padding-left:12px;flex:1;min-width:170px}.search-field>span{font-size:23px;color:#b0a1b8}.search-field input{border:0;box-shadow:none!important;margin:0;font-size:12px}.library-controls select{font-size:11px;min-width:100%;background:#fffdfb}.topic-card{width:100%;display:block;text-align:left;background:#fffdfb;padding:17px;border:1px solid var(--line);border-radius:12px;margin-bottom:11px;transition:.15s}.topic-card:hover{border-color:#cec0d7;transform:translateY(-1px)}.topic-card .topic-kicker{color:#a48aaf;font-size:9px;margin-bottom:8px;letter-spacing:.5px}.topic-card h3{font-size:13px;font-weight:500;line-height:1.8;overflow-wrap:anywhere}.topic-card p{color:#a79aa7;font-size:11px;line-height:1.8;margin-top:7px}.topic-card .topic-footer{display:flex;justify-content:space-between;align-items:center;margin-top:11px;color:#aba2ac;font-size:10px}.review-filter{margin:4px 0 22px}.stat-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:21px}.stat{border:1px solid var(--line);border-radius:11px;background:#fffdfb;padding:16px}.stat>strong{font-family:var(--serif);font-size:25px;font-weight:500;color:#8b739e;display:block}.stat>span{display:block;font-size:10px;color:#ad9eae;margin-top:7px}.review-card{border:1px solid var(--line);background:#fffdfb;border-radius:12px;margin-bottom:12px;padding:17px}.review-card h3{font-size:13px;font-weight:500;line-height:1.8}.review-card .small{margin-top:9px}.review-card .card-buttons{display:flex;gap:10px;align-items:center;margin-top:14px}.review-card .secondary{font-size:11px;padding:7px 12px}.review-card .badge{font-size:9px;color:#a38a76;background:#f7efe5;border-radius:6px;padding:4px 8px;display:inline-block;margin-bottom:9px}.progress-form h3{margin-top:0}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px;margin-bottom:20px}.field-grid>label{margin:0}.progress-form>.primary{margin-top:18px}.progress-form .small{margin-top:9px}.view{padding-bottom:20px}.empty-state{padding:55px 18px;text-align:center;border:1px dashed #e1d7e4;border-radius:15px;background:#fffdfb}.empty-state .empty-icon{font-family:var(--serif);font-size:35px;color:#b8a6c3;margin-bottom:18px}.empty-state h3{font-size:14px;font-weight:500;color:#8c779a}.empty-state p{font-size:12px;color:#ad9cb2;line-height:2;margin:10px 0 20px}.empty-state button{font-size:12px}.notice{font-size:11px;color:#b88a6c;background:#fbf1e9;border-radius:8px;padding:9px 13px;margin-bottom:17px;line-height:1.8}
dialog{border:1px solid #e6dce9;border-radius:19px;background:#fffdfb;color:var(--ink);width:min(92vw,480px);max-height:88dvh;padding:25px;box-shadow:0 20px 70px #3c2c492b}dialog::backdrop{background:#40364755;backdrop-filter:blur(3px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.dialog-top h2{font-size:17px;font-family:var(--serif);font-weight:500}.dialog-top .icon-button{font-size:24px}.topic-dialog{width:min(94vw,760px)}.topic-dialog>h2{font-size:20px;line-height:1.8;font-family:var(--serif);font-weight:500;margin-bottom:8px}.source-text{white-space:pre-wrap;line-height:2;font-size:13px;margin:24px 0;background:#faf7f1;border-radius:12px;padding:23px;border:1px solid #f0e8db;overflow-wrap:anywhere}.dialog-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:15px}.dialog-actions button{font-size:11px}.dialog-actions+p{border-top:1px solid var(--line);padding-top:13px}dialog form>.primary{margin-top:20px}#text-dialog-label{font-size:12px;color:#a18baa}#mobile-thread-list{margin-top:20px;max-height:55dvh;overflow:auto}#toast{position:fixed;bottom:35px;left:50%;transform:translateX(-50%) translateY(20px);background:#695a76;color:#fff;border-radius:12px;padding:12px 20px;box-shadow:0 5px 25px #47325320;z-index:100;opacity:0;pointer-events:none;transition:.2s;max-width:90vw;font-size:12px;line-height:1.8}#toast.visible{opacity:1;transform:translateX(-50%) translateY(0)}.mobile-only{display:none}
@media(min-width:1500px){.workspace{gap:55px;padding:0 65px}.messages{max-height:calc(100dvh - 450px)}}
@media(max-width:1180px){.app-shell{grid-template-columns:215px minmax(0,1fr)}.sidebar{padding:26px 15px}.sidebar .brand{font-size:12px}.sidebar .brand small{font-size:8px}.workspace{grid-template-columns:minmax(0,1fr) 195px;gap:22px;padding:0 27px}.panel{padding:17px}.tabs{gap:22px}.topbar{padding:0 27px}.aside-quote{font-size:17px}.scope-bar{padding:10px}.welcome-points{gap:6px}.quick-actions button{font-size:9px}}
@media(max-width:980px){.study-aside{display:none}.workspace{display:block;max-width:850px}.messages{max-height:calc(100dvh - 440px)}.tabs{gap:32px}.auth-story{padding:35px}.auth-form-wrap{padding:35px}.topbar{height:80px}}
@media(max-width:680px){:root{font-size:14px}.auth-shell{display:block;background:var(--bg)}.auth-story{min-height:0;padding:25px 27px 20px;background:#f2eee8}.auth-story .brand{font-size:14px}.auth-story .brand img{width:34px;height:34px}.auth-copy{padding:25px 0 0}.auth-copy>.eyebrow{font-size:9px}.auth-copy h1{font-size:30px;line-height:1.5;letter-spacing:2px;margin:10px 0}.auth-copy h1 br{display:none}.auth-copy p{font-size:11px}.book-stack,.auth-foot{display:none}.auth-form-wrap{padding:25px 27px 40px}.auth-card{width:100%}.auth-card h2{font-size:24px;margin-top:17px}.auth-card>p{margin-bottom:20px}.app-shell{display:block}.sidebar{display:none}.mobile-only{display:inline-flex}.topbar{height:73px;padding:0 18px;gap:9px;background:#fcfaf7}.topbar-title{flex:1}.topbar-title>span{font-size:9px;letter-spacing:0;margin-bottom:5px}.topbar-title b{font-size:10px}.topbar-right{gap:8px}.topbar-right .pill{font-size:8px;padding:5px 7px}.avatar{width:30px;height:30px;font-size:14px}.workspace{padding:0 19px}.tabs{height:57px;gap:0;justify-content:space-between;margin-bottom:22px}.tabs>button{font-size:11px;padding:0 5px}.tabs>button.active:after{left:5px;right:5px}.conversation-heading h1{font-size:23px;margin-top:6px;max-width:65vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.eyebrow{font-size:8px;letter-spacing:1.6px}.scope-bar{margin:17px 0 17px;font-size:10px}.scope-bar small{font-size:9px}.scope-bar .text-button{font-size:10px}.messages{max-height:none;min-height:210px;padding-bottom:10px;overflow:visible}.message{gap:9px;margin-bottom:22px}.message-avatar{width:27px;height:27px;flex-basis:27px;font-size:14px;border-radius:9px}.message-main{max-width:calc(100% - 36px)}.message-name{font-size:10px}.message-content{font-size:12px;line-height:1.95}.welcome-note{padding:15px}.welcome-note strong{font-size:17px}.welcome-note p{font-size:11px}.welcome-points{margin-top:13px;grid-template-columns:1fr;gap:5px}.welcome-points div{display:flex;gap:10px;padding:6px 0 0;font-size:9px}.welcome-points b{font-size:10px;white-space:nowrap}.composer-area{position:sticky;bottom:0;background:linear-gradient(transparent,var(--bg) 10px);padding-top:12px;padding-bottom:max(12px,env(safe-area-inset-bottom));z-index:5}.quick-actions{gap:5px;margin-bottom:9px}.quick-actions button{font-size:9px;padding:7px 7px}.composer{padding:12px 12px 9px;border-radius:13px}.composer textarea{font-size:12px;min-height:43px}.composer-bottom>span{font-size:8px}.composer-disclaimer{font-size:8px;margin-top:8px}.source-link{font-size:9px}.pending{padding-left:36px}.quiz-tools{gap:5px;padding-top:0;margin-bottom:5px}.quiz-tools button{font-size:9px}.quiz-tools>span{font-size:9px}.section-heading h1{font-size:25px}.section-heading p{font-size:11px;margin-bottom:20px}.stat{padding:13px 10px}.stat>strong{font-size:23px}.stat>span{font-size:9px}.stat-row{gap:8px}.field-grid{gap:13px}.panel{padding:18px}.progress-form label{font-size:12px}.topic-dialog{padding:20px}.source-text{font-size:12px;padding:17px}.dialog-actions{gap:7px}.dialog-actions button{padding:10px 12px}.dialog-top h2{font-size:16px}.heading-actions .icon-button{width:28px}.topic-card h3{font-size:12px}.view{padding-bottom:15px}input,textarea,select{font-size:16px}#chat-input{font-size:16px}.composer textarea::placeholder{font-size:12px}.search-field input{font-size:16px}.search-field input::placeholder{font-size:11px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

.exercise-card{border:1px solid #ded3e7;border-radius:14px;padding:18px;margin:15px 0;background:#fffefa}.exercise-caption{font-size:11px;color:#826c95;margin-bottom:12px}.exercise-card h3{font-size:14px;font-weight:500;line-height:1.9;white-space:pre-wrap;margin:0 0 14px}.exercise-options{display:grid;gap:9px;margin-bottom:12px}.exercise-option{display:flex;gap:12px;align-items:flex-start;width:100%;border:1px solid #e4dce8;border-radius:10px;background:white;padding:12px;text-align:left;line-height:1.8;font-size:13px;color:#65566e}.exercise-option b{display:flex;align-items:center;justify-content:center;flex:0 0 25px;height:25px;border:1px solid #d6c9df;border-radius:7px;font-weight:500}.exercise-option.selected{background:#f0e7f6;border-color:#9475ad}.exercise-option.selected b{background:#846399;color:white}.exercise-option.correct{border-color:#7d9d77;background:#edf4e8}.exercise-option:disabled{opacity:1;cursor:default}.exercise-feedback{background:#f1f4ec;color:#627358;border-radius:10px;padding:13px;font-size:12px;line-height:1.9;white-space:pre-wrap;margin-top:15px}.exercise-confirm{margin-top:10px;min-height:42px}.exercise-fill{width:100%;font-size:16px!important;min-height:44px}.exercise-source{display:flex;gap:15px;margin-top:13px;flex-wrap:wrap}.pdf-page-dialog{width:min(1000px,96vw);max-height:94dvh;padding:20px;border-radius:16px}.pdf-page-toolbar{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin:15px 0}.pdf-page-scroll{overflow:auto;max-height:70dvh;border:1px solid #e4dce8;border-radius:10px;background:#eee9e4}.pdf-page-scroll img{display:block;width:100%;height:auto;max-width:none}.pdf-page-scroll.zoomed img{width:1600px}.pdf-page-toolbar .secondary{font-size:12px;padding:8px 12px}.pdf-page-scroll::-webkit-scrollbar{height:10px;width:10px}@media(max-width:680px){.exercise-card{padding:13px}.exercise-option{font-size:14px;padding:12px 10px}.pdf-page-dialog{padding:12px}.exercise-source .text-button{font-size:12px}.exercise-confirm{width:100%}}

.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.dialog-heading h2{margin:0;font-size:20px}.dialog-heading .icon-button{flex:0 0 32px}

.thread-row{display:flex;align-items:center;gap:2px;border-radius:10px;margin-bottom:5px;min-width:0}.thread-row:hover{background:#ebe6e3}.thread-row.active{background:#e7dfea;color:#695578}.thread-row .thread-item{flex:1;min-width:0;width:auto;margin:0;padding-right:2px}.thread-row .thread-item:hover{background:none}.thread-archive{display:flex;align-items:center;justify-content:center;flex:0 0 30px;width:30px;height:34px;margin-right:4px;color:#a297a5;border-radius:7px}.thread-archive:hover,.thread-archive:focus-visible{background:#e4d8df;color:#956477}.thread-archive:focus-visible{outline:2px solid #9a7daf;outline-offset:1px}.heading-actions .icon-button svg{vertical-align:middle}#mobile-thread-list .thread-archive{width:40px;height:44px;flex-basis:40px}

.app-shell{overflow-anchor:none}

.thread-search{width:100%;min-width:0;margin:8px 0 12px;padding:9px 12px;border:1px solid var(--line,#e5dfeb);border-radius:10px;background:transparent;font:inherit;font-size:13px}.thread-row .thread-item{min-width:0;flex:1}.thread-row .thread-archive{flex:0 0 30px}.practice-actions{flex-wrap:wrap;gap:8px;margin-top:12px}.practice-note{flex-basis:100%;white-space:pre-wrap;background:#f7f3fa;border-radius:10px;padding:12px}.price-form{display:grid;gap:10px}.price-form input{width:100%}#cost-panel,#corrections-panel{margin-top:20px}#practice-settings label,#correction-form label{display:block;margin:16px 0}#practice-settings select,#correction-form textarea{display:block;width:100%;margin-top:8px}#practice-settings input[type=checkbox],#correction-form input[type=checkbox]{width:auto;display:inline}#practice-settings,#restore-dialog,#correction-dialog,#backup-dialog{max-width:560px}#backup-items .review-card{margin:12px 0}@media(max-width:680px){.thread-row .thread-archive{flex-basis:36px;min-width:36px}.practice-actions .text-button{min-height:40px}}
