:root{--ink:#193d36;--teal:#246b5b;--muted:#6f7d75;--cream:#f5f5ee;--border:#dce2d9;--white:#fff;--soft:#eaf0e8}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:"Microsoft YaHei","PingFang SC",sans-serif;font-size:15px;line-height:1.75}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;border:0;border-radius:10px;padding:10px 18px;background:var(--teal);color:#fff;font-weight:600}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible{outline:3px solid #98bd7b;outline-offset:4px}.secondary{background:transparent;color:var(--teal);border:1px solid var(--border);font-weight:400}.layout{display:grid;grid-template-columns:282px 1fr;min-height:100vh}.sidebar{background:#e9eee5;padding:36px 29px;display:flex;flex-direction:column;gap:8px;border-right:1px solid var(--border)}.brand{font-size:19px;letter-spacing:-.6px;color:var(--ink);text-decoration:none;font-weight:700}.brand span{font-weight:400}.course-tag{font-size:12px;color:var(--teal);margin-top:40px;letter-spacing:2px}h1{font-size:34px;line-height:1.45;letter-spacing:2px;margin:8px 0 0;font-weight:600}.sidebar-note{font-size:13px;color:var(--muted);margin:8px 0 30px}.book-card{border-top:1px solid #cbd4c7;padding-top:24px}.eyebrow{font-size:12px;letter-spacing:1.5px;color:var(--teal)}.book-card h2{font-size:21px;margin:8px 0}.book-card p{color:var(--muted);font-size:12px;margin:6px 0}.status{font-size:12px;display:inline-block;background:#d9e8d5;padding:4px 9px;border-radius:20px;margin-top:12px}.answer-guide{margin-top:28px;border-top:1px solid #cbd4c7;padding-top:23px}.answer-guide h2{font-size:12px;font-weight:400;margin:0 0 15px;color:var(--muted)}.answer-guide p{font-size:13px;margin:10px 0}.answer-guide b{font-size:11px;margin-right:12px;color:#6b927f;font-weight:400}.teacher-link{color:var(--muted);font-size:12px;text-decoration:none;margin-top:auto;padding-top:35px}.main{max-width:1100px;width:100%;padding:0 48px 22px;margin:0 auto}.topbar{padding:24px 0;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);gap:12px}.topbar>span{font-size:12px;color:var(--muted)}.topbar button{font-size:12px;padding:7px 12px}.welcome{padding:65px 0 25px;max-width:780px;margin:auto}.welcome h2{font-size:34px;letter-spacing:.5px;font-weight:500;line-height:1.4;margin:14px 0}.welcome>p{font-size:14px;color:var(--muted);margin:0 0 32px}.examples{display:grid;grid-template-columns:1fr 1fr;gap:13px}.examples button{text-align:left;background:#fafbf7;border:1px solid var(--border);color:var(--ink);padding:18px;font-size:13px;font-weight:400;position:relative;transition:background .15s}.examples button:hover{background:#eaf0e6}.examples span{display:block;color:var(--teal);font-size:10px;letter-spacing:1px;margin-bottom:8px}.examples b{position:absolute;right:16px;top:16px;font-weight:400;color:#729a85}.chat-box{max-width:780px;margin:24px auto}.message{margin:24px 0}.message.user{margin-left:13%;padding:14px 20px;background:#e4ebdf;border-radius:15px 15px 2px 15px;white-space:pre-wrap;overflow-wrap:anywhere}.message.assistant{padding:20px 0;border-bottom:1px solid var(--border)}.message-label{font-size:11px;color:var(--teal);letter-spacing:1px;margin-bottom:12px}.answer-body{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.95;font-size:15px}.citation{display:inline;padding:0 3px;background:#e6eee0;color:var(--teal);font-size:12px;border-radius:3px;text-decoration:none}.sources{margin-top:18px;font-size:12px}.sources details{border-top:1px solid var(--border);padding:10px 0}.sources summary{cursor:pointer;color:var(--teal)}.sources p{color:var(--muted);margin:10px 0;white-space:pre-wrap}.sources a{color:var(--teal)}.composer-wrap{max-width:780px;margin:28px auto 0}.composer{background:#fff;border:1px solid #ced8c9;border-radius:16px;box-shadow:0 4px 16px #193d3606;padding:16px}.composer:focus-within{border-color:var(--teal)}textarea{resize:vertical;border:0;outline:none;background:transparent;color:var(--ink);width:100%;padding:0;line-height:1.7;min-height:70px}textarea::placeholder{color:#929b91}.composer-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:10px}.composer-bottom>span{font-size:11px;color:var(--muted)}.composer-bottom button{white-space:nowrap;min-width:94px}.fine-print{font-size:10px;line-height:1.7;text-align:center;color:var(--muted);margin:10px 0 0}.error{font-size:13px;color:#9a3b34}.hidden{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.admin-shell{max-width:1150px;margin:auto;padding:30px}.admin-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border);padding-bottom:20px}.admin-header h1{font-size:27px;letter-spacing:0}.admin-header a{color:var(--teal)}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.admin-section{margin-top:24px;background:#fff;border:1px solid var(--border);border-radius:12px;padding:24px}.admin-section h2{font-size:18px;margin:0 0 15px}.admin-section p,.admin-section label{font-size:13px;color:var(--muted)}.admin-form{display:flex;flex-direction:column;gap:12px}input,select{width:100%;border:1px solid var(--border);border-radius:7px;background:#fff;padding:10px;color:var(--ink)}.admin-section textarea{padding:10px;border:1px solid var(--border);border-radius:7px;font-size:13px;margin:8px 0}.check-row{display:flex;align-items:center;gap:8px}.check-row input{width:auto}.item{padding:15px 0;border-bottom:1px solid var(--border);font-size:13px}.item p{margin:4px 0}.item button{font-size:12px;padding:4px 9px;margin:8px 6px 0 0}.feedback{font-size:13px;color:var(--teal);min-height:24px}.actions{display:flex;gap:12px;align-items:center}.muted{color:var(--muted)}@media(max-width:1000px){.layout{grid-template-columns:235px 1fr}.sidebar{padding:28px 23px}.main{padding:0 28px 24px}.welcome h2{font-size:29px}}@media(max-width:720px){.layout{display:block}.sidebar{padding:20px 22px;border-right:0;border-bottom:1px solid var(--border);display:block}.sidebar h1{font-size:23px;letter-spacing:0;margin:10px 0}.sidebar h1 br{display:none}.course-tag{margin:10px 0 0}.sidebar-note,.answer-guide,.book-card .eyebrow,.book-card h2,.book-card p{display:none}.book-card{border:0;padding:0;display:inline}.status{margin:0}.teacher-link{float:right;padding:4px 0;margin:0}.main{padding:0 20px 20px}.topbar{padding:17px 0}.welcome{padding-top:36px}.welcome h2{font-size:27px}.examples{gap:9px}.examples button{padding:14px 12px;font-size:12px}.examples b{right:10px;top:12px}.composer-bottom>span{max-width:190px}.admin-shell{padding:18px}.admin-grid{display:block}.answer-body{font-size:14px}}
