.mp-page{--mp-green:#007c3e;--mp-ink:#142435;--mp-line:#d8e2ec;background:#eef7f2;border-radius:12px;padding:22px 18px 26px;color:var(--mp-ink);font-family:"Segoe UI",Arial,sans-serif}
.mp-header{display:grid;grid-template-columns:minmax(215px,.3fr) 1fr;gap:25px;align-items:start;margin-bottom:24px}
.mp-header>div>p{font-size:13px;font-weight:800;letter-spacing:.8px;color:var(--mp-green);margin:0 0 8px}
.mp-header h1{font-size:clamp(34px,3vw,50px);font-weight:800;line-height:1.15;letter-spacing:-.7px;margin:0;color:var(--mp-ink)}
.mp-header>nav{display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px;padding-top:12px}
.mp-button{display:inline-flex;justify-content:center;align-items:center;gap:7px;min-height:42px;padding:10px 14px;border:1px solid var(--mp-green);border-radius:7px;background:transparent;color:var(--mp-green);font:500 15px/1.3 "Segoe UI",Arial,sans-serif;cursor:pointer;text-decoration:none}
.mp-button svg{flex-shrink:0}.mp-button:hover{background:#e0f1e7}.mp-button.mp-solid{color:#fff;background:var(--mp-green);font-weight:600}.mp-button.mp-solid:hover{background:#006832}.mp-button:disabled{cursor:default;opacity:.45}
.mp-new-row{flex-basis:100%}.mp-filter-card{border:1px solid var(--mp-line);border-radius:14px;background:white;padding:24px;margin-bottom:20px}
.mp-filter-grid{display:grid;grid-template-columns:.9fr 1.4fr 1.4fr .9fr .9fr;gap:18px;align-items:end}
.mp-page label{font-size:16px;line-height:1.4;color:#173654;font-weight:400;min-width:0}
.mp-filter-card label{display:flex;flex-direction:column;gap:10px}
.mp-page input,.mp-page select{font-family:inherit;font-size:15px;min-width:0;color:#18324a;border:1px solid #d5dde7;border-radius:6px;background:white;padding:10px 12px;min-height:43px;box-shadow:inset 0 1px 3px #183b6010}
.mp-filter-card .mp-button{min-height:43px}.mp-advanced{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:18px;margin-top:22px;padding-top:22px;border-top:1px solid var(--mp-line)}
.mp-advanced[hidden]{display:none}.mp-directory{border:1px solid var(--mp-line);border-radius:14px;background:#fff;overflow:hidden}
.mp-directory>header{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:19px 23px;border-bottom:1px solid var(--mp-line)}
.mp-directory h2{font-size:20px;font-weight:800;color:var(--mp-ink);margin:0}.mp-count{display:inline-flex;padding:5px 10px;background:var(--mp-green);color:#fff;border-radius:7px;font-size:13px;font-weight:700;white-space:nowrap}
.mp-table-tools{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:12px 18px 7px}.mp-table-tools label{display:flex;align-items:center;gap:10px;font-size:15px}.mp-table-tools input{width:220px}.mp-table-tools select{padding:6px 12px;min-height:37px}
.mp-table-scroll{overflow:auto;overscroll-behavior-x:contain}.mp-page table{width:100%;min-width:1050px;border-collapse:collapse;text-align:left;table-layout:auto}
.mp-page th{font-family:inherit;color:#183754;background:#fff;font-size:15px;letter-spacing:0;text-transform:none;font-weight:800;padding:16px 14px;border-top:0;border-bottom:1px solid #cbdbe9;white-space:nowrap}
.mp-page th button{display:flex;align-items:center;justify-content:space-between;gap:8px;color:inherit;background:none;border:0;font:inherit;font-weight:800;padding:0;width:100%;cursor:pointer}.mp-page th button span{font-size:17px;color:#a1afbb}.mp-page th[aria-sort=ascending] button span,.mp-page th[aria-sort=descending] button span{color:#5d788f}
.mp-page td{font-size:15px;line-height:1.65;padding:18px 14px;border-bottom:1px solid var(--mp-line);vertical-align:middle;color:#162c40}
.mp-page td strong{font-size:15px;font-weight:700;color:#102436}.mp-page td small{font-size:13px;line-height:1.5;color:#526a80;margin-top:3px;display:block}
.mp-page tbody tr:nth-child(even){background:#fbfdfc}.mp-page tbody tr:hover{background:#f0f8f3}.mp-page tr:last-child td{border-bottom:0}
.mp-date{width:95px;min-width:88px;overflow-wrap:normal}.mp-moment{display:inline-block;background:#e6f5ed;color:#154833;border-radius:28px;padding:8px 12px;font-size:12px;font-weight:750;line-height:1.45;min-width:125px;max-width:150px}
.mp-teacher{min-width:180px;max-width:250px;overflow-wrap:anywhere}.mp-teacher strong{text-transform:uppercase}.mp-instrument{min-width:215px;max-width:320px}.mp-level{min-width:115px}.mp-achievement{min-width:104px}
.mp-state{display:inline-flex;align-items:center;font-size:11px;font-weight:750;line-height:1.4;padding:4px 8px;border-radius:6px;white-space:nowrap;background:#fff3d9;color:#735319}.mp-state.complete{background:#148854;color:white}.mp-state.observed{background:#fee8e8;color:#a92c3c}
.mp-row-actions{display:flex;gap:5px;align-items:center;white-space:nowrap}.mp-icon-button{display:inline-flex;align-items:center;justify-content:center;width:33px;height:34px;flex-shrink:0;border:1px solid #159653;color:#008845;background:#fff;border-radius:5px;text-decoration:none;cursor:pointer}.mp-icon-button:hover{background:#edf8f1}.mp-icon-button.mp-pdf,.mp-icon-button.mp-delete{color:#e3364c;border-color:#ed6272}.mp-icon-button.mp-pdf:hover,.mp-icon-button.mp-delete:hover{background:#fff0f1}.mp-icon-button:disabled{color:#a9aeb5;border-color:#d2d8df;cursor:not-allowed;background:#f8fafb}
.mp-page .mp-empty{text-align:center;padding:40px 20px;color:#536e81}.mp-directory>footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:17px 20px;border-top:1px solid var(--mp-line);font-size:13px;color:#4a6275}.mp-directory>footer nav{display:flex;align-items:center;gap:12px}.mp-directory>footer .mp-button{font-size:12px;min-height:34px;padding:7px 11px}
.mp-page :is(button,a,input,select,.mp-table-scroll):focus-visible{outline:3px solid #94ccaa;outline-offset:2px}
@media(max-width:1200px){.mp-header{grid-template-columns:215px 1fr;gap:20px}.mp-header .mp-button{font-size:13px;padding:10px}.mp-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mp-filter-grid>.mp-button{grid-column:2}.mp-advanced{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.mp-page{padding:18px 12px}.mp-header{grid-template-columns:1fr;gap:12px}.mp-header h1{font-size:35px}.mp-header h1 br{display:none}.mp-header h1 br:after{content:' '}.mp-header nav{padding:0}.mp-header .mp-button{font-size:13px}.mp-filter-card{padding:17px}.mp-filter-grid,.mp-advanced{grid-template-columns:1fr;gap:15px}.mp-filter-grid>.mp-button{grid-column:auto}.mp-table-tools{align-items:stretch;flex-direction:column;gap:12px;padding:15px}.mp-table-tools input{flex:1;width:100%}.mp-directory>header{padding:18px 15px}.mp-directory h2{font-size:18px}.mp-directory>footer{flex-direction:column;align-items:flex-start;padding:15px}.mp-page label{font-size:15px}.mp-directory>footer nav{flex-wrap:wrap}.mp-table-scroll:focus-visible{outline-offset:-3px}}
