:root{font-family:Inter,Arial,sans-serif;color:#203a36;background:#f5f7f4;font-size:14px;--green:#137968;--line:#e2e8e3}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:default}a{color:inherit;text-decoration:none}h1,h2,h3,h4,p{margin-top:0}h2{font-size:25px;letter-spacing:-.7px}h3{font-size:18px}small{color:#74827b;display:block;font-size:12px;line-height:1.5}.hidden{display:none!important}.brand{display:flex;align-items:center;gap:10px;font-size:21px;font-weight:700;letter-spacing:-.7px}.brand span:not(.mark){font-weight:400}.mark{background:var(--green);color:white;border-radius:10px;padding:8px 13px;font-size:23px}.login{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr}.login-story{padding:60px 10%;background:#e9f1e9;display:flex;flex-direction:column;justify-content:center}.login-story .brand{margin-bottom:70px}.eyebrow{letter-spacing:2px;font-size:11px;color:#588273;font-weight:bold}.login-story h1{font-size:clamp(36px,4vw,60px);line-height:1.13;letter-spacing:-2px;margin:22px 0}.login-story em{font-style:normal;color:var(--green)}.login-story p{line-height:1.7;color:#587269;max-width:350px}.story-note{font-size:12px;margin-top:60px;color:#638375}.login-form{width:min(430px,90%);margin:auto;padding:45px 20px}.login-form h2{margin:20px 0 12px}.login-form p{color:#77837d;line-height:1.6}.badge{background:#e9f3ee;color:#257664;font-size:11px;border-radius:6px;padding:9px 12px;font-weight:bold;display:inline-block}.button{border:0;background:var(--green);color:white;border-radius:7px;padding:11px 17px;font-weight:600}.outline{background:white;border:1px solid var(--line);color:#486459}.login-form .button{width:100%;margin:10px 0 20px}label{display:block;font-size:12px;font-weight:600;margin:17px 0}input,select,textarea{border:1px solid #dce4de;border-radius:6px;background:white;padding:11px;color:#30463d;width:100%;margin-top:7px;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 2px #13796812}.app{display:flex;height:100vh}.rail{width:240px;flex-shrink:0;background:#fff;border-right:1px solid var(--line);padding:28px 19px;display:flex;flex-direction:column}.rail .brand{font-size:18px}.company{display:flex;align-items:center;gap:10px;padding:25px 0;border-bottom:1px solid var(--line);margin-bottom:25px}.company b{font-size:12px}.avatar{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:11px;background:#e8f0e9;color:#39816c;font-weight:bold;flex-shrink:0}.navcaption{font-size:10px;letter-spacing:1.5px;color:#8d9b91;margin:0 12px 15px}.nav{display:flex;align-items:center;gap:15px;border:0;background:none;color:#6a7b70;padding:14px;text-align:left;border-radius:8px;margin-bottom:5px}.nav.active{color:var(--green);background:#eaf3ec;font-weight:bold}.rail-bottom{margin-top:auto}.user{display:flex;gap:10px;align-items:center;margin:20px 0}.user b{font-size:12px}.link{background:none;border:0;color:var(--green);padding:5px;font-size:12px}.body{flex:1;min-width:0;display:flex;flex-direction:column}header{height:94px;display:flex;align-items:center;justify-content:space-between;padding:22px 32px;background:#fff;border-bottom:1px solid var(--line)}header h2{margin:5px 0 0}.notice{font-size:11px;padding:9px 32px;color:#6c8275;background:#f0f5ef;border-bottom:1px solid var(--line)}.inbox{display:flex;flex:1;min-height:0}.inbox-list{width:320px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;flex-shrink:0}.listhead{display:flex;justify-content:space-between;align-items:center;padding:20px 20px 10px}.listhead h3{font-size:15px;margin:0}.listhead h3 span{font-size:11px;background:#edf2ed;padding:3px 6px;border-radius:5px}.icon{border:1px solid var(--line);background:white;border-radius:7px;padding:4px 11px;font-size:22px;color:#678272}.search{width:calc(100% - 40px);margin:10px 20px;background:#f7f9f6;font-size:12px}.tabs{display:flex;padding:8px 15px 15px;gap:4px}.tabs button{font-size:11px;border:0;border-radius:6px;background:none;padding:8px;color:#75847a}.tabs .selected{background:#eaf3ee;color:var(--green);font-weight:bold}.list{overflow:auto;flex:1}.conversation{width:100%;border:0;border-top:1px solid #f0f3ef;background:#fff;display:flex;text-align:left;align-items:center;padding:19px 18px;gap:12px}.conversation.chosen{background:#edf5ef;border-left:3px solid var(--green)}.conversation b{font-size:13px}.conversation small{font-size:10px;margin-top:3px}.status-dot{margin-left:auto;color:#549879;font-size:12px}.chat{flex:1;min-width:0;display:flex;flex-direction:column;background:#f7f9f5}.empty{margin:auto;text-align:center;padding:25px;color:#73877a}.empty h3{color:#486557}.empty-icon{font-size:70px;color:#aacbb8;margin-bottom:15px}.chat-body{height:100%;display:flex;flex-direction:column}.chathead{display:flex;gap:12px;align-items:center;padding:18px 25px;background:#fff;border-bottom:1px solid var(--line)}.chathead .button{margin-left:auto}.chathead #back{display:none}.assignment{display:flex;gap:20px;align-items:center;background:#fff;padding:0 25px;border-bottom:1px solid var(--line)}.assignment label{margin:8px 0;display:flex;align-items:center;gap:10px;font-weight:400;font-size:11px}.assignment select{width:auto;margin:0;border:0;padding:7px;font-size:11px}.assignment .link{margin-left:auto}.messages{flex:1;overflow:auto;padding:25px 30px;display:flex;flex-direction:column;gap:16px}.history-caption{text-align:center;color:#9aaa9d;font-size:10px}.bubble{background:white;border:1px solid #e6ebe3;border-radius:0 12px 12px;max-width:80%;align-self:flex-start;padding:13px 17px;min-width:160px}.bubble.out{background:#e3f1e7;align-self:flex-end;border-radius:12px 0 12px 12px}.bubble.note{background:#fff4d6;border-color:#f0e7c9;align-self:center}.bubble p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.6;margin:6px 0}.bubble small{font-size:10px}.composer{padding:15px 25px;background:white;border-top:1px solid var(--line)}.composerbar{display:flex;align-items:center;justify-content:space-between;gap:10px}.composerbar select{border:0;font-size:11px;width:auto;margin:0;padding:3px}.composerbar span{font-size:10px;color:#78937e}.composeinput{display:flex;gap:10px;margin:10px 0}.composeinput textarea{resize:none;height:66px;margin:0;background:#fafbf8}.send{border:0;background:var(--green);color:white;border-radius:8px;width:48px;flex-shrink:0}.composerfoot{font-size:10px;color:#88988c}.other{padding:30px;overflow:auto;flex:1}.sectionhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.sectionhead p{color:#7b8b7e;font-size:12px}.card{padding:25px;background:white;border:1px solid var(--line);border-radius:10px;margin-bottom:20px}.card p{font-size:12px;color:#728577;line-height:1.7}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.settings-grid .button{margin-right:5px;margin-top:10px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:20px 0}.stats strong{display:block;font-size:32px;margin-top:12px;font-weight:500}table{width:100%;border-collapse:collapse;background:white;font-size:12px}th,td{text-align:left;padding:16px;border-bottom:1px solid var(--line)}th{font-weight:500;color:#869489;background:#f9faf7}.muted{color:#819287;font-size:12px;line-height:1.5}.error{color:#b13d38!important;font-size:12px}.errorbar{padding:12px 30px;background:#fff0ee;color:#9e3830;font-size:12px}.checkbox{display:flex;gap:10px;align-items:center}.checkbox input{width:auto;margin:0}dialog{border:1px solid var(--line);border-radius:12px;padding:28px;width:min(470px,90vw);box-shadow:0 25px 100px #163d3222}dialog::backdrop{background:#17372b55}.modalhead{display:flex;align-items:center;justify-content:space-between}.modalhead h3{margin:0}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px;color:#51745e}#templateOptions label{margin:8px 0}#templateLanguage{width:110px;margin-left:10px;padding:6px}
@media(max-width:1100px){.rail{width:190px;padding:22px 12px}.inbox-list{width:265px}.assignment{gap:5px;padding:0 12px}.messages{padding:20px}.settings-grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.login{grid-template-columns:1fr}.login-story{padding:30px;min-height:280px}.login-story .brand{margin-bottom:20px}.login-story h1{font-size:34px}.story-note{margin-top:10px}.login-form{padding:35px 20px}.app{height:100dvh}.rail{width:65px;padding:20px 8px}.rail .brand div,.company,.navcaption,.nav span,.rail-bottom small,.user div,.user .avatar{display:none}.rail .brand{justify-content:center}.rail .mark{padding:6px 10px;font-size:20px}.nav{padding:15px 12px;font-size:20px;margin:8px 0}.rail-bottom .link{font-size:10px}.inbox-list{width:100%}.chat{display:none}.chat-open .inbox-list{display:none}.chat-open .chat{display:flex}.chathead #back{display:block}.chathead{padding:12px;gap:8px}.chathead .button{font-size:10px;padding:8px}.assignment{flex-wrap:wrap;gap:0}.assignment label{font-size:10px}.assignment select{max-width:120px}.messages{padding:15px}.bubble{max-width:92%}.composer{padding:12px}.composerbar{flex-wrap:wrap}.other{padding:15px;overflow:auto}.other table{min-width:500px}header{padding:18px 15px;height:80px}header h2{font-size:21px}.notice{padding:8px 15px}.badge{font-size:9px;padding:7px}.sectionhead{align-items:flex-start;gap:8px}.stats{gap:8px}.card{padding:18px}.settings-grid{gap:10px}}
.setup{padding:45px 20px;background:#edf3ec;min-height:100vh}.setup-card{max-width:620px;margin:auto;background:white;border:1px solid var(--line);border-radius:14px;padding:35px}.setup-card .brand{margin-bottom:28px}.setup-card h1{font-size:30px;letter-spacing:-1px;margin:25px 0}.setup-card p{line-height:1.7;color:#748578}.setup-card h3{margin-top:30px}.setup-card>.button{display:inline-block}
