*{box-sizing:border-box}:root{color-scheme:light;--bg:#f3f6fb;--fg:#17263e;--head:#142a49;--panel:#fff;--input:#fff;--border:#ccd5e2;--muted:#65758d;--table:#f5f7fb;--day:#f8faff;--event:#e3edff;--event-fg:#164b9b;--link:#2363c5;--shadow:#152b4610}html[data-theme="dark"]{color-scheme:dark;--bg:#0e1726;--fg:#e5edf9;--head:#0a1120;--panel:#172438;--input:#1b2b42;--border:#40516b;--muted:#a7b6ca;--table:#223149;--day:#1b2b42;--event:#24466f;--event-fg:#e7f0ff;--link:#79aeff;--shadow:#0004}body{margin:0;background:var(--bg);color:var(--fg);font:15px system-ui,Segoe UI,Arial}header{background:var(--head);color:white;padding:18px 5%;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}nav{display:flex;gap:16px;flex-wrap:wrap;align-items:center}nav a{color:#fff;text-decoration:none}main{max-width:1100px;margin:30px auto;padding:0 18px}.auth{max-width:430px;background:var(--panel);border-radius:14px;padding:30px;margin:9vh auto;box-shadow:0 10px 30px var(--shadow)}.panel{background:var(--panel);border-radius:14px;padding:25px;margin:18px 0;box-shadow:0 5px 18px var(--shadow)}h1{margin:0 0 14px;font-size:26px}h2{font-size:19px}label{display:block;font-weight:600;margin:12px 0 5px}input,select,textarea{display:block;width:100%;background:var(--input);color:var(--fg);border:1px solid var(--border);border-radius:8px;padding:11px;font:inherit;margin-top:6px}input[type=checkbox]{display:inline-block;width:auto;accent-color:#397ddd}button,.btn{background:#2363c5;color:white;border:0;border-radius:8px;padding:11px 18px;cursor:pointer;text-decoration:none;display:inline-block;font:inherit}button:hover,.btn:hover{background:#164b9b}.theme-toggle{background:#354c6b;border:1px solid #65758d;padding:7px 11px}.secondary{background:#65758d}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.error{color:#ef6d62}.success{color:#25aa80}.muted{color:var(--muted)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{padding:12px;text-align:left;border-bottom:1px solid var(--border)}th{background:var(--table)}.pill{background:var(--event);padding:4px 9px;border-radius:20px}.actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.day{background:var(--day);border:1px solid var(--border);border-radius:8px;min-height:110px;padding:8px}.event{display:block;background:var(--event);color:var(--event-fg);padding:5px;margin:4px 0;border-radius:5px;font-size:12px;overflow-wrap:anywhere}a{color:var(--link)}header a{color:white}@media(max-width:750px){.grid{grid-template-columns:1fr}.week{grid-template-columns:repeat(2,1fr)}header{padding:16px}main{margin:16px auto}}
.details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:12px 0}.details-grid>div{display:flex;flex-direction:column;gap:5px;overflow-wrap:anywhere}.details-grid strong{font-size:15px}.notes-display{white-space:normal;overflow-wrap:anywhere}@media(max-width:600px){.details-grid{grid-template-columns:1fr}}

.modal-overlay:not([hidden]){position:fixed;inset:0;z-index:1000;background:#0009;display:flex;align-items:center;justify-content:center;padding:16px}.modal-overlay[hidden]{display:none}.modal-card{background:var(--panel);color:var(--fg);border:1px solid var(--border);border-radius:16px;padding:24px;width:min(720px,100%);max-height:90vh;overflow-y:auto;box-shadow:0 20px 70px #0005}.modal-card h2{margin:0}.modal-card .details-grid{gap:12px}.modal-open{overflow:hidden}
/* LTLI Agenda - Rodapé institucional */

.ltli-footer {
    width: min(100% - 32px, 960px);
    margin: 24px auto 0;
    padding: 22px 16px;
    box-sizing: border-box;

    text-align: center;
    border-top: 1px solid #334155;

    color: inherit;
    font-size: 13px;
    line-height: 1.6;
}

.ltli-footer strong {
    display: block;
    margin-bottom: 12px;
    font-size: 14px;
}

.ltli-footer-contatos {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px 24px;
}

.ltli-footer-contatos a {
    color: #60a5fa;
    text-decoration: none;
}

.ltli-footer-contatos a:hover {
    text-decoration: underline;
}

@media (max-width: 600px) {
    .ltli-footer-contatos {
        flex-direction: column;
        gap: 8px;
    }
}