/* LAVA EDU / three art-directed UI compositions. No assets or CSS motion.
   Panel transforms are reserved for the shared application timeline. */

.cookie-panel:is(.cookie-format-folio,.cookie-format-seal,.cookie-format-poster){
  position:fixed;
  right:14px;
  bottom:calc(14px + env(safe-area-inset-bottom));
  left:auto;
  top:auto;
  z-index:45;
  width:min(300px,calc(100vw - 28px));
  max-width:310px;
  max-height:calc(100dvh - 28px);
  min-height:0;
  margin:0;
  padding:0;
  background:transparent;
  color:#29292D;
  border:0;
  border-radius:0;
  box-shadow:none;
  font-family:Inter,Arial,sans-serif;
  font-weight:400;
  font-synthesis:none;
  line-height:1.4;
  letter-spacing:0;
  isolation:isolate;
  pointer-events:auto;
}
.cookie-panel:is(.cookie-format-folio,.cookie-format-seal,.cookie-format-poster) :where(div,h2,p,span,a,button){box-sizing:border-box;min-width:0}
.cookie-panel:is(.cookie-format-folio,.cookie-format-seal,.cookie-format-poster) :where(h2,p){margin:0;padding:0}
.cookie-panel:is(.cookie-format-folio,.cookie-format-seal,.cookie-format-poster) h2{font-family:Inter,Arial,sans-serif;font-weight:500!important;font-style:normal;text-align:left;text-wrap:initial;color:inherit}
.cookie-panel:is(.cookie-format-folio,.cookie-format-seal,.cookie-format-poster) h2>a{display:inline-flex;align-items:center;min-height:44px;min-width:44px;color:inherit;text-decoration:none}
.cookie-panel:is(.cookie-format-folio,.cookie-format-seal,.cookie-format-poster) p{font-family:Inter,Arial,sans-serif;font-size:12px;line-height:1.4;letter-spacing:0;color:inherit}
.cookie-panel:is(.cookie-format-folio,.cookie-format-seal,.cookie-format-poster) .a-configure{display:inline-flex;align-items:center;justify-content:center;width:44px;min-width:44px;height:44px;min-height:44px;margin:0;padding:0;flex:none;border:0;border-radius:0;background:transparent;color:inherit;font-family:Inter,Arial,sans-serif;font-size:23px;font-weight:400;line-height:1;letter-spacing:.055em;cursor:pointer;box-shadow:none}
.cookie-panel:is(.cookie-format-folio,.cookie-format-seal,.cookie-format-poster) .a-choice{display:flex;align-items:center;justify-content:center;width:100%;min-width:0;min-height:44px;margin:0;padding:9px 7px;border:1px solid currentColor;border-radius:2px;box-shadow:none;font-family:Inter,Arial,sans-serif;font-size:12px;font-weight:500;line-height:1.25;letter-spacing:0;text-align:center;white-space:normal;opacity:1}
.cookie-panel:is(.cookie-format-folio,.cookie-format-seal,.cookie-format-poster) :focus-visible{outline:2px solid currentColor;outline-offset:3px}

