#activity-briefing { width:min(700px,calc(100vw - 32px)); max-width:none; max-height:calc(100dvh - 32px); box-sizing:border-box; padding:0; overflow:auto; background:#111f29; color:var(--ink); border:1px solid #a88443; border-radius:12px; box-shadow:0 20px 70px #0009; font-size:.95rem; line-height:1.35; }
#activity-briefing::backdrop { background:#070e17c9; }
#activity-briefing .briefing-top { position:sticky; top:0; z-index:1; background:#111f29; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:8px 22px; border-bottom:1px solid #344853; }
#activity-briefing .briefing-close { min-width:36px; min-height:36px; padding:5px 9px; font-size:1.5rem; line-height:1; }
#briefing-content { padding:10px 22px; }
#activity-briefing h2 { margin:4px 0; font-size:1.6rem; }
#activity-briefing h3 { margin:0 0 8px; font-size:.85rem; letter-spacing:.09em; text-transform:uppercase; color:#adc0cc; }
#activity-briefing p { line-height:1.35; margin:4px 0; }
#activity-briefing .briefing-identity { display:flex; gap:16px; align-items:center; margin-bottom:12px; }
#activity-briefing .briefing-art img { display:block; width:80px; height:80px; object-fit:contain; }
#activity-briefing .ready { color:#7ddac3; }
#activity-briefing .blocked { color:#efba52; }
#activity-briefing .briefing-warning { background:#392b1b; border:1px solid #ad8141; padding:12px 16px; border-radius:6px; margin-bottom:16px; }
#activity-briefing .briefing-warning ul { margin:6px 0 0; padding-left:20px; }
#activity-briefing .briefing-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px 20px; margin:0; }
#activity-briefing dt { color:#9eb3c1; font-size:.85rem; margin-bottom:4px; }
#activity-briefing dd { margin:0; font-weight:700; overflow-wrap:anywhere; }
#activity-briefing .briefing-supplies { padding:6px 0; color:#adc0cc; font-size:.9rem; }
#activity-briefing section { border-top:1px solid #344853; padding-top:10px; margin-top:10px; }
#activity-briefing .briefing-equipment { display:grid; grid-template-columns:80px minmax(0,1fr); gap:16px; align-items:center; }
#activity-briefing .briefing-tool-art img { display:block; width:80px; height:80px; object-fit:contain; }
#activity-briefing .briefing-comparison { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
#activity-briefing .briefing-comparison > button { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:4px 10px; border:1px solid #405663; border-radius:6px; padding:10px 12px; background:#111f29; color:var(--ink); text-align:left; font-weight:400; }
#activity-briefing .briefing-comparison > button:last-child { border-color:#a88443; background:#2d291e; }
#activity-briefing .briefing-comparison > button:hover:not(:disabled) { background:#20333d; border-color:#82e4d0; }
#activity-briefing .briefing-comparison > button:last-child:hover:not(:disabled) { background:#3c3321; border-color:#ffdb88; }
#activity-briefing .briefing-comparison strong { font-size:1.2rem; }
#activity-briefing .briefing-comparison span:not(.eyebrow) { grid-column:1 / -1; font-size:.85rem; color:#bfd0d9; }
#activity-briefing .briefing-boost-section > p { font-size:.85rem; color:#adc0cc; margin-top:8px; }
#activity-briefing .briefing-footer { position:sticky; bottom:0; padding:10px 22px 12px; border-top:1px solid #405663; background:#111f29; }
#activity-briefing .briefing-footer > div { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
#activity-briefing .briefing-footer button { min-height:38px; }
#activity-briefing :is(#briefing-start,#briefing-boost):not(:disabled) { cursor:pointer; transition:background .15s,border-color .15s,box-shadow .15s,transform .15s; }
#activity-briefing #briefing-start { background:linear-gradient(#234640,#152b2b); border-color:#70d4bc; color:#e1fff6; box-shadow:inset 0 1px 0 #bcffe433; }
#activity-briefing #briefing-boost { background:linear-gradient(#eab84f,#cf9a35); color:#171d23; border-color:#efba52; box-shadow:inset 0 1px 0 #fff1bd99; }
#activity-briefing #briefing-start:is(:hover,:focus-visible):not(:disabled) { background:linear-gradient(#326659,#20483f); border-color:#b0ffe4; color:#fff; box-shadow:inset 0 1px 0 #c3ffe85c,0 0 0 2px #70d4bc30,0 0 15px #70d4bc55; transform:translateY(-1px); }
#activity-briefing #briefing-boost:is(:hover,:focus-visible):not(:disabled) { background:linear-gradient(#ffdb82,#efb84e); border-color:#fff0b7; color:#171d23; box-shadow:inset 0 1px 0 #fff5d3,0 0 0 2px #efba5230,0 0 15px #efba5255; transform:translateY(-1px); }
#activity-briefing :is(#briefing-start,#briefing-boost):active:not(:disabled) { transform:translateY(1px); }
#activity-briefing :is(#briefing-start,#briefing-boost):disabled { background:#1b2831; border-color:#344853; color:#9eb0bf; box-shadow:none; transform:none; }
@media(prefers-reduced-motion:reduce) { #activity-briefing :is(#briefing-start,#briefing-boost):not(:disabled) { transition:none; transform:none; } }
body.reduce-motion #activity-briefing :is(#briefing-start,#briefing-boost):not(:disabled) { transition:none; transform:none; }
#activity-briefing #briefing-cancel { width:100%; min-height:32px; margin-top:6px; padding:6px 12px; }
#activity-briefing #briefing-start-status { font-size:.85rem; color:#adc0cc; margin:0 0 6px; }
#activity-briefing button:focus-visible { outline:3px solid #82e4d0; outline-offset:3px; }
#activity-briefing button:disabled { opacity:.45; cursor:not-allowed; }
@media(max-width:600px) {
  #activity-briefing { width:100%; max-height:94dvh; margin:auto 0 0; border-radius:12px 12px 0 0; }
  #activity-briefing .briefing-top,#briefing-content,#activity-briefing .briefing-footer { padding-left:16px; padding-right:16px; }
  #activity-briefing .briefing-stats { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
  #activity-briefing h2 { font-size:1.35rem; }
  #activity-briefing .briefing-art img { width:80px; height:80px; }
  #activity-briefing .briefing-identity { gap:12px; }
  #activity-briefing .briefing-equipment { grid-template-columns:80px minmax(0,1fr); gap:12px; }
  #activity-briefing .briefing-tool-art img { width:80px; height:80px; }
  #activity-briefing .briefing-comparison > button { padding:10px; }
}
