:root{font-family:'Segoe UI',Arial,sans-serif;color:#243c34;background:#f3f6f5;font-size:16px;--green:#17614b;--line:#dce6e1;--muted:#61746b}*{box-sizing:border-box}body{margin:0}header{display:flex;align-items:center;gap:20px;padding:20px max(24px,calc((100vw - 1240px)/2));background:#fff;border-bottom:1px solid var(--line)}header b{letter-spacing:2px;color:var(--green)}header span{font-weight:600}header small{color:var(--muted);margin-left:auto}header button{margin-left:8px}nav{display:flex;gap:6px;padding:12px max(24px,calc((100vw - 1240px)/2));background:#fff;border-bottom:1px solid var(--line);overflow:auto}nav a{padding:11px 18px;text-decoration:none;color:var(--muted);font-weight:600;border-radius:10px;white-space:nowrap}nav a:hover{background:#f1f6f3}nav a[aria-current]{background:#e4f2eb;color:#14533f}main{max-width:1288px;margin:auto;padding:28px 24px 60px}h1{font-size:32px;letter-spacing:-.7px;line-height:1.2;margin:28px 0 10px}h2{font-size:20px;line-height:1.3;margin:28px 0 12px}p{line-height:1.6;margin:8px 0 18px;color:#4d655a}#freshness,.muted{font-size:14px;color:var(--muted)}#freshness{padding:13px 18px;background:#eaf3ee;border:1px solid #d5e7db;border-radius:12px;margin:0 0 24px;line-height:1.5}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:22px 0}.card,article{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;min-width:0;box-shadow:0 3px 12px #244c3610}.card h2{font-size:14px;color:var(--muted);margin:0;font-weight:600}.metric{font-size:36px;line-height:1.2;font-weight:700;margin:14px 0 0;color:#173f30}article{margin:12px 0}article h2{margin:10px 0}article p:last-child{margin-bottom:0}
.filters{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap;margin:22px 0;padding:18px;background:#fff;border:1px solid var(--line);border-radius:14px}.filters>label{flex:1;min-width:160px}.filters>label:first-child{flex:1.4}label{display:flex;flex-direction:column;gap:7px;font-size:14px;font-weight:600;color:#3c5649}input,select,button{font:inherit;border:1px solid #c9d9cf;border-radius:9px;background:#fff;padding:11px 13px;min-height:44px;color:#28483a}input,select{width:100%;min-width:0;max-width:100%}input::placeholder{color:#7c8b82}select{cursor:pointer}option{color:#28483a;background:#fff}button{cursor:pointer;font-weight:600;white-space:normal;line-height:1.3}button:hover:not(:disabled){background:#eaf4ee;border-color:#7ba18a}button:disabled{opacity:.45;cursor:default}button.primary{background:var(--green);border-color:var(--green);color:#fff}button.primary:hover:not(:disabled){background:#0f4c39}button.link-button{border:0;background:transparent;padding:5px 0;min-height:36px;text-align:left;color:var(--green)}.subject{text-align:left;font-size:18px;font-weight:600;border:0;padding:0;background:transparent;overflow-wrap:anywhere;white-space:normal;min-height:32px;color:#1f4e3b}.subject:hover:not(:disabled){background:transparent;text-decoration:underline}.tag{font-size:12px;font-weight:600;padding:5px 10px;background:#edf4ef;color:#3c6450;border-radius:7px;display:inline-block;margin:0}.pagination{display:flex;gap:10px;align-items:center;justify-content:flex-end;flex-wrap:wrap;margin:14px 0 26px}.pagination .muted{margin-right:auto}.table-wrap{overflow:auto;width:100%;background:#fff;border:1px solid var(--line);border-radius:12px;margin:12px 0;scrollbar-gutter:stable}table{width:100%;border-collapse:collapse;font-size:14px}th{background:#eff5f1;color:#4b6557;font-size:12px;font-weight:700;letter-spacing:.2px}td,th{padding:13px 16px;text-align:left;border-bottom:1px solid #e4ece7;vertical-align:top}td{line-height:1.5;max-width:340px;overflow-wrap:anywhere}td:first-child{white-space:nowrap}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#f7faf8}td button{font-size:13px}td p{font-size:12px;margin:7px 0 0}td.number{text-align:right;font-variant-numeric:tabular-nums}
details{border:1px solid var(--line);border-radius:12px;background:#fff;margin:16px 0;padding:0 18px}summary{cursor:pointer;padding:17px 0;font-weight:600;line-height:1.5;color:#285740}details[open]{padding-bottom:18px}details .filters{padding:0;border:0;margin:4px 0 12px}details summary:hover{color:#126049}.history-toggle{display:flex;flex-direction:row;align-items:center;gap:10px;width:fit-content;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:#fff;cursor:pointer;font-weight:500;margin:10px 0}input[type=checkbox]{appearance:auto;accent-color:var(--green);width:18px;height:18px;min-height:18px;padding:0;margin:0;flex:0 0 18px}dialog{border:1px solid var(--line);border-radius:18px;width:min(850px,94vw);max-height:90vh;padding:28px;box-shadow:0 20px 80px #102b3240}dialog::backdrop{background:#142b24a0}#close{float:right;margin-left:16px}dialog h2{margin:8px 0 20px}dialog p,dialog div{overflow-wrap:anywhere}dialog form{display:grid;gap:16px}pre{white-space:pre-wrap;font:inherit;line-height:1.7}.body{line-height:1.7;overflow:auto;border-top:1px solid var(--line);padding-top:18px}.body td{white-space:normal}.body p{color:inherit}.calendar{display:grid;grid-template-columns:repeat(7,minmax(115px,1fr));gap:6px;min-width:820px;padding:12px}.day{background:#fff;border:1px solid var(--line);border-radius:9px;min-height:115px;padding:9px;font-size:13px;color:var(--muted)}.day button{display:block;width:100%;text-align:left;padding:7px;font-size:12px;margin-top:7px;overflow-wrap:anywhere;background:#eaf5ed;border-color:#d3e8db;color:#24573d}.outside{opacity:.5}.week{text-align:center;font-size:12px;font-weight:600;padding:10px}.empty{padding:24px;background:#fff;border:1px dashed var(--line);border-radius:12px;color:var(--muted)}:focus-visible{outline:3px solid #a7cdb9;outline-offset:3px}.login-wrap{max-width:560px;margin:48px auto;padding:16px}.login-wrap form{display:grid;gap:18px}.login-wrap h1{margin-top:0}.login-wrap button{background:var(--green);color:white}
@media(max-width:700px){header{gap:10px;padding:16px}header small{display:none}header button{margin-left:auto}nav{padding:10px 16px;gap:4px}nav a{padding:10px 12px;font-size:14px}main{padding:20px 16px 40px}h1{font-size:27px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.card{padding:16px}.metric{font-size:30px}.filters{padding:14px;gap:12px}.filters>label{min-width:140px}.filters>button{width:100%}td,th{padding:11px 12px}dialog{padding:20px}.calendar{min-width:700px}.pagination button{padding:10px}.history-toggle{width:auto}header span{font-size:14px}}@media(max-width:380px){header span{display:none}.grid{grid-template-columns:1fr}.filters>label{flex-basis:100%}}
@media(max-width:700px){nav{flex-wrap:wrap;overflow:visible}.filters>label:first-child{flex-basis:100%}}

.action-bar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0 0 20px}.action-bar span{font-size:14px;color:var(--muted);max-width:720px}.day.today{background:#e6f5ed;border:2px solid var(--green);color:#153e2e;box-shadow:0 0 0 2px #17614b12}.today-label{display:inline-block;background:var(--green);color:white;border-radius:5px;padding:2px 6px;margin-right:7px;font-weight:700}
.followup-updates{margin:24px 0 32px}.followup-panel{border-left:4px solid var(--green)}.followup-panel.stalled{border-left-color:#a57823}.followup-panel h3{margin:0 0 14px;font-size:18px;line-height:1.4}.followup-panel table{min-width:850px}.followup-panel .muted:last-child{margin-bottom:0}

.practice-table{min-width:1350px}.practice-table td,.practice-table th{min-width:100px}.practice-table td:nth-child(3){min-width:155px}.practice-table td:nth-child(5){min-width:160px}.practice-table td:nth-child(6){min-width:155px}.practice-table td.practice-actions{min-width:200px}.practice-actions button{display:block;width:100%;margin-bottom:9px}textarea{font:inherit;padding:12px;border:1px solid var(--line);border-radius:9px;width:100%;resize:vertical;color:inherit;background:#fff}

.request-status{min-width:210px;display:grid;gap:10px}.request-status label{font-weight:500}.request-status button{width:100%}
