/* Shared age entry: keep the explicit 18+ confirmation in a compact, readable card. */
:is(#browse-age-dialog,#age-dialog).age-entry-dialog{
  box-sizing:border-box;width:min(420px,calc(100% - 32px));max-height:calc(100dvh - 32px);
  margin:auto;padding:0;border:1px solid #3c4941;border-radius:18px;background:#151c18;
  color:#eef1eb;box-shadow:0 20px 72px #0009;overflow:auto;
}
:is(#browse-age-dialog,#age-dialog) .age-entry-panel{box-sizing:border-box;position:relative;margin:0;padding:24px}
:is(#browse-age-dialog,#age-dialog) .age-entry-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}
:is(#browse-age-dialog,#age-dialog) .age-entry-mark{display:flex;align-items:center;gap:9px;color:#d9bd7b;flex:0 0 auto}
:is(#browse-age-dialog,#age-dialog) .age-entry-film{display:block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
:is(#browse-age-dialog,#age-dialog) .age-entry-film path:last-child{fill:currentColor;stroke:none}
:is(#browse-age-dialog,#age-dialog) .age-entry-badge{display:grid;place-items:center;box-sizing:border-box;width:40px;height:40px;border:1px solid #7a6943;border-radius:50%;background:#2d291d;font:700 15px/1 var(--sans,system-ui);letter-spacing:0}
:is(#browse-age-dialog,#age-dialog) .age-entry-top .language-picker{position:relative;inset:auto;width:auto;min-width:0;max-width:160px;margin:0;flex:0 1 auto;z-index:3}
:is(#browse-age-dialog,#age-dialog) .age-entry-top .language-control{box-sizing:border-box;width:auto;min-width:102px;height:44px;padding:0 10px;gap:7px;font-size:13px}
:is(#browse-age-dialog,#age-dialog) .age-entry-top .language-menu{inset-inline-start:auto;inset-inline-end:0;top:calc(100% + 6px);width:190px;max-width:calc(100vw - 80px);max-height:min(240px,calc(100dvh - 160px));overflow-y:auto}
:is(#browse-age-dialog,#age-dialog) .age-entry-panel>h2{margin:0 0 8px;font-family:var(--sans,system-ui);font-size:24px;line-height:1.3;font-weight:750;letter-spacing:0;text-align:start;overflow-wrap:anywhere}
:is(#browse-age-dialog,#age-dialog) .age-entry-panel>p:not(.form-error){margin:0;color:#b5c0b8;font-size:14px;line-height:1.6;text-align:start}
:is(#browse-age-dialog,#age-dialog) :is(.age-check,.check-row){box-sizing:border-box;display:flex;align-items:flex-start;gap:10px;min-height:48px;margin:18px 0 12px;padding:12px;border:1px solid #3c4b41;border-radius:9px;background:#1c2921;color:#edf1e9;font-size:14px;line-height:1.5;cursor:pointer;text-align:start}
:is(#browse-age-dialog,#age-dialog) :is(.age-check,.check-row) input{flex:0 0 20px;width:20px;height:20px;margin:0;accent-color:#31d4a4;cursor:pointer}
:is(#browse-age-dialog,#age-dialog) .form-error{min-height:0;margin:0 0 12px;color:#ffc1ad;font-size:13px;line-height:1.5;overflow-wrap:anywhere}
:is(#browse-age-dialog,#age-dialog) .form-error:empty{display:none}
:is(#browse-age-dialog,#age-dialog) button[type=submit]{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;min-height:48px;height:auto;padding:12px 16px;border:0;border-radius:9px;background:#24cfa3;color:#061b13;font:750 15px/1.5 var(--sans,system-ui);letter-spacing:0;white-space:normal}
:is(#browse-age-dialog,#age-dialog) button[type=submit]:hover{background:#43ddb4}
:is(#browse-age-dialog,#age-dialog) button[type=submit]:disabled{cursor:wait;opacity:.65}
#age-dialog #age-decline{box-sizing:border-box;width:100%;min-height:44px;margin:6px 0 0;padding:10px;border:0;border-radius:8px;background:transparent;color:#aeb9b1;font:500 13px/1.5 var(--sans,system-ui);text-align:center}
#age-dialog #age-decline:hover{color:#eef1eb;background:#ffffff08}
:is(#browse-age-dialog,#age-dialog) :is(button,input):focus-visible{outline:2px solid #d9bd7b;outline-offset:3px}
@media(max-width:380px){
  :is(#browse-age-dialog,#age-dialog) .age-entry-panel{padding:20px}
  :is(#browse-age-dialog,#age-dialog) .age-entry-panel>h2{font-size:22px}
  :is(#browse-age-dialog,#age-dialog) .age-entry-top{gap:8px;margin-bottom:16px}
}
