@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Instrument+Serif&display=swap";:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#152f26;--muted:#51635a;--paper:#f8f4e9;--white:#fffef9;--green:#18543f;--line:#d1dbcd;--mint:#e8f0e5;color:var(--ink);background:var(--paper);font:1rem/1.5 DM Sans,sans-serif}*{box-sizing:border-box}body{min-width:280px;margin:0}:focus-visible{outline-offset:3px;outline:3px solid #98621b}button,input,select{font:inherit;border:1px solid #a5b9a8;border-radius:9px;min-height:44px;padding:8px 12px}input,select{background:var(--white);color:var(--ink);width:100%}button{background:var(--green);color:#fff;border-color:var(--green);cursor:pointer;font-weight:700}button:hover{background:#103c2c}button:disabled{opacity:.6;cursor:wait}button.secondary{background:var(--white);color:var(--green);border-color:#a5b9a8}button.quiet{color:var(--green);background:0 0;border-color:#0000}button.secondary:hover,button.quiet:hover{background:var(--mint)}label{gap:5px;min-width:0;font-size:.875rem;font-weight:700;display:grid}h1,h2,p{margin:0}h1,h2{font:400 3.5rem/1 Instrument Serif,Georgia,serif}h2{font-size:2rem}.error{color:#8d2c1f;font-size:.875rem}.muted{color:var(--muted);overflow-wrap:anywhere;font-size:.875rem}.mark{background:var(--green);color:#fff;border-radius:50%;flex:0 0 36px;place-items:center;width:36px;height:36px;font:23px/1 Instrument Serif,Georgia,serif;display:grid}.signin{gap:16px;max-width:420px;margin:12vh auto 0;padding:24px;display:grid}.signin form{gap:12px;display:grid}.loading{padding:24px}.topbar{background:var(--white);border-bottom:1px solid var(--line);min-height:64px;padding:10px max(16px,50% - 580px)}.topbar,.topbar>div:first-child{justify-content:space-between;align-items:center;gap:10px;display:flex}.portal{gap:18px;max-width:1192px;margin:auto;padding:32px 16px 56px;display:grid}.card{background:var(--white);border:1px solid var(--line);border-radius:16px;gap:12px;min-width:0;padding:20px;display:grid}.grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr));gap:16px;display:grid}.fields{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.fields label,.fields>div{flex:185px}.fields .error{flex-basis:100%}.picker{max-width:400px}.totals{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0;display:grid}.totals div{background:var(--mint);border-radius:9px;padding:8px}.totals dt{color:var(--muted);font-size:.75rem}.totals dd{margin:0;font-size:1.25rem;font-weight:700}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.875rem}th,td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:10px}th{color:var(--muted);font-size:.8rem}.status{background:var(--mint);white-space:nowrap;border-radius:5px;padding:1px 6px;font-size:.75rem;font-weight:700;display:inline-block}details{margin-top:5px}summary{cursor:pointer;color:var(--green)}.chat{border-inline:1px solid var(--line);background:var(--white);flex-direction:column;max-width:800px;height:100dvh;margin:auto;display:flex}.chat-header{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:10px 20px;display:flex}.chat-header h1{margin-right:auto;font:700 1rem/1.4 DM Sans,sans-serif}.assignment{padding:6px 20px}.chat-meta{color:var(--muted);flex-wrap:wrap;justify-content:space-between;padding:10px 20px 0;font-size:.8rem;font-weight:700;display:flex}progress{width:100%;height:6px;accent-color:var(--green);margin-top:6px;display:block}.transcript{flex-direction:column;flex:1;gap:12px;min-height:0;padding:20px;display:flex;overflow:auto}.message,.recap{flex:none}.message{align-self:flex-start;max-width:min(92%,54ch)}.message.you{align-self:flex-end}.message span{color:var(--muted);margin:0 4px 4px;font-size:.75rem;font-weight:700;display:block}.message.you span{text-align:right}.message p{background:var(--mint);border-radius:4px 15px 15px;padding:10px 14px}.message.you p{background:var(--green);color:#fff;border-radius:15px 4px 15px 15px}.chat-actions{padding:10px 20px max(14px, env(safe-area-inset-bottom));border-top:1px solid var(--line);gap:8px;display:grid}.chat-actions>button{justify-self:start}.choices{flex-wrap:wrap;gap:6px;display:flex}.sharing{color:var(--muted);font-size:.75rem}.recap{border:1px solid var(--line);background:var(--mint);border-radius:15px;padding:16px}.recap dl{margin:12px 0}.recap dl div{justify-content:space-between;gap:12px;padding:4px 0;display:flex}.recap dd{white-space:nowrap;margin:0;font-weight:700}@media (width<=600px){.chat-header,.assignment,.chat-meta,.transcript,.chat-actions{padding-inline:12px}.portal{padding-top:22px}.portal h1{font-size:2.75rem}.card{padding:12px}.totals{grid-template-columns:repeat(2,minmax(0,1fr))}}
