.flashcard-deck-main{grid-template-columns:minmax(220px,.9fr) auto minmax(360px,1.35fr)}
.flashcard-deck-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;align-items:center}
.flashcard-deck-actions .btn{min-height:44px;white-space:nowrap}

.flashcard-review-dialog{
  --card-paper:#fff0ad;
  --card-paper-back:#ffe993;
  --card-edge:#d9c16b;
  --card-tape:#ead28a;
  --card-ink:#443b17;
}
.flashcard-review-dialog.flashcard-theme-0{--card-paper:#fff0ad;--card-paper-back:#ffe58a;--card-edge:#d9c16b;--card-tape:#ead28a;--card-ink:#443b17}
.flashcard-review-dialog.flashcard-theme-1{--card-paper:#f7d7e3;--card-paper-back:#f1c5d6;--card-edge:#d6a7bb;--card-tape:#ecd58a;--card-ink:#56243b}
.flashcard-review-dialog.flashcard-theme-2{--card-paper:#d9eff6;--card-paper-back:#c8e7f1;--card-edge:#a8cdd9;--card-tape:#e7d281;--card-ink:#183f51}
.flashcard-review-dialog.flashcard-theme-3{--card-paper:#e6e0f6;--card-paper-back:#d8cff0;--card-edge:#bbb0dd;--card-tape:#ecd68e;--card-ink:#3e315f}
.flashcard-review-dialog.flashcard-theme-4{--card-paper:#dff0dc;--card-paper-back:#cce7c8;--card-edge:#afd0aa;--card-tape:#ead486;--card-ink:#244c27}

.flashcard-review-dialog .flashcard{
  height:min(62vh,620px);
  min-height:455px;
}
.flashcard-review-dialog .flashcard-sheet{
  position:absolute;
  overflow:auto;
  border:1px solid var(--card-edge);
  border-left:7px solid var(--card-edge);
  border-radius:7px 22px 22px 7px;
  color:var(--card-ink);
  background:linear-gradient(90deg,rgba(255,255,255,.18),transparent 9%),var(--card-paper);
  box-shadow:0 16px 32px rgba(32,49,59,.16),0 2px 5px rgba(32,49,59,.11);
}
.flashcard-review-dialog .flashcard-back{
  background:linear-gradient(90deg,rgba(255,255,255,.14),transparent 9%),var(--card-paper-back);
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  grid-auto-rows:min-content;
  align-content:start;
  gap:10px 12px;
  padding:70px 24px 22px;
}
.flashcard-review-dialog .flashcard-sheet::before{
  content:"";
  position:absolute;
  top:8px;
  left:50%;
  width:92px;
  height:19px;
  transform:translateX(-50%) rotate(-1.5deg);
  border-radius:3px;
  background:color-mix(in srgb,var(--card-tape) 74%,transparent);
  box-shadow:0 1px 2px rgba(80,66,18,.12);
  pointer-events:none;
}
.flashcard-review-dialog .flashcard-sheet::after{
  content:"";
  position:absolute;
  right:0;
  top:0;
  width:43px;
  height:43px;
  background:linear-gradient(225deg,rgba(255,255,255,.68) 0 49%,rgba(0,0,0,.08) 50% 53%,transparent 54%);
  border-radius:0 21px 0 0;
  pointer-events:none;
}
.flashcard-review-dialog .flashcard-front{
  justify-content:center;
  gap:20px;
  padding:78px 28px 32px;
}
.flashcard-review-dialog .flashcard-face-label{
  background:rgba(255,255,255,.56);
  border:1px solid color-mix(in srgb,var(--card-edge) 70%,transparent);
  color:var(--card-ink);
}
.flashcard-card-brand{
  position:absolute;
  top:28px;
  right:64px;
  max-width:48%;
  text-align:right;
  color:var(--card-ink);
  opacity:.64;
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.flashcard-review-dialog .flashcard-front-text{
  color:var(--card-ink);
  text-align:center;
  font-size:clamp(1.65rem,4vw,2.65rem);
  line-height:1.2;
  max-width:780px;
}
.flashcard-front-meta{
  width:min(780px,100%);
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
  margin-top:10px;
}
.flashcard-front-meta>span{
  display:grid;
  gap:4px;
  min-width:0;
  padding:10px 11px;
  border:1px solid color-mix(in srgb,var(--card-edge) 72%,transparent);
  border-radius:13px;
  background:rgba(255,255,255,.5);
  text-align:left;
}
.flashcard-front-meta strong{
  font-size:.68rem;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--card-ink);
  opacity:.72;
}
.flashcard-front-meta>span>span{
  font-size:.83rem;
  line-height:1.3;
  color:var(--card-ink);
  font-weight:850;
  overflow-wrap:anywhere;
}
.flashcard-real-card-hint{
  color:var(--card-ink);
  opacity:.68;
  font-size:.78rem;
  font-weight:850;
}
.flashcard-review-dialog .flashcard-answer{
  grid-column:1/-1;
  color:var(--card-ink);
  font-size:clamp(1.25rem,2.4vw,1.85rem);
  line-height:1.3;
  padding:0 0 4px;
}
.flashcard-review-dialog .flashcard-back-section{
  margin:0;
  padding:10px 12px!important;
  border:1px solid color-mix(in srgb,var(--card-edge) 68%,transparent)!important;
  border-radius:13px;
  background:rgba(255,255,255,.48);
  color:var(--card-ink);
  font-size:.9rem;
  line-height:1.4;
}
.flashcard-review-dialog .flashcard-back-section strong{color:var(--card-ink)}
.flashcard-review-dialog .coach-back{
  grid-column:1/-1;
  background:rgba(255,249,223,.66);
}
.flashcard-review-dialog .flashcard-memory-callout{
  background:rgba(255,248,203,.66);
}
.flashcard-review-dialog .flashcard-review-map{
  grid-column:1/-1;
  gap:7px;
  padding:10px 12px;
  border-color:color-mix(in srgb,var(--card-edge) 70%,transparent);
  background:rgba(255,255,255,.5);
  color:var(--card-ink);
  font-size:.82rem;
  line-height:1.35;
}
.flashcard-review-dialog .flashcard-review-chip{
  background:rgba(255,255,255,.65);
  border-color:color-mix(in srgb,var(--card-edge) 70%,transparent);
  color:var(--card-ink);
  font-size:.69rem;
}
.flashcard-review-dialog .flashcard-resource-list{
  display:grid;
  gap:4px;
  margin-top:5px;
}
.flashcard-review-dialog .flashcard-resource-list span{
  display:block;
  padding:0 0 0 13px;
  border:0;
  border-radius:0;
  background:transparent;
  color:var(--card-ink);
  font-size:.73rem;
  font-weight:700;
  line-height:1.32;
  position:relative;
}
.flashcard-review-dialog .flashcard-resource-list span::before{
  content:"•";
  position:absolute;
  left:2px;
  top:0;
}
.flashcard-review-dialog .flashcard-resource-list span:not(:last-child)::after{content:""}

@media(max-width:980px){
  .flashcard-deck-main{grid-template-columns:1fr auto}
  .flashcard-deck-actions{grid-column:1/-1;justify-content:flex-start}
}
@media(max-width:820px){
  .flashcard-review-dialog .flashcard{height:min(61vh,600px);min-height:440px}
  .flashcard-front-meta{grid-template-columns:1fr 1fr}
  .flashcard-front-meta>span:last-child{grid-column:1/-1}
}
@media(max-width:600px){
  .flashcard-deck-main{grid-template-columns:minmax(0,1fr)}
  .flashcard-deck-main>*{min-width:0;max-width:100%}
  .flashcard-deck-select select,.flashcard-library-summary{width:100%;min-width:0;max-width:100%}
  .flashcard-deck-actions{display:grid;grid-template-columns:1fr 1fr;width:100%;min-width:0}
  .flashcard-deck-actions .btn{min-width:0;white-space:normal}
  .flashcard-deck-actions .btn{width:100%}
  .flashcard-review-dialog .flashcard{height:56vh;min-height:430px}
  .flashcard-review-dialog .flashcard-front{padding:72px 17px 24px}
  .flashcard-review-dialog .flashcard-back{grid-template-columns:1fr;padding:66px 16px 22px}
  .flashcard-review-dialog .flashcard-answer,.flashcard-review-dialog .coach-back,.flashcard-review-dialog .flashcard-review-map{grid-column:1}
  .flashcard-front-meta{grid-template-columns:1fr;gap:7px}
  .flashcard-front-meta>span:last-child{grid-column:1}
  .flashcard-card-brand{right:53px;top:25px;max-width:55%;font-size:.59rem}
}
@media(max-width:390px){
  .flashcard-deck-actions{grid-template-columns:1fr}
  .flashcard-review-dialog .flashcard{height:54vh;min-height:405px}
}
