/* Scoped search/filter surfaces; preserve the page background and top navigation. */
body.account-page #profile-panel .profile-favorite-controls { gap:12px; padding:16px; margin-bottom:18px; border:1px solid #98724e30; border-radius:18px; background:linear-gradient(135deg,#21171c80,#100d10a0); }
body.account-page #profile-panel .profile-favorite-controls label { gap:8px; font-size:14px; color:#d6c4b1; }
body.account-page #profile-panel .profile-favorite-controls :is(input,select),
body.characters-page .controls-container #sortSelect {
 box-sizing:border-box; min-width:0; min-height:48px; padding:12px 16px; border:1px solid #a3825b55 !important; border-radius:15px !important;
 color:#efe4d6; background:linear-gradient(145deg,#241b20,#110e12) !important; font:14px/1.5 Arial,sans-serif; box-shadow:inset 0 1px 0 #ffffff07,0 4px 12px #0002;
 transition:border-color .2s,box-shadow .2s;
}
body.account-page #profile-panel .profile-favorite-controls input::placeholder { color:#9f959c; }
body.account-page #profile-panel .profile-favorite-controls :is(input,select):focus-visible,
body.characters-page .controls-container #sortSelect:focus-visible { outline:2px solid #e0b87a; outline-offset:3px; border-color:#ddae71 !important; }
body.account-page #profile-panel .profile-editor-launch { display:flex; align-items:center; gap:14px; min-height:62px; padding:13px 20px; border-radius:18px !important; border-color:#bc8e6155 !important; background:linear-gradient(110deg,#341b23b0,#171217ed) !important; font-size:15px; }
body.account-page .profile-launch-icon { display:grid; place-items:center; width:34px; height:34px; border-radius:50%; background:#b3516133; color:#edbd88; font-size:21px; flex-shrink:0; }
body.account-page .profile-launch-action { margin-left:auto; color:#d8b68a; font-size:13px; }
body.characters-page .controls-container { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:18px; padding:22px; border:1px solid #98724e45; border-radius:22px; background:linear-gradient(140deg,#21171cd9,#0e0c0fed); box-shadow:0 12px 32px #0004; }
body.characters-page .controls-container .character-search { grid-column:1/-1; box-sizing:border-box; width:100% !important; max-width:none; min-height:54px; gap:12px; padding:0 18px; border:1px solid #a3825b55 !important; border-radius:18px !important; background:linear-gradient(145deg,#241b20,#110e12) !important; box-shadow:inset 0 1px 0 #ffffff07; }
body.characters-page .controls-container #characterSearch { box-sizing:border-box; width:100%; min-width:0; min-height:52px; padding:12px 0; border:0 !important; border-radius:0 !important; outline:none; background:transparent !important; box-shadow:none !important; color:#efe4d6; font:16px/1.5 Arial,sans-serif; }
body.characters-page .controls-container #characterSearch::placeholder { color:#a3979d; }
body.characters-page .character-search:focus-within { border-color:#ddae71 !important; box-shadow:0 0 0 3px #e0b87a18 !important; }
body.characters-page .controls-container .filters { display:flex; justify-content:flex-start; flex-wrap:wrap; gap:9px; min-width:0; }
body.characters-page #character-controls .filters button.filter-btn { min-height:44px; padding:10px 16px; border-radius:999px !important; font-size:14px; }
body.characters-page .controls-container .sort-box { display:grid; gap:8px; min-width:220px; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; }
body.characters-page .controls-container .sort-box label { color:#d6c4b1; font:14px/1.5 Arial,sans-serif; }
body.characters-page .controls-container #sortSelect { width:100%; }
body.characters-page .controls-container select option,body.account-page .profile-favorite-controls select option { background:#191318; color:#efe4d6; }
@media(max-width:1000px) {
 body.characters-page .controls-container { grid-template-columns:minmax(0,1fr); }
 body.characters-page .controls-container .sort-box { width:100%; min-width:0; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:14px; }
}
@media(max-width:600px) {
 body.account-page #profile-panel .profile-favorite-controls { padding:12px; gap:10px; }
 body.characters-page .controls-container { padding:15px; gap:15px; }
 body.characters-page .controls-container .filter-btn { max-width:100%; white-space:normal; font-size:14px; }
 body.characters-page .controls-container .sort-box { grid-template-columns:1fr; gap:8px; }
 body.account-page #profile-panel .profile-editor-launch { padding:12px; gap:10px; font-size:14px; }
 body.account-page .profile-launch-action { display:none; }
}
@media(prefers-reduced-motion:reduce) { body.account-page .profile-favorite-controls :is(input,select),body.characters-page .controls-container #sortSelect { transition:none; } }
