
        :root { --green-900:#123b2f; --green-800:#1b4d3e; --green-700:#28634e; --green-100:#e8f1e9; --sage:#acc9ac; --gold:#ffcc00; --ink:#20342a; --muted:#66756c; --line:#dce7df; --surface:#fff; --canvas:#f5f8f5; }
        * { box-sizing:border-box; }
        html { min-width:320px; }
        body { min-height:100vh; margin:0; background:var(--canvas); color:var(--ink); font-family:Inter,Arial,sans-serif; }
        a { color:inherit; }
        .internal-header { background:var(--green-800); border-bottom:4px solid var(--gold); color:#fff; }
        .header-inner,.page,.footer-inner { width:min(1180px,calc(100% - 48px)); margin:0 auto; }
        .header-inner { min-height:88px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
        .brand { display:inline-flex; align-items:center; text-decoration:none; }
        .brand img { width:55px; padding-top:15px; padding-bottom: 15px; height:auto; display:block; }
        .header-tools { display:flex; align-items:center; gap:22px; }
        .profile { display:flex; align-items:center; gap:11px; color:#f4faf5; font-size:13px; }
        .profile-icon { width:36px; height:36px; display:grid; place-items:center; border:1px solid rgb(255 255 255 / 32%); border-radius:50%; color:var(--gold); }
        .profile strong { display:block; margin-top:2px; color:#fff; font-size:14px; }
        .header-link { display:inline-flex; align-items:center; gap:8px; padding:10px 14px; border:1px solid rgb(255 255 255 / 34%); border-radius:4px; color:#fff; font-size:13px; font-weight:600; text-decoration:none; }
        .header-link:hover,.header-link:focus-visible { background:rgb(255 255 255 / 12%); }
        .page { padding:42px 0 68px; }
        .eyebrow { margin:0 0 8px; color:var(--green-700); font-size:12px; font-weight:700; letter-spacing:1.4px; text-transform:uppercase; }
        h1,h2,h3,p { margin-top:0; }
        h1 { margin-bottom:12px; color:var(--green-900); font-family:"Playfair Display",Georgia,serif; font-size:clamp(30px,4vw,46px); line-height:1.1; }
        .intro { max-width:680px; margin-bottom:32px; color:var(--muted); line-height:1.65; }
        .section-heading { display:flex; align-items:end; justify-content:space-between; gap:16px; margin-bottom:16px; }
        .section-heading h2 { margin:0; color:var(--green-900); font-size:19px; }
        .section-heading p { margin:0; color:var(--muted); font-size:13px; }
        .quick-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:38px; }
        .quick-link { min-height:152px; display:flex; flex-direction:column; align-items:flex-start; justify-content:space-between; padding:20px; border:1px solid var(--line); border-radius:5px; background:var(--surface); box-shadow:0 3px 10px rgb(18 59 47 / 4%); text-decoration:none; transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease; }
        .quick-link:hover,.quick-link:focus-visible { border-color:var(--green-700); box-shadow:0 8px 18px rgb(18 59 47 / 10%); transform:translateY(-2px); }
        .quick-icon { width:40px; height:40px; display:grid; place-items:center; border-radius:4px; background:var(--green-100); color:var(--green-800); font-size:17px; }
        .quick-copy { width:100%; margin-top:18px; }
        .quick-copy strong { display:block; margin-bottom:5px; color:var(--green-900); font-size:15px; }
        .quick-copy span { display:block; color:var(--muted); font-size:12px; line-height:1.45; }
        .content-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr); gap:18px; align-items:start; }
        .panel { border:1px solid var(--line); border-radius:5px; background:var(--surface); box-shadow:0 3px 10px rgb(18 59 47 / 4%); }
        .panel + .panel { margin-top:18px; }
        .panel-header { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:19px 22px; border-bottom:1px solid var(--line); }
        .panel-header h2 { margin:0; color:var(--green-900); font-size:17px; }
        .panel-header i { color:var(--green-700); }
        .panel-body { padding:4px 22px; }
        .notice-item,.event-item { display:flex; gap:16px; padding:18px 0; border-bottom:1px solid #edf2ee; }
        .notice-item:last-child,.event-item:last-child { border-bottom:0; }
        .date-box { flex:0 0 48px; height:52px; display:flex; flex-direction:column; align-items:center; justify-content:center; border-radius:4px; background:var(--green-100); color:var(--green-800); font-size:11px; font-weight:700; text-transform:uppercase; }
        .date-box strong { font-size:20px; line-height:1; }
        .item-copy { min-width:0; }
        .item-copy h3 { margin:0 0 6px; color:var(--green-900); font-size:14px; line-height:1.35; }
        .item-copy p { margin:0; color:var(--muted); font-size:12px; line-height:1.55; }
        .item-meta { display:block; margin-top:7px; color:var(--green-700); font-size:11px; font-weight:600; }
        .alert-panel { border-left:4px solid var(--gold); }
        .alert-panel .panel-header { background:#fffdf0; }
        .alert-copy { padding:20px 22px; color:#58675d; font-size:13px; line-height:1.65; }
        .alert-copy strong { display:block; margin-bottom:8px; color:var(--green-900); }
        .internal-footer { padding:22px 0; border-top:1px solid var(--line); background:var(--surface); color:var(--muted); font-size:11px; }
        .footer-inner { display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; }
        @media (max-width:900px) { .quick-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .content-grid { grid-template-columns:1fr; } }
        @media (max-width:600px) { .header-inner,.page,.footer-inner { width:min(100% - 32px,520px); } .header-inner { min-height:auto; padding:18px 0; align-items:flex-start; flex-direction:column; } .header-tools { width:100%; justify-content:space-between; gap:10px; } .profile { min-width:0; } .profile > div:last-child { max-width:150px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; } .header-link { padding:9px 11px; } .page { padding:32px 0 48px; } .quick-grid { gap:10px; } .quick-link { min-height:145px; padding:15px; } .panel-header,.panel-body,.alert-copy { padding-left:16px; padding-right:16px; } .section-heading { display:block; } .section-heading p { margin-top:5px; } }
    
.internal-nav { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:28px; }
.internal-nav a { padding:10px 13px; border:1px solid var(--line); border-radius:5px; text-decoration:none; background:white; font-size:13px; }
.internal-nav a[aria-current="page"] { background:var(--green-800); color:white; border-color:var(--green-800); }
.breadcrumb { display:flex; gap:10px; margin-bottom:20px; font-size:13px; color:var(--muted); }
.empty-state { padding:40px 24px; text-align:center; }
.empty-state i { color:var(--green-700); font-size:30px; margin-bottom:18px; }
.empty-state p { color:var(--muted); line-height:1.6; }
.button { display:inline-block; background:var(--green-800); color:white; padding:12px 18px; border:0; border-radius:5px; font:600 14px Inter,Arial,sans-serif; text-decoration:none; cursor:pointer; }
.form-panel { max-width:760px; padding:26px; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.form-field label { display:block; margin-bottom:8px; font-size:13px; font-weight:600; }
.form-field input { width:100%; padding:12px; border:1px solid var(--line); border-radius:4px; font:inherit; }
.form-field input:focus { outline:2px solid var(--green-700); outline-offset:2px; }
.help-text { color:var(--muted); font-size:12px; line-height:1.6; }
.errorlist { color:#a12e2e; font-size:13px; }
.message { padding:14px 18px; border:1px solid var(--line); margin-bottom:20px; background:var(--green-100); border-radius:4px; }
.form-actions { display:flex; gap:18px; align-items:center; margin-top:24px; }
.contact-card { padding:24px; }
@media(max-width:600px) { .form-grid { grid-template-columns:1fr; } .form-panel { padding:18px; } }

.page-heading-row { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; margin-bottom:30px; }
.page-heading-row .intro { margin-bottom:0; }
.button-group { display:flex; gap:10px; flex-wrap:wrap; justify-content:flex-end; }
.button-light { background:var(--green-100); color:var(--green-800); }
.button-light:hover,.button-light:focus-visible { background:#d9eadc; }
.button-small { padding:9px 12px; font-size:12px; }
.panel-subtitle { margin:5px 0 0; color:var(--muted); font-size:12px; font-weight:400; line-height:1.45; }
.document-filters { display:flex; align-items:flex-end; gap:12px; flex-wrap:wrap; margin-bottom:22px; padding:16px; border:1px solid var(--line); border-radius:5px; background:#fff; }
.document-filters label { display:flex; flex-direction:column; gap:7px; min-width:190px; color:var(--green-900); font-size:12px; font-weight:700; }
.document-filters .filter-search { flex:1 1 260px; }
.document-filters input,.document-filters select { min-height:40px; padding:9px 11px; border:1px solid var(--line); border-radius:4px; background:#fbfdfb; color:var(--ink); font:inherit; font-size:13px; }
.document-filters input:focus,.document-filters select:focus { outline:2px solid var(--green-700); outline-offset:1px; }
.document-list { padding:4px 22px; }
.document-row { display:flex; align-items:center; gap:15px; min-width:0; padding:17px 0; border-bottom:1px solid #edf2ee; }
.document-row:last-child { border-bottom:0; }
.document-copy { min-width:0; flex:1; }
.document-copy h3 { display:flex; align-items:center; gap:8px; margin:0 0 5px; color:var(--green-900); font-size:14px; line-height:1.35; }
.document-copy p { margin:0 0 5px; color:var(--muted); font-size:12px; line-height:1.5; }
.document-copy small { color:var(--muted); font-size:11px; }
.document-actions { display:flex; align-items:center; gap:7px; flex-shrink:0; }
.file-badge { width:48px; height:50px; display:grid; place-items:center; flex:0 0 48px; border-radius:5px; background:var(--green-100); color:var(--green-800); font-size:10px; font-weight:800; letter-spacing:.3px; }
.file-pdf { background:#fff0ef; color:#aa3d36; }
.file-xls,.file-xlsx,.file-csv { background:#eaf5e9; color:#287346; }
.status-pill { display:inline-flex; align-items:center; padding:3px 7px; border-radius:20px; background:#f2eee5; color:#77613b; font-size:10px; font-weight:700; letter-spacing:.2px; }
.status-pill.active { background:var(--green-100); color:var(--green-800); }
.icon-action { width:32px; height:32px; display:grid; place-items:center; border:1px solid var(--line); border-radius:4px; color:var(--green-700); text-decoration:none; font-size:12px; }
.icon-action:hover,.icon-action:focus-visible { border-color:var(--green-700); background:var(--green-100); }
.icon-action.danger { color:#a13f3a; }
.text-link { color:var(--green-700); font-size:13px; font-weight:700; text-decoration:none; }
.text-link:hover,.text-link:focus-visible { text-decoration:underline; }
.panel-footer-actions { display:flex; align-items:center; gap:20px; padding:18px 22px; border-top:1px solid var(--line); }
.legacy-resource { display:flex; align-items:center; gap:14px; margin:18px 22px 0; padding:15px; border:1px solid var(--line); border-radius:5px; background:#fbfdfb; }
.legacy-resource > div { min-width:0; flex:1; }
.legacy-resource strong { color:var(--green-900); font-size:13px; }
.legacy-resource p { margin:4px 0 0; color:var(--muted); font-size:12px; }
.document-mini-list { padding-top:4px; padding-bottom:16px; }
.document-mini { display:flex; align-items:center; gap:12px; padding:12px 0; border-bottom:1px solid #edf2ee; text-decoration:none; }
.document-mini:last-of-type { border-bottom:0; }
.document-mini .file-badge { width:34px; height:36px; flex-basis:34px; font-size:9px; }
.document-mini strong { display:block; margin-bottom:3px; color:var(--green-900); font-size:13px; }
.document-mini small { color:var(--muted); font-size:11px; }
.document-mini:hover strong,.document-mini:focus-visible strong { color:var(--green-700); }
.document-mini-list .text-link { display:inline-block; margin-top:16px; }
.stats-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-bottom:22px; }
.stat-card { padding:18px 20px; border:1px solid var(--line); border-radius:5px; background:#fff; box-shadow:0 3px 10px rgb(18 59 47 / 4%); }
.stat-card span,.stat-card small { display:block; color:var(--muted); font-size:11px; }
.stat-card strong { display:block; margin:5px 0 2px; color:var(--green-900); font-size:24px; }
.management-panel { margin-top:18px; }
.management-table-wrap { overflow-x:auto; }
.management-table { width:100%; border-collapse:collapse; font-size:13px; }
.management-table th { padding:13px 22px; border-bottom:1px solid var(--line); color:var(--muted); font-size:11px; font-weight:700; text-align:left; text-transform:uppercase; letter-spacing:.5px; }
.management-table td { padding:15px 22px; border-bottom:1px solid #edf2ee; color:var(--muted); vertical-align:middle; }
.management-table tr:last-child td { border-bottom:0; }
.management-table td strong { display:block; color:var(--green-900); }
.management-table td small { display:block; margin-top:4px; color:var(--muted); font-size:10px; }
.table-icon { width:22px; color:var(--green-700); }
.actions-column { text-align:right !important; }
.table-actions { display:flex; justify-content:flex-end; gap:6px; }
.table-empty { padding:28px 22px !important; text-align:center; }
.form-panel { width:min(760px,100%); }
.form-panel form { width:100%; }
.form-field-wide { grid-column:1 / -1; }
.form-field select,.form-field textarea,.form-field input[type="number"],.form-field input[type="text"],.form-field input[type="file"] { width:100%; padding:11px 12px; border:1px solid var(--line); border-radius:4px; background:#fbfdfb; color:var(--ink); font:inherit; font-size:13px; }
.form-field textarea { min-height:100px; resize:vertical; }
.form-field input[type="checkbox"] { width:18px; height:18px; accent-color:var(--green-700); }
.form-field:has(input[type="checkbox"]) { display:flex; align-items:center; gap:9px; }
.form-field:has(input[type="checkbox"]) label { order:2; margin:0; }
.form-field:has(input[type="checkbox"]) .help-text,.form-field:has(input[type="checkbox"]) .errorlist { width:100%; }
.upload-tip { display:flex; gap:12px; align-items:flex-start; margin-bottom:24px; padding:13px 15px; border:1px solid #d7e7d9; border-radius:4px; background:var(--green-100); color:var(--green-800); font-size:12px; line-height:1.5; }
.upload-tip i { margin-top:2px; color:var(--green-700); }
.danger-panel { border-top:4px solid #a13f3a; }
.warning-icon { margin-bottom:15px; color:#a13f3a; font-size:28px; }
.button-danger { background:#a13f3a; }
.button-danger:hover,.button-danger:focus-visible { background:#852e2a; }
@media(max-width:760px) { .page-heading-row { display:block; } .page-heading-row .button,.page-heading-row .button-group { margin-top:18px; } .button-group { justify-content:flex-start; } .stats-grid { grid-template-columns:1fr; } .document-row { align-items:flex-start; flex-wrap:wrap; } .document-actions { width:100%; padding-left:63px; } .management-table th,.management-table td { padding-left:14px; padding-right:14px; } }
@media(max-width:600px) { .document-filters { align-items:stretch; } .document-filters label { width:100%; } .document-filters .button { align-self:flex-start; } .legacy-resource { align-items:flex-start; flex-wrap:wrap; } .legacy-resource .button { margin-left:62px; } .form-field-wide { grid-column:auto; } .panel-footer-actions { align-items:flex-start; flex-direction:column; } }
