/* AVADA KEDAVRA 3.0 — Meu Hogwarts and live academic agenda. No parchment layout. */
.ak3-dashboard,.ak3-agenda-main{background:#0c1015;color:#e9e2d6;min-height:calc(100vh - 82px);overflow-x:clip}
.ak3-dashboard *, .ak3-agenda-main *{box-sizing:border-box}
.ak3-label{color:#d3b780;font:600 10px/1.6 Interface,Arial,sans-serif;letter-spacing:.21em;text-transform:uppercase}
.ak3-welcome{position:relative;isolation:isolate;min-height:440px;border-bottom:1px solid #c7a46f40;background:#080d13;overflow:hidden}
.ak3-welcome-image{position:absolute;inset:0;z-index:-2;background:url('/assets/castle.webp') 66% 43%/cover no-repeat;filter:saturate(.64)}
.ak3-welcome::after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#0b0e13f7 0%,#0e1118e8 40%,#0b1119bb 71%,#0c1015a8 100%),linear-gradient(0deg,#0c1015 0%,transparent 65%)}
.ak3-welcome-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,320px);align-items:center;gap:clamp(20px,4vw,80px);min-height:440px;padding-top:55px;padding-bottom:55px}
.ak3-welcome-text h1,.ak3-agenda-hero h1{font:400 clamp(65px,8vw,115px)/.96 Editorial,Georgia,serif;letter-spacing:-.06em;margin:16px 0 25px;color:#f5ecdf}
.ak3-welcome-text h1 em,.ak3-agenda-hero h1 em,.ak3-panel-header h2 em,.ak3-agenda-toolbar h2 em,.ak3-destinations>h2 em{color:#ebc68f;font-style:italic}
.ak3-welcome-intro{font:clamp(16px,2vw,22px)/1.5 Editorial,Georgia,serif;max-width:620px;color:#d3c8b8}
.ak3-welcome-intro strong{color:#f9e6bc;font-weight:500}
.ak3-welcome-meta{display:flex;gap:9px;flex-wrap:wrap;margin:22px 0 29px}
.ak3-welcome-meta span{display:inline-block;border:1px solid #c7a46f45;background:#1119258c;padding:9px 13px;font:12px/1.35 Interface,Arial,sans-serif;color:#ebd7b7}
.ak3-welcome-actions{display:flex;gap:10px;flex-wrap:wrap}
.ak3-primary,.ak3-secondary{min-height:48px;padding:13px 21px;border:1px solid #cfac73;background:#d1b17a;color:#17191a;font:600 12px/1.6 Interface,Arial,sans-serif;display:inline-flex;align-items:center;gap:15px;justify-content:center;cursor:pointer;text-decoration:none;transition:background .15s,transform .15s}
.ak3-secondary{background:#11151bdc;color:#ead8b9;border-color:#bda07689}
.ak3-primary:hover,.ak3-secondary:hover{transform:translateY(-2px);background:#f1d3a2;color:#12151b}
.ak3-portrait-block{position:relative;border:1px solid #dfbd804c;background:linear-gradient(155deg,#26232a94,#10141c);border-radius:160px 160px 7px 7px;aspect-ratio:4/4.8;max-height:356px;min-height:235px;box-shadow:inset 0 0 0 9px #b69a6312,0 20px 60px #0006;overflow:hidden;display:flex;align-items:center;justify-content:center;color:#bea774}
.ak3-portrait-block::before{content:'';position:absolute;inset:10px;border:1px solid #c4a46f58;border-radius:145px 145px 4px 4px;pointer-events:none;z-index:2}
.ak3-portrait-image{width:100%;height:100%;object-fit:contain;object-position:bottom center;position:relative;z-index:1;display:block}
.ak3-portrait-placeholder svg{width:130px;max-width:65%;height:auto;opacity:.55}
.ak3-portrait-ornament{position:absolute;top:13px;left:50%;transform:translateX(-50%);z-index:3;color:#f0ca86;font-size:20px}
.ak3-portrait-caption{position:absolute;bottom:0;left:0;right:0;z-index:3;padding:25px 15px 18px;text-align:center;background:linear-gradient(0deg,#080a10ed,#080a1000);font:13px/1.4 Editorial,Georgia,serif;color:#f5deaf}
.ak3-dashboard-content{padding-top:38px;padding-bottom:90px}
.ak3-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.ak3-stat{min-width:0;min-height:210px;border:1px solid #d3b27736;background:linear-gradient(145deg,#1b1d22 0%,#13171d 100%);padding:24px 24px 21px;position:relative}
.ak3-stat::after{content:'';position:absolute;top:0;left:0;width:60px;height:2px;background:#c3a26b}
.ak3-stat-head{display:flex;align-items:center;gap:12px;color:#baa980;font:10px/1.5 Interface,Arial,sans-serif;letter-spacing:.14em}
.ak3-icon{font:25px/1 Editorial,Georgia,serif;color:#d5b781}
.ak3-stat>strong{display:block;font:400 clamp(28px,3vw,44px)/1.1 Editorial,Georgia,serif;color:#fbedd5;margin:21px 0 7px;overflow-wrap:anywhere}
.ak3-stat>strong small{font-size:18px}
.ak3-stat>p{color:#aaa8a4;font:12px/1.7 Interface,Arial,sans-serif;margin:0 0 10px}
.ak3-stat>a{font:12px/1.4 Interface,Arial,sans-serif;color:#dbbb81;border-bottom:1px solid #c6a36a55;display:inline-block;padding-bottom:3px}
.ak3-sections{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;margin-top:33px;align-items:start}
.ak3-panel{background:#15191f;border:1px solid #c4a16a38;min-width:0;padding:clamp(20px,3vw,34px);min-height:370px}
.ak3-panel-header{display:flex;justify-content:space-between;gap:20px;align-items:end;border-bottom:1px solid #c4a16a2c;padding-bottom:24px;margin-bottom:23px}
.ak3-panel-header h2,.ak3-agenda-toolbar h2,.ak3-destinations>h2{font:400 clamp(28px,3.2vw,43px)/1.13 Editorial,Georgia,serif;letter-spacing:-.03em;color:#f6e9d5;margin:10px 0 0}
.ak3-panel-header>a,.ak3-panel-link{font:12px/1.6 Interface,Arial,sans-serif;color:#dbbd8c;white-space:nowrap;flex:none}
.ak3-event{display:grid;grid-template-columns:100px 1fr;gap:18px;padding:15px 0;border-bottom:1px solid #dbb87924;align-items:center}
.ak3-event:last-child{border:0}
.ak3-event>time{color:#e2c28c;font:12px/1.6 Interface,Arial,sans-serif}
.ak3-event span{font:10px/1.5 Interface,Arial,sans-serif;color:#ae9c7d;letter-spacing:.1em}
.ak3-event h3{font:400 23px/1.24 Editorial,Georgia,serif;color:#efe4d5;margin:5px 0}
.ak3-event p{color:#989995;font:12px/1.55 Interface,Arial,sans-serif;margin:0}
.ak3-news-copy h3{font:400 25px/1.25 Editorial,Georgia,serif;color:#eddaab;margin:0 0 13px}
.ak3-news-copy p{white-space:pre-line;overflow-wrap:anywhere;max-height:380px;overflow:auto;color:#c3bbb0;font:13px/1.85 Interface,Arial,sans-serif}
.ak3-panel-link{display:inline-block;margin-top:25px;border-bottom:1px solid #d5b47e55;padding-bottom:5px}
.ak3-empty{text-align:center;display:grid;align-content:center;justify-items:center;gap:10px;min-height:210px;padding:20px;color:#c6b6a3}
.ak3-empty>span{font:35px/1 Editorial,Georgia,serif;color:#c7a66e}
.ak3-empty h3{font:400 25px/1.26 Editorial,Georgia,serif;color:#eee0c8;margin:0}
.ak3-empty p{font:13px/1.75 Interface,Arial,sans-serif;max-width:350px;margin:0;color:#a6a19a}
.ak3-destinations{margin-top:65px}
.ak3-destinations>h2{margin:10px 0 25px}
.ak3-destinations-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.ak3-destinations-grid>a{min-width:0;min-height:210px;position:relative;display:block;border:1px solid #bfa47335;background:linear-gradient(140deg,#222128,#11171e);padding:27px 22px;text-decoration:none;color:inherit;transition:background .2s,border-color .2s,transform .2s}
.ak3-destinations-grid>a:hover{background:#29282d;border-color:#cda970bb;transform:translateY(-3px)}
.ak3-destinations-grid>a>span{font:30px/1 Georgia,serif;color:#d6b781}
.ak3-destinations-grid h3{font:400 27px/1.2 Editorial,Georgia,serif;margin:22px 0 8px;color:#f2e0c8}
.ak3-destinations-grid p{font:12px/1.7 Interface,Arial,sans-serif;color:#aca69b;max-width:230px}
.ak3-destinations-grid b{position:absolute;top:25px;right:18px;color:#d2b580;font-weight:400}
.ak3-notice-bar{display:flex;align-items:center;gap:20px;padding:23px 28px;border:1px solid #a89c743c;background:#2b281e4a;margin-bottom:27px}
.ak3-notice-bar>span{font-size:28px;color:#d3b57c}.ak3-notice-bar>div{flex:1}.ak3-notice-bar strong{font:400 21px/1.3 Editorial,Georgia,serif;color:#f0dcac}
.ak3-notice-bar p{font:13px/1.7 Interface,Arial,sans-serif;color:#bbb4a6;margin:5px 0 0}.ak3-notice-bar a{color:#efcc94;font:12px/1.3 Interface,Arial,sans-serif;white-space:nowrap}
.ak3-teacher-bar{margin:32px 0 0}
.ak3-fallback{min-height:60vh;padding:100px 0;text-align:center}.ak3-fallback h1{font:40px Editorial,Georgia,serif}.ak3-fallback a{color:#d8bc8a}
.ak3-agenda-hero{position:relative;background:linear-gradient(90deg,#0b1017f2,#0b1017ca),url('/assets/castle.webp') 60% 45%/cover;border-bottom:1px solid #c7a46f46;padding:clamp(55px,7vw,100px) 0}
.ak3-agenda-hero h1{font-size:clamp(55px,7vw,100px)}
.ak3-agenda-hero p:last-child{max-width:680px;color:#c8c3bd;font:14px/1.8 Interface,Arial,sans-serif}
.ak3-agenda-content{padding-top:52px;padding-bottom:110px}
.ak3-agenda-toolbar{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:26px}
.ak3-agenda-filters{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:22px}
.ak3-agenda-filters button{border:1px solid #cdb37e4a;background:#16191f;color:#c5b8a4;padding:10px 18px;cursor:pointer;font:12px/1.5 Interface,Arial,sans-serif;min-height:43px}
.ak3-agenda-filters button[aria-pressed="true"]{background:#cdb37e;color:#17181b}
.ak3-event-editor{border:1px solid #cdb37e6c;background:#181b21;padding:25px;margin-bottom:31px}
.ak3-event-editor h3{font:400 31px/1.2 Editorial,Georgia,serif;color:#f2dcae;margin-bottom:7px}
.ak3-event-editor>p{font:13px/1.7 Interface,Arial,sans-serif;color:#b8b1a7;margin-bottom:20px}
.ak3-event-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.ak3-event-form label{display:grid;gap:7px;font:12px/1.5 Interface,Arial,sans-serif;color:#d7c9ae;min-width:0}
.ak3-event-form input,.ak3-event-form select,.ak3-event-form textarea{width:100%;background:#0d1119;border:1px solid #bda57555;padding:12px;color:#e8ddc9;font:14px/1.5 Interface,Arial,sans-serif;min-height:47px;border-radius:0;color-scheme:dark}
.ak3-event-form textarea{resize:vertical}
.ak3-form-full{grid-column:1/-1}
.ak3-event-form button[disabled]{opacity:.6;cursor:wait}
.ak3-feedback{padding:13px 17px;background:#1e2923;border:1px solid #7eaf7850;color:#d2ead5;font:13px/1.5 Interface,Arial,sans-serif;margin-bottom:20px}
.ak3-feedback.error{background:#342023;border-color:#c27c735e;color:#f3b8af}
.ak3-calendar-list{display:grid;gap:12px}
.ak3-calendar-card{display:grid;grid-template-columns:95px 1fr;background:linear-gradient(110deg,#1c2026,#12161d);border:1px solid #c6a5713b;padding:20px;gap:20px}
.ak3-calendar-date{padding:10px 0;border-right:1px solid #c7a57140;color:#f0d69f;text-align:center;display:grid;align-content:center;gap:4px}
.ak3-calendar-date strong{font:42px/1 Editorial,Georgia,serif}
.ak3-calendar-date span{font:12px/1.5 Interface,Arial,sans-serif;text-transform:uppercase;letter-spacing:.14em}
.ak3-calendar-text h3{font:400 30px/1.22 Editorial,Georgia,serif;color:#f0e4d2;margin:8px 0}
.ak3-calendar-text time{color:#dcc59b;font:12px/1.6 Interface,Arial,sans-serif}
.ak3-calendar-text p:not(.ak3-label){color:#ada9a3;white-space:pre-line;font:13px/1.7 Interface,Arial,sans-serif;margin-top:8px}
.ak3-calendar-text p strong{color:#d3c6ae}
.ak3-remove{display:block;padding:8px 0;color:#e4a19d;font:12px/1.5 Interface,Arial,sans-serif;cursor:pointer;background:transparent;border:0;margin-top:12px;text-decoration:underline;text-underline-offset:3px}
.ak3-calendar-footnote{margin-top:28px;color:#a39c91;font:12px/1.8 Interface,Arial,sans-serif}
.ak3-calendar-empty{min-height:260px;background:#171b21;border:1px solid #c7a46f38}
@media(max-width:1100px){.ak3-destinations-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ak3-sections{grid-template-columns:1fr}}
@media(max-width:760px){.ak3-welcome-grid{grid-template-columns:1fr 160px;gap:14px}.ak3-portrait-block{min-height:200px}.ak3-stat-grid{grid-template-columns:1fr 1fr}.ak3-stat:last-child{grid-column:1/-1}.ak3-stat{min-height:180px}.ak3-agenda-toolbar{align-items:start}}
@media(max-width:600px){.ak3-welcome{min-height:auto}.ak3-welcome-grid{display:grid;grid-template-columns:minmax(0,1fr) 95px;min-height:340px;padding-top:48px;padding-bottom:40px;gap:10px}.ak3-welcome-text h1{font-size:clamp(46px,11vw,65px);overflow-wrap:normal;margin:12px 0 15px}.ak3-welcome-intro{font-size:15px}.ak3-welcome-meta{margin:13px 0 20px;gap:6px}.ak3-welcome-meta span{font-size:10px;padding:6px}.ak3-welcome-actions{gap:8px}.ak3-primary,.ak3-secondary{font-size:11px;padding:10px 12px;min-height:43px}.ak3-portrait-block{min-height:160px;aspect-ratio:3/5;border-radius:80px 80px 5px 5px;align-self:center}.ak3-portrait-block::before{border-radius:75px 75px 4px 4px;inset:5px}.ak3-portrait-caption{font-size:10px;padding:23px 7px 9px;overflow-wrap:anywhere}.ak3-portrait-placeholder svg{max-width:70%;width:70px}.ak3-portrait-ornament{font-size:15px;top:6px}.ak3-dashboard-content{padding-top:18px}.ak3-stat-grid{gap:9px}.ak3-stat{padding:17px 13px;min-height:182px}.ak3-stat>strong{font-size:clamp(21px,5.8vw,31px);margin:15px 0 6px}.ak3-stat>strong small{font-size:12px}.ak3-stat-head{font-size:9px;gap:6px}.ak3-icon{font-size:21px}.ak3-stat p,.ak3-stat a{font-size:11px}.ak3-stat:last-child{grid-column:1/-1;min-height:145px}.ak3-sections{margin-top:18px;gap:17px}.ak3-panel{padding:21px 17px;min-height:0}.ak3-panel-header{display:block;padding-bottom:18px}.ak3-panel-header>a{display:inline-block;margin-top:12px}.ak3-panel-header h2,.ak3-destinations>h2,.ak3-agenda-toolbar h2{font-size:32px}.ak3-event{grid-template-columns:80px 1fr;gap:10px}.ak3-event h3{font-size:20px}.ak3-event>time{font-size:11px}.ak3-destinations{margin-top:44px}.ak3-destinations-grid{gap:9px}.ak3-destinations-grid>a{padding:18px 14px;min-height:182px}.ak3-destinations-grid h3{font-size:23px;margin-top:18px}.ak3-destinations-grid p{font-size:11px}.ak3-notice-bar{padding:16px;flex-wrap:wrap;gap:10px}.ak3-notice-bar>div{flex-basis:80%}.ak3-notice-bar a{width:100%;text-align:right}.ak3-agenda-hero{padding:47px 0}.ak3-agenda-hero h1{font-size:clamp(46px,11vw,67px)}.ak3-agenda-content{padding-top:30px}.ak3-agenda-toolbar{flex-wrap:wrap}.ak3-event-form{grid-template-columns:1fr}.ak3-event-editor{padding:18px}.ak3-calendar-card{grid-template-columns:57px 1fr;gap:12px;padding:14px}.ak3-calendar-date strong{font-size:32px}.ak3-calendar-text h3{font-size:24px}}
@media(max-width:350px){.ak3-welcome-grid{grid-template-columns:minmax(0,1fr) 70px}.ak3-welcome-text h1{font-size:45px}.ak3-stat-grid{grid-template-columns:1fr}.ak3-stat:last-child{grid-column:auto}.ak3-destinations-grid{grid-template-columns:1fr 1fr}.ak3-destinations-grid h3{font-size:21px}}
@media(prefers-reduced-motion:reduce){.ak3-primary,.ak3-secondary,.ak3-destinations-grid>a{transition:none}}

@media (min-width:961px) and (max-width:1399px){.ak2-header.header nav{gap:9px;font-size:10px}.ak2-brand.brand{font-size:14px}.ak2-brand.brand small{font-size:8px}}
