/* AI snag writer: on top of /snag-list-template/tool.css */
.writer{display:grid;grid-template-columns:260px 1fr;gap:18px}
@media(max-width:640px){.writer{grid-template-columns:1fr}}
.shot{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;border:2px dashed #C9C3B6;border-radius:12px;background:#FBFAF7;cursor:pointer;overflow:hidden;text-align:center;padding:12px}
@media(max-width:640px){.shot{aspect-ratio:4/3}}
.shot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.shot .ph{position:relative;z-index:1;font-weight:700;color:var(--ember-d);font-size:16px}
.shot.has{border-style:solid;border-color:var(--line)}
.shot.has .ph{position:absolute;left:8px;bottom:8px;background:rgba(10,31,61,.8);color:#fff;font-size:12.5px;padding:4px 9px;border-radius:6px}
.shot:focus-within{outline:2px solid var(--ember);outline-offset:2px}
.opts{display:grid;gap:14px;align-content:start}
.kind span{display:block;font-size:13px;font-weight:600;color:var(--ink);margin-bottom:5px}
.kind div{display:flex;border:1px solid #CFC9BC;border-radius:8px;overflow:hidden}
.kind button{flex:1;font:inherit;font-size:14px;font-weight:600;background:#fff;color:var(--muted);border:0;padding:10px 12px;cursor:pointer}
.kind button+button{border-left:1px solid #CFC9BC}
.kind button[aria-pressed=true]{background:var(--ink);color:#fff}
.opt{font-weight:400;color:var(--muted)}
.ts{min-height:0}
.go{width:100%;padding:14px;font-size:16px}
.go.busy::after{content:'';width:14px;height:14px;border:2px solid rgba(255,255,255,.5);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;margin-left:8px}
@keyframes spin{to{transform:rotate(360deg)}}
.hint.err{color:var(--safety)}
.result{margin-top:16px;border-color:#D7CFC0}
.rhead{display:flex;gap:10px;align-items:center;margin-bottom:8px}
.sevbadge{font-size:12px;font-weight:700;color:#fff;border-radius:5px;padding:3px 9px}
.sevbadge.Critical{background:var(--safety)}.sevbadge.Major{background:var(--ember-d)}.sevbadge.Minor{background:#56657A}
.sevbadge.none{background:#9AA4B2}
.trade{font-size:13px;font-weight:600;color:var(--muted)}
.result h2{margin:0 0 6px;font-size:22px}
.result p{margin:0}
.extra{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}
.extra h3{font-size:15px;margin-bottom:6px}
.extra ol{margin:0;padding-left:20px;font-size:14.5px}
.extra li{margin-bottom:8px}
.extra li b{color:var(--ink)}
.rbtns{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:16px}
.small.left{font-size:12.5px;color:var(--muted);margin:10px 0 0}
.tips{padding-left:20px}.tips li{margin-bottom:6px}
