.frame-stock-badge { display:block; margin-top:5px; font-size:11px; color:#956a3d; font-weight:500; }
.frame-stock-badge[hidden], .frame-stock-notice[hidden], .frame-stock-summary[hidden] { display:none; }
.frame-stock-notice { width:min(100%,460px); margin:20px auto 0; padding:18px 20px; text-align:left; background:#f7f0e5; border:1px solid #e6d9c4; border-radius:10px; color:#61513e; font-size:13px; line-height:1.8; animation:frame-stock-appear .2s ease-out; }
.frame-stock-notice h3 { margin:0 0 6px; font-size:14px; font-weight:600; }
.frame-stock-notice p { margin:5px 0; }
.frame-stock-notice strong { color:#805c31; font-size:17px; }
.frame-stock-ack { display:flex; align-items:flex-start; gap:8px; padding-top:12px; margin-top:12px; border-top:1px solid #e2d6c4; cursor:pointer; }
.frame-stock-ack input { flex:none; width:18px; height:18px; margin:3px 0; accent-color:#c4704b; }
.frame-stock-notice { scroll-margin-top:85px; scroll-margin-bottom:105px; }
#step4:has(.frame-stock-notice:not([hidden])) { padding-bottom:105px; }
.frame-stock-error { color:#9e412c; margin-top:10px; }
.frame-stock-summary { margin:16px 0; padding:14px 16px; border-radius:8px; background:#f7f0e5; color:#61513e; font-size:13px; line-height:1.8; }
.frame-stock-notice button { padding:6px 12px; border:1px solid #bba88c; border-radius:6px; background:#fff; color:#61513e; font:inherit; cursor:pointer; }
@keyframes frame-stock-appear { from { opacity:0; transform:translateY(-5px); } to { opacity:1; transform:translateY(0); } }
@media (prefers-reduced-motion:reduce) { .frame-stock-notice { animation:none; } }
@media (max-width:480px) { .frame-stock-notice { padding:16px; } }