/* FOLIO: two actual interface planes, offset without tilting the reading. */
.cookie-panel.cookie-format-folio{height:198px;overflow:visible}
.cookie-panel.cookie-format-folio .a-folio-under{position:absolute;inset:15px 0 0 14px;display:flex;align-items:flex-end;justify-content:flex-end;padding:0 12px 5px;background:#3C5431;color:#EEEEEE;border:1px solid #3C5431}
.cookie-panel.cookie-format-folio .a-folio-under>span{font-size:12px;font-weight:500;line-height:1.1;letter-spacing:.06em}
.cookie-panel.cookie-format-folio .a-folio-sheet{position:relative;z-index:1;width:calc(100% - 14px);min-height:174px;padding:12px;background:#EEEEEE;border:1px solid #29292D}
.cookie-panel.cookie-format-folio .a-folio-kicker{display:block;font-size:12px;font-weight:400;line-height:1.15;letter-spacing:.035em;padding-right:47px}
.cookie-panel.cookie-format-folio .a-folio-title{font-size:42px!important;line-height:1.02!important;letter-spacing:-.055em;margin:6px 0 4px!important}
.cookie-panel.cookie-format-folio .a-folio-title>a{min-height:44px}
.cookie-panel.cookie-format-folio .a-folio-configure{position:absolute;top:5px;right:5px;color:#3C5431}
.cookie-panel.cookie-format-folio .a-folio-question{font-size:12px;line-height:1.4;margin:2px 0 11px}
.cookie-panel.cookie-format-folio .a-folio-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.cookie-panel.cookie-format-folio .a-choice[data-accept]{background:#3C5431;border-color:#3C5431;color:#EEEEEE}
.cookie-panel.cookie-format-folio .a-choice[data-essential]{background:#EEEEEE;border-color:#29292D;color:#29292D}

/* SEAL: central typography in a compact octagonal reading surface. */
.cookie-panel.cookie-format-seal{width:min(288px,calc(100vw - 28px));height:198px;background:#EEEEEE;clip-path:polygon(24px 0,calc(100% - 24px) 0,100% 24px,100% calc(100% - 24px),calc(100% - 24px) 100%,24px 100%,0 calc(100% - 24px),0 24px);overflow:hidden;color:#EEEEEE}
.cookie-panel.cookie-format-seal::before{content:'';position:absolute;inset:1px;background:#3C5431;clip-path:polygon(23px 0,calc(100% - 23px) 0,100% 23px,100% calc(100% - 23px),calc(100% - 23px) 100%,23px 100%,0 calc(100% - 23px),0 23px)}
.cookie-panel.cookie-format-seal .a-seal-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;height:100%;padding:15px 23px 21px}
.cookie-panel.cookie-format-seal .a-seal-brand{font-size:12px;line-height:1.15;letter-spacing:.07em;font-weight:400}
.cookie-panel.cookie-format-seal .a-seal-title{font-size:32px!important;line-height:1!important;letter-spacing:-.035em;margin:2px 0 1px!important;text-align:center}
.cookie-panel.cookie-format-seal .a-seal-title>a{justify-content:center;min-height:44px}
.cookie-panel.cookie-format-seal .a-seal-configure{position:absolute;top:8px;right:27px;color:#EEEEEE}
.cookie-panel.cookie-format-seal .a-seal-question{font-size:12px;line-height:1.35;text-align:center;margin:3px 0 12px}
.cookie-panel.cookie-format-seal .a-seal-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:100%;margin-top:auto}
.cookie-panel.cookie-format-seal .a-choice{border-radius:22px;min-height:44px;padding:9px 6px;font-size:12px}
.cookie-panel.cookie-format-seal .a-choice[data-accept]{background:#EEEEEE;color:#3C5431;border-color:#EEEEEE}
.cookie-panel.cookie-format-seal .a-choice[data-essential]{background:#3C5431;color:#EEEEEE;border-color:#EEEEEE}

/* POSTER: one large functional word over an asymmetric Swiss-style grid. */
.cookie-panel.cookie-format-poster{width:min(308px,calc(100vw - 28px));padding:12px;background:#EEEEEE;border:1px solid #29292D;overflow:hidden}
.cookie-panel.cookie-format-poster .a-poster-masthead{display:grid;grid-template-columns:minmax(0,1fr) 25px;align-items:start;gap:5px}
.cookie-panel.cookie-format-poster .a-poster-title{font-size:68px!important;line-height:.91!important;letter-spacing:-.072em;margin:0!important}
.cookie-panel.cookie-format-poster .a-poster-title>a{display:flex;min-height:62px;max-width:100%;letter-spacing:inherit}
.cookie-panel.cookie-format-poster .a-poster-brand{padding-top:8px;font-size:12px;line-height:1;font-weight:500;letter-spacing:-.015em;color:#3C5431}
.cookie-panel.cookie-format-poster .a-poster-body{display:grid;grid-template-columns:91px minmax(0,1fr);gap:17px;margin-top:11px;border-top:1px solid #29292D;padding-top:10px}
.cookie-panel.cookie-format-poster .a-poster-question-column{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:0}
.cookie-panel.cookie-format-poster .a-poster-question{font-size:12px;line-height:1.35;color:#3C5431}
.cookie-panel.cookie-format-poster .a-poster-configure{margin-top:1px;border:1px solid #29292D;color:#29292D}
.cookie-panel.cookie-format-poster .a-poster-choices{display:grid;grid-template-columns:1fr;grid-template-rows:repeat(2,minmax(44px,1fr));gap:6px}
.cookie-panel.cookie-format-poster .a-choice{min-height:44px;border-radius:0;padding:9px;font-size:12px}
.cookie-panel.cookie-format-poster .a-choice[data-accept]{background:#29292D;border-color:#29292D;color:#EEEEEE}
.cookie-panel.cookie-format-poster .a-choice[data-essential]{background:#EEEEEE;border-color:#29292D;color:#29292D}

@media(hover:hover){
  .cookie-panel:is(.cookie-format-folio,.cookie-format-seal,.cookie-format-poster) h2>a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
  .cookie-panel.cookie-format-folio .a-folio-configure:hover{background:#3C5431;color:#EEEEEE}
  .cookie-panel.cookie-format-folio .a-choice[data-accept]:hover{background:#29292D;border-color:#29292D}
  .cookie-panel.cookie-format-folio .a-choice[data-essential]:hover{background:#29292D;color:#EEEEEE}
  .cookie-panel.cookie-format-seal .a-seal-configure:hover{background:#EEEEEE;color:#3C5431}
  .cookie-panel.cookie-format-seal .a-choice[data-accept]:hover{background:#29292D;border-color:#29292D;color:#EEEEEE}
  .cookie-panel.cookie-format-seal .a-choice[data-essential]:hover{background:#EEEEEE;color:#3C5431}
  .cookie-panel.cookie-format-poster .a-poster-configure:hover{background:#29292D;color:#EEEEEE}
  .cookie-panel.cookie-format-poster .a-choice[data-accept]:hover{background:#3C5431;border-color:#3C5431}
  .cookie-panel.cookie-format-poster .a-choice[data-essential]:hover{background:#29292D;color:#EEEEEE}
}

@media(max-width:359px){
  .cookie-panel:is(.cookie-format-folio,.cookie-format-seal,.cookie-format-poster){right:10px;bottom:calc(10px + env(safe-area-inset-bottom));width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}
  .cookie-panel.cookie-format-folio{max-width:300px}
  .cookie-panel.cookie-format-folio .a-folio-title{font-size:40px!important}
  .cookie-panel.cookie-format-folio .a-folio-sheet{padding-left:11px;padding-right:11px}
  .cookie-panel.cookie-format-seal{max-width:288px}
  .cookie-panel.cookie-format-seal .a-seal-content{padding-left:22px;padding-right:22px}
  .cookie-panel.cookie-format-poster{max-width:308px;padding:11px}
  .cookie-panel.cookie-format-poster .a-poster-title{font-size:64px!important}
  .cookie-panel.cookie-format-poster .a-poster-title>a{min-height:59px}
  .cookie-panel.cookie-format-poster .a-poster-body{grid-template-columns:85px minmax(0,1fr);gap:14px;margin-top:10px;padding-top:10px}
}

@media print{
  .cookie-panel:is(.cookie-format-folio,.cookie-format-seal,.cookie-format-poster){display:none!important}
}
