/* BRM Traitors Workshop — notification preferences.
   Give labels readable type and keep snooze controls inside the available panel width. */
#settingsPanel .notification-actions{
 display:grid;
 grid-template-columns:minmax(0,1fr);
 gap:0;
 margin:0 0 8px;
}
#settingsPanel #pushCategoryDisclosure{
 margin:16px 0 20px;
 border:1px solid #987650a8;
 border-radius:10px;
 background:linear-gradient(145deg,#291f29,#181820);
 overflow:hidden;
 min-width:0;
 container-type:inline-size;
}
#settingsPanel #pushCategoryDisclosure > summary{
 padding:15px 17px;
 margin:0;
 font-size:16px;
 line-height:1.4;
 font-weight:650;
 color:#eed0a0;
 cursor:pointer;
}
#settingsPanel #pushCategoryDisclosure[open] > summary{
 border-bottom:1px solid #b28a5655;
}
#settingsPanel .push-category-list{
 padding:2px 17px 6px;
 min-width:0;
}
#settingsPanel .push-category-row{
 display:grid;
 grid-template-columns:minmax(0,1fr) minmax(195px,240px);
 align-items:center;
 column-gap:24px;
 row-gap:7px;
 min-width:0;
 padding:14px 0;
 border-bottom:1px solid #9d785237;
}
#settingsPanel .push-category-row:last-child{border-bottom:0}
#settingsPanel .push-category-row > div{min-width:0}
#settingsPanel .push-category-row label{
 display:block;
 margin:0;
 padding:0;
 color:#f0dfc9;
 font-size:15px;
 line-height:1.35;
 font-weight:600;
 overflow-wrap:break-word;
}
#settingsPanel .push-category-row small{
 display:block;
 margin:5px 0 0;
 color:#cbb69a;
 font-size:12px;
 line-height:1.45;
 overflow-wrap:break-word;
}
#settingsPanel .push-category-row small[hidden]{display:none}
#settingsPanel .push-category-row select{
 display:block;
 width:100%;
 max-width:none;
 min-width:0;
 min-height:46px;
 height:auto;
 margin:0;
 padding:10px 30px 10px 12px;
 box-sizing:border-box;
 border:1px solid #ae875b;
 border-radius:7px;
 background:#231b27;
 color:#f7ebd6;
 font-family:var(--app-font);
 font-size:15px;
 font-weight:500;
 line-height:1.35;
 text-overflow:ellipsis;
}
#settingsPanel .push-category-row select:disabled{opacity:.55}
@container (max-width:540px){
 #settingsPanel .push-category-list{padding:2px 14px 6px}
 #settingsPanel .push-category-row{
  grid-template-columns:minmax(0,1fr);
  row-gap:9px;
  padding:13px 0 15px;
 }
 #settingsPanel .push-category-row select{
  width:100%;
  min-width:0;
  font-size:16px;
 }
}
@media (max-width:700px){
 #settingsPanel #pushCategoryDisclosure > summary{font-size:16px;padding:14px}
 #settingsPanel .push-category-list{padding:2px 14px 6px}
 #settingsPanel .push-category-row{grid-template-columns:minmax(0,1fr);row-gap:9px;padding:12px 0 14px}
 #settingsPanel .push-category-row select{width:100%;min-width:0;font-size:16px}
}
@media (max-width:370px){
 #settingsPanel .push-category-list{padding-inline:11px}
 #settingsPanel .push-category-row label{font-size:14px}
 #settingsPanel .push-category-row select{padding-inline:10px 25px}
}

/* Workshop settings: both disclosure panels use one consistent castle treatment.
   Override the older high-specificity password styling without touching other pages. */
body.castle-game #app #settingsPanel :is(#pushCategoryDisclosure,#passwordDisclosure){
 margin:16px 0 20px;
 border:1px solid #987650a8;
 border-radius:10px;
 background:linear-gradient(145deg,#291f29,#181820);
 min-width:0;
 overflow:hidden;
}
body.castle-game #app #settingsPanel :is(#pushCategoryDisclosure,#passwordDisclosure) > summary{
 display:flex;
 justify-content:space-between;
 align-items:center;
 gap:14px;
 min-height:52px;
 padding:14px 17px;
 margin:0;
 cursor:pointer;
 color:#eed0a0;
 font:650 16px/1.4 var(--app-font);
 list-style:none;
 user-select:none;
}
body.castle-game #app #settingsPanel :is(#pushCategoryDisclosure,#passwordDisclosure) > summary::-webkit-details-marker{display:none}
body.castle-game #app #settingsPanel :is(#pushCategoryDisclosure,#passwordDisclosure) > summary::after{
 content:"";
 display:block;
 flex:0 0 9px;
 width:9px;
 height:9px;
 border-right:2px solid #d4b77e;
 border-bottom:2px solid #d4b77e;
 margin:0 3px 4px 0;
 transform:rotate(45deg);
 transition:transform .18s ease;
}
body.castle-game #app #settingsPanel :is(#pushCategoryDisclosure,#passwordDisclosure)[open] > summary::after{
 transform:rotate(225deg);
 margin-bottom:-3px;
}
body.castle-game #app #settingsPanel :is(#pushCategoryDisclosure,#passwordDisclosure)[open] > summary{
 border-bottom:1px solid #b28a5655;
}
body.castle-game #app #settingsPanel #passwordDisclosure form{padding:16px 17px 18px;gap:10px}
body.castle-game #app #settingsPanel #passwordDisclosure #passwordStatus{padding:0 17px 14px}
body.castle-game #app #settingsPanel #pushCategoryDisclosure .notification-actions{
 display:grid;
 grid-template-columns:minmax(0,1fr);
 width:100%;
 padding:15px 17px 4px;
 margin:0;
 gap:0;
}
body.castle-game #app #settingsPanel #pushCategoryDisclosure #enablePush{
 display:flex;
 justify-content:center;
 align-items:center;
 width:100%;
 max-width:none;
 min-width:0;
 min-height:48px;
 height:auto;
 padding:10px 13px!important;
 margin:0!important;
 font:650 15px/1.35 var(--app-font);
 text-align:center;
 white-space:normal;
}
body.castle-game #app #settingsPanel #pushCategoryDisclosure #pushStatus{
 display:block;
 margin:9px 0 8px;
 padding:0;
 color:#cdbca1;
 font-size:12px;
 line-height:1.45;
}
body.castle-game #app #settingsPanel #pushCategoryDisclosure #pushStatus:empty{display:none}
@media(max-width:700px){
 body.castle-game #app #settingsPanel :is(#pushCategoryDisclosure,#passwordDisclosure) > summary{
  padding:14px;
  font-size:16px;
 }
 body.castle-game #app #settingsPanel #pushCategoryDisclosure .notification-actions{
  padding:14px 14px 5px;
 }
 body.castle-game #app #settingsPanel #pushCategoryDisclosure #enablePush{
  font-size:15px;
 }
}
