:root{--navy:#101135;--ink:#252542;--orange:#ef672b;--orange-dark:#ae3d12;--paper:#fffdf8;--cream:#f7f2e9;--line:#d5cec3;--white:#fff;--error:#a52327;--error-bg:#fff0ec;--success:#146845;--success-bg:#eaf7ef;--warning:#76510b;--warning-bg:#fff4d8;--font-body:"DM Sans",Arial,sans-serif;--font-display:"Literata",Georgia,serif;--body-size:1rem;--small-size:.875rem;--h1-size:clamp(2.4rem,6vw,5rem);--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2rem;--space-5:3rem;--radius:.65rem;--content:74rem;--form:38rem}*{box-sizing:border-box}html{font-size:16px}body{margin:0;background:var(--paper);color:var(--ink);font:var(--body-size)/1.6 var(--font-body)}a{color:inherit}button,input{font:inherit}button,a,input,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.site-header{background:var(--navy);color:var(--white)}.header-inner{max-width:var(--content);min-height:4.5rem;margin:auto;padding:var(--space-1) var(--space-2);display:flex;align-items:center;gap:var(--space-1);flex-wrap:wrap}.wordmark{text-decoration:none;font-weight:700;letter-spacing:.08em;font-size:1.35rem;min-height:44px;display:inline-flex;align-items:center}.wordmark span{color:#ff8754}.header-login{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:80px;border:1px solid #fff7;border-radius:var(--radius);padding:0 .8rem;text-decoration:none;font-weight:700}.desktop-menu{display:none}.mobile-menu{order:3;width:100%}.mobile-menu summary{list-style:none;cursor:pointer;min-height:44px;display:flex;align-items:center;gap:.6rem;font-weight:700}.mobile-menu summary::-webkit-details-marker{display:none}.hamburger{font-size:1.4rem;line-height:1}.mobile-menu nav{display:grid;padding-bottom:.5rem}.mobile-menu nav a,.desktop-menu a{min-height:44px;padding:.55rem .7rem;display:flex;align-items:center;white-space:normal;text-decoration:none;border-radius:.35rem;font-weight:600}.mobile-menu a:hover,.desktop-menu a:hover,.header-login:hover{background:#ffffff1e}.mobile-menu [aria-current=page],.desktop-menu [aria-current=page]{color:#ffad80}.site-footer{max-width:var(--content);margin:var(--space-5) auto 0;padding:var(--space-3) var(--space-2);border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:.4rem var(--space-3);font-size:var(--small-size);color:#545469}.hero{max-width:var(--content);margin:0 auto;min-height:clamp(26rem,70vh,43rem);padding:var(--space-5) var(--space-2);display:grid;align-items:center;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:2rem 1rem 2rem auto;width:35%;border:1px solid var(--line);border-radius:12rem 12rem .5rem .5rem;opacity:.65}.hero-mark{position:absolute;right:6%;top:4%;font:700 clamp(12rem,35vw,31rem)/1 var(--font-display);color:#f0e7d9;pointer-events:none}.hero-content{position:relative;max-width:43rem}.eyebrow{margin:0 0 var(--space-2);font-weight:700;color:var(--orange-dark);letter-spacing:.035em}.helyi{font-weight:400;font-size:.85em;white-space:nowrap;margin-left:.3em}h1{font:700 var(--h1-size)/1.15 var(--font-display);letter-spacing:-.045em;margin:0 0 var(--space-3);color:var(--navy)}.lead{font:400 clamp(1.18rem,2.5vw,1.55rem)/1.5 var(--font-display);max-width:36rem}.actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-4)}.button{appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:48px;min-width:136px;padding:.7rem 1.25rem;border-radius:var(--radius);border:2px solid transparent;text-decoration:none;cursor:pointer;font-weight:700}.primary{background:var(--navy);color:var(--white)}.primary:hover{background:#282954}.secondary{background:var(--paper);border-color:var(--navy);color:var(--navy)}.secondary:hover{background:var(--cream)}.form-wrap{width:min(100% - 2rem,var(--form));margin:var(--space-5) auto;padding:var(--space-4);background:var(--white);border:1px solid var(--line);border-top:5px solid var(--orange);border-radius:var(--radius);box-shadow:0 12px 32px #1011350b}.form-wrap h1{font-size:clamp(2rem,5vw,3rem)}.field{margin:var(--space-3) 0}.field label{display:block;margin-bottom:.35rem;font-weight:700}.field input{display:block;width:100%;min-height:48px;padding:.65rem .8rem;font-size:1rem;color:var(--ink);border:1.5px solid #77778a;border-radius:.4rem;background:var(--white)}.field input[aria-invalid=true]{border:2px solid var(--error);background:var(--error-bg)}.field small{display:block;font-size:var(--small-size);line-height:1.45;margin-top:.5rem}.text-link{min-height:44px;display:inline-flex;align-items:center;margin-top:var(--space-2);color:var(--navy);font-weight:700}.drop-zone{border:2px dashed #76718b;background:var(--cream);border-radius:var(--radius);padding:var(--space-2);min-height:110px;display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.drop-zone input{width:100%;max-width:100%;border:0;background:transparent;padding:0;min-height:44px}.drop-zone input::file-selector-button{min-height:44px;cursor:pointer;border:1px solid var(--navy);border-radius:.4rem;background:var(--white);color:var(--navy);padding:.5rem .8rem;font:700 1rem var(--font-body);margin-right:.7rem}.drop-zone.drag-over{border-color:var(--orange-dark);background:#ffeddc}.message{padding:.8rem 1rem;margin:var(--space-2) 0;border-left:4px solid;border-radius:.3rem;font-weight:600}.message.error{color:var(--error);border-color:var(--error);background:var(--error-bg)}.message.success{color:var(--success);border-color:var(--success);background:var(--success-bg)}.message.warning{color:var(--warning);border-color:var(--warning);background:var(--warning-bg)}.error-text{color:var(--error);font-weight:700}@media(max-width:359px){.header-inner{gap:0}.hero{padding-top:var(--space-4)}.form-wrap{padding:var(--space-2)}}@media(min-width:360px){.header-inner,.hero,.site-footer{padding-left:var(--space-3);padding-right:var(--space-3)}}@media(min-width:768px){.header-inner,.hero,.site-footer{padding-left:var(--space-4);padding-right:var(--space-4)}.form-wrap{padding:var(--space-5)}.hero-mark{right:10%}}@media(min-width:1280px){.mobile-menu{display:none}.desktop-menu{display:flex;align-items:center;gap:.1rem;margin-left:auto}.desktop-menu a{font-size:.9rem}.header-login{margin-left:var(--space-2)}.hero{padding-left:var(--space-5);padding-right:var(--space-5)}}@media(prefers-reduced-motion:no-preference){.button,.header-login{transition:background-color .15s ease}}


/* === Háttérképek — teljes képernyős apátság ============================
   A kép a .hatter rétegen áll, a tartalom fölötte. Álló képernyőn az álló,
   fekvőn a fekvő változat. A menü és a táblák áttetszők, hogy a kép
   átlátsszon, de a szöveg olvasható maradjon. */
body{background:var(--navy);min-height:100vh;display:flex;flex-direction:column}
.hatter{position:fixed;inset:0;z-index:0;background-position:center;background-size:cover;background-repeat:no-repeat}
.hatter:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,17,53,.30) 0%,rgba(16,17,53,.05) 35%,rgba(16,17,53,.40) 100%)}
.site-header,main,.site-footer{position:relative;z-index:1}
main{flex:1}
.hatter-apatsag .hatter{background-image:url(hatter/01_apatsag_allo.jpg);background-position:30% center}
.hatter-kapusszoba .hatter{background-image:url(hatter/02_kapusszoba_allo.jpg)}
.hatter-raktar .hatter{background-image:url(hatter/03_raktar_allo.jpg)}
.hatter-konyvtar .hatter{background-image:url(hatter/04_konyvtar_eloter_allo.jpg)}
.hatter-szkriptorium .hatter{background-image:url(hatter/05_szkriptorium_allo.jpg)}
@media (orientation:landscape){
.hatter-apatsag .hatter{background-image:url(hatter/01_apatsag_fekvo.jpg);background-position:center}
.hatter-kapusszoba .hatter{background-image:url(hatter/02_kapusszoba_fekvo.jpg)}
.hatter-raktar .hatter{background-image:url(hatter/03_raktar_fekvo.jpg)}
.hatter-konyvtar .hatter{background-image:url(hatter/04_konyvtar_eloter_fekvo.jpg)}
.hatter-szkriptorium .hatter{background-image:url(hatter/05_szkriptorium_fekvo.jpg)}
}
.site-header{background:rgba(16,17,53,.82);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.form-wrap{background:rgba(255,253,248,.93);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);box-shadow:0 18px 50px rgba(16,17,53,.35);border-color:rgba(213,206,195,.7)}
.hero:before,.hero-mark{display:none}
.hero{min-height:calc(100vh - 9rem);align-items:end}
.hero-content{background:rgba(255,253,248,.90);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);padding:var(--space-4);border-radius:var(--radius);border-top:5px solid var(--orange);box-shadow:0 18px 50px rgba(16,17,53,.35)}
@media(min-width:768px){.hero{align-items:center}.hero-content{padding:var(--space-5)}}
.site-footer{max-width:none;width:100%;margin:var(--space-5) 0 0;background:rgba(16,17,53,.78);color:#e8e6f0;border-top:0}

/* === A MIKMER logó ======================================================
   A fejlécben a jelmondat nélküli változat, a nyitóoldalon a teljes logó.
   A fejléc színe a logó hátterével azonos (#0E0D37). */
.site-header{background:#0e0d37;-webkit-backdrop-filter:none;backdrop-filter:none}
.wordmark img{display:block;height:40px;width:auto}
.logo-cim{margin:0 0 var(--space-3);line-height:0}
.logo-cim img{display:block;width:100%;max-width:34rem;height:auto;border-radius:.4rem}

/* === A jelszó megjelenítése (szem) ===================================== */
.jelszo-doboz{position:relative}
.jelszo-doboz input{padding-right:3.4rem}
.szem{position:absolute;right:2px;top:50%;transform:translateY(-50%);width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:0;border-radius:.35rem;background:transparent;color:var(--navy);cursor:pointer}
.szem:hover{background:var(--cream)}
.szem .szem-csukva{display:none}
.szem[aria-pressed=true] .szem-nyitva{display:none}
.szem[aria-pressed=true] .szem-csukva{display:block}

/* === Az apát szobája (a kurátori lapok) ================================ */
.hatter-apat .hatter{background-image:url(hatter/06_apat_allo.jpg)}
@media (orientation:landscape){.hatter-apat .hatter{background-image:url(hatter/06_apat_fekvo.jpg)}}
/* pihenés: két perc tétlenség után csak a háttérkép látszik */
.site-header,main,.site-footer{transition:opacity 1.2s ease}
body.pihen .site-header,body.pihen main,body.pihen .site-footer{opacity:0;pointer-events:none}
body.pihen{cursor:pointer}
@media(prefers-reduced-motion:reduce){.site-header,main,.site-footer{transition:none}}
/* jelző: ami az illetőre vár */
.jelzo{display:inline-flex;align-items:center;justify-content:center;min-width:1.35rem;height:1.35rem;padding:0 .35rem;margin-left:.35rem;border-radius:999px;background:var(--orange);color:var(--white);font:700 .75rem/1 var(--font-body)}
@media(min-width:1280px){.desktop-menu a{display:grid;grid-template-columns:auto auto;column-gap:.25rem;align-items:center;justify-items:center;line-height:1.15;padding:.35rem .5rem}.desktop-menu a [lang=la]{grid-column:1;grid-row:1}.desktop-menu a .helyi{grid-column:1;grid-row:2;margin-left:0;font-size:.8em}.desktop-menu a .jelzo{grid-column:2;grid-row:1/3;margin-left:.15rem}.desktop-menu .pont{display:none}}

/* === A lábléc: előhívható „Tudnivalók” (2026-09-29) =========================
   A lap alján nem foglal helyet: egy kis gomb a jobb alsó sarokban; kattintásra
   fölötte megnyílik a lista, újabb kattintásra (vagy máshová kattintva) bezárul. */
.site-footer{position:fixed;right:var(--space-2);bottom:var(--space-2);left:auto;width:auto;max-width:calc(100vw - 2rem);margin:0;padding:0;background:none;border:0;display:block;z-index:20}
.labmenu summary{list-style:none;cursor:pointer;min-height:44px;display:inline-flex;align-items:center;padding:0 1rem;border-radius:999px;background:rgba(16,17,53,.85);color:#e8e6f0;font-weight:700;font-size:var(--small-size);box-shadow:0 6px 18px rgba(16,17,53,.3)}
.labmenu summary::-webkit-details-marker{display:none}
.labmenu summary:hover{background:#101135}
.labmenu[open] summary{background:var(--orange-dark)}
.labmenu-lista{position:absolute;right:0;bottom:calc(100% + .5rem);width:max-content;max-width:calc(100vw - 2rem);display:grid;gap:.1rem;padding:.5rem;background:rgba(16,17,53,.95);color:#e8e6f0;border-radius:var(--radius);box-shadow:0 12px 32px rgba(16,17,53,.4)}
.labmenu-lista a{min-height:44px;display:flex;align-items:center;padding:0 .8rem;border-radius:.35rem;text-decoration:none;font-weight:600}
.labmenu-lista a:hover{background:#ffffff1e}
.labmenu-teszt{padding:.4rem .8rem;font-size:.8rem;opacity:.8;max-width:22rem}

/* === A súgó és a jogi lapok szövege (2026-09-29) === */
.adatkezeles h2{font:700 1.35rem/1.3 var(--font-display);color:var(--navy);margin:var(--space-4) 0 var(--space-1);scroll-margin-top:1rem}
.adatkezeles h3{font-size:1.05rem;margin:var(--space-3) 0 .3rem;color:var(--navy);scroll-margin-top:1rem}
.adatkezeles li{margin:.25rem 0}
.sugo-tartalom{background:var(--cream);border-radius:var(--radius);padding:.3rem 1rem;margin:var(--space-2) 0}
.sugo-tartalom a{color:var(--navy);font-weight:600}

/* === A „?” súgójel (2026-09-29): a súgó adott részét új lapon nyitja === */
.sugo-jel{display:inline-flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;min-width:1.6rem;border-radius:50%;background:var(--navy);color:#fff!important;font:700 .95rem/1 var(--font-body);text-decoration:none;vertical-align:middle;margin-left:.35rem;letter-spacing:0;position:relative}
.sugo-jel::after{content:"";position:absolute;inset:-.5rem}
.sugo-jel:hover{background:var(--orange-dark)}
h1 .sugo-jel{width:1.9rem;height:1.9rem;font-size:1.1rem}

/* === A lap letevése (2026-09-29): „—” a panel sarkában; letéve a panel egy kis
   sávvá megy össze a lap alján, a kép szabadon látszik === */
.form-wrap,.hero-content{position:relative}
.letevo{position:absolute;top:.6rem;right:.6rem;width:44px;height:44px;border:0;border-radius:.4rem;background:transparent;color:var(--navy);font:700 1.4rem/1 var(--font-body);cursor:pointer}
.letevo:hover{background:#1011351a}
.felvevo{display:none}
body.letett main{visibility:hidden;height:0;overflow:hidden}
body.letett .felvevo{display:inline-flex;align-items:center;gap:.5rem;position:fixed;left:var(--space-2);bottom:var(--space-2);max-width:calc(100vw - 13rem);min-height:44px;padding:0 1rem;border:0;border-radius:999px;background:rgba(255,253,248,.93);color:var(--navy);font:700 var(--small-size) var(--font-body);box-shadow:0 6px 18px rgba(16,17,53,.3);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;z-index:20}
body.letett .felvevo:hover{background:#fff}
.nyitoszoveg p{margin:0 0 .6em}
.szoveg-szerk-link{margin:-.5rem 0 1rem;font-size:var(--small-size)}
.szoveg-szerk-link a{color:var(--navy);font-weight:700}
.szoveg-wrap{max-width:64rem}
.szakasz{border:1px solid var(--line);border-radius:var(--radius);padding:.6rem 1rem 0;margin:0 0 var(--space-2);background:var(--paper)}
.szakasz legend{font-weight:700;color:var(--navy);padding:0 .3rem}
.szakasz-fej{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.5rem 1rem}
.szakasz-fej .field{margin:.3rem 0 0;flex:1 1 16rem}
.szakasz-gombok{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.1rem}
.szakasz-gombok[hidden]{display:none}
.button.kicsi{min-width:44px;min-height:44px;padding:.3rem .7rem}
.szakasz textarea{font:.95rem/1.5 ui-monospace,Consolas,monospace!important;min-height:6rem}
.elonezet{border:2px dashed var(--orange);border-radius:var(--radius);padding:.5rem 1.2rem 1rem;margin:var(--space-2) 0 var(--space-3);background:var(--white)}
.elonezet-cim{margin:.4rem 0;color:var(--orange-dark);font-weight:700}
.jelolesek table{min-width:0}
.jelolesek code{background:var(--cream);padding:0 .25rem;border-radius:.2rem}
.valtozat-szakasz{border-left:3px solid var(--line);padding-left:1rem;margin:0 0 1rem}
.valtozat-lathato{font-size:var(--small-size);color:#545469;margin:.2rem 0}
.szoveg-lista{list-style:none;padding:0;margin:var(--space-3) 0 0;display:grid;gap:var(--space-2)}
.szoveg-tetel{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);padding:.8rem 1rem}
.szoveg-tetel h2{font:700 1.2rem/1.3 var(--font-display);margin:0 0 .3rem;color:var(--navy)}
.szoveg-tetel p{margin:.2rem 0;font-size:var(--small-size)}
.szoveg-gombok{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.6rem!important}
