:root{font-family:system-ui,-apple-system,sans-serif;color:#233443;background:#f3f6f8;line-height:1.55;font-size:15px}*{box-sizing:border-box}body{margin:0}header{background:#fff;border-bottom:1px solid #dbe3e9;padding:18px 4vw;display:flex;justify-content:space-between;align-items:center;gap:15px}.brand{font-size:24px;font-weight:750;color:#176c70}.subtitle{margin-left:18px;color:#657687}nav,.actions{display:flex;gap:10px;align-items:center}main{max-width:1550px;margin:auto;padding:28px 4vw;min-height:80vh}h1{font-size:28px;margin:0 0 6px}h2{font-size:20px;margin-top:0}h3{font-size:16px}p,small{color:#637481}button,.button{font:inherit;border:1px solid #cbd7df;background:#fff;color:#233443;padding:9px 14px;border-radius:7px;cursor:pointer;text-decoration:none;display:inline-block}button:hover,.button:hover{border-color:#176c70;background:#f0f8f7}.primary{background:#176c70;color:white;border-color:#176c70}.primary:hover{background:#115256;color:white}button:disabled{opacity:.5;cursor:wait}input,select,textarea{font:inherit;width:100%;padding:10px;border:1px solid #bccbd4;border-radius:6px;color:inherit;background:white}label{display:block;margin:13px 0;font-weight:550}label input,label textarea,label select{display:block;margin-top:5px;font-weight:400}.card{background:white;border:1px solid #dce5eb;padding:24px;border-radius:12px;margin-bottom:18px;box-shadow:0 2px 4px #23344304}.narrow{max-width:440px;margin:55px auto}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.workspace{display:grid;grid-template-columns:310px minmax(0,1fr);gap:24px}aside{align-self:start;position:sticky;top:15px}.case-row{display:block;width:100%;text-align:left;margin:8px 0}.case-row small{display:block}.case-row.active{background:#e6f3f1;border-color:#176c70}.source{white-space:pre-wrap;overflow-wrap:anywhere;font-family:Georgia,serif;font-size:17px;line-height:1.85;padding:20px;background:#fafcfd;border:1px solid #e1e8ed;border-radius:8px;max-height:650px;overflow:auto}.source mark{background:#fff0b3;cursor:pointer}.annotation{border-left:3px solid #d4a52d;background:#fffaf0;padding:12px;margin:12px 0}.annotation blockquote{margin:6px 0;white-space:pre-wrap}.annotation button{font-size:13px}details{margin:15px 0}summary{cursor:pointer;font-weight:650}.pager{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:20px}.pager button{padding:5px 8px}.tag{font-size:12px;background:#e7f3f1;color:#176c70;border-radius:5px;padding:3px 7px}.assignment{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid #e1e8ed;padding:12px 0}.assignment label{flex:1;margin:0}.assignment input[type=checkbox]{display:inline;width:auto;margin-right:12px}dialog{border:1px solid #cbd7df;border-radius:12px;padding:25px;width:min(580px,94vw);max-height:90vh}dialog::backdrop{background:#142f3c77}dialog blockquote{max-height:200px;overflow:auto;background:#f3f6f8;padding:12px;margin:0;white-space:pre-wrap}#notice:not(:empty){padding:12px 18px;background:#fff4da;border:1px solid #e2c483;border-radius:8px;margin-bottom:20px}footer{text-align:center;padding:28px;color:#71808c;font-size:13px}.hint{font-size:14px;color:#176c70}.memo-layout{border-top:1px solid #dce5eb;margin-top:25px;padding-top:20px}small{display:block}.select-action{margin:10px 0}.code-field{margin-bottom:14px}[hidden]{display:none!important}@media(max-width:900px){.workspace{grid-template-columns:1fr}aside{position:static}.heading,header{align-items:flex-start;flex-direction:column}.subtitle{margin-left:10px}main{padding:20px}.source{max-height:500px}.grid{grid-template-columns:1fr}nav{flex-wrap:wrap}}
