/* Proposal writer (/proposal-writer). Builds on seo-audit.css (sa-block, sa-tabs, sa-note …). */
.pw-small { font-size: .85rem; margin-top: .8rem; }
.pw-go { display: flex; flex-wrap: wrap; align-items: center; gap: .8rem 1.2rem; }
.pw-wait { display: flex; align-items: center; gap: .7rem; color: var(--ink-2); font-weight: 500; }
.pw-wait[hidden], .pw-result[hidden], .pw-subject[hidden] { display: none !important; }
#pw-input { min-height: 170px; }

/* Result */
.pw-result { border-color: #E3D2F7; box-shadow: var(--shadow); scroll-margin-top: 96px; }
.pw-result-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; flex-wrap: wrap; }
.pw-result-head h2 { overflow-wrap: anywhere; }
.pw-result-head .eyebrow { margin-bottom: .3rem; }
.pw-status { display: flex; align-items: center; gap: .5rem; font: 600 .85rem var(--font-head); color: var(--ink-2); }
.pw-status select { border: 1.5px solid var(--border); border-radius: 10px; padding: .45rem .6rem; font: 600 .9rem var(--font-head); background: #fff; color: var(--ink); }
.pw-facts, .pw-stats { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .9rem; }
.pw-fact { display: inline-flex; align-items: center; gap: .45rem; background: var(--lavender); color: var(--ink); border-radius: 99px; padding: .32rem .8rem; font-size: .88rem; font-weight: 500; overflow-wrap: anywhere; }
.pw-fact small { font: 700 .68rem var(--font-head); letter-spacing: .06em; text-transform: uppercase; color: var(--primary); }
.pw-needs { margin-top: 1rem; font-size: .93rem; color: var(--ink-2); }
.pw-needs strong { color: var(--ink); font-family: var(--font-head); font-size: .9rem; }
.pw-needs ul, .pw-fill ul, .pw-improve ul { list-style: disc; padding-left: 1.2rem; margin: .4rem 0; display: grid; gap: .2rem; }
.pw-tabs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .3rem; background: var(--lavender); padding: .3rem; border-radius: 12px; margin-top: 1.3rem; }
.pw-tabs button { border: 0; background: transparent; padding: .6rem .4rem; border-radius: 9px; font: 600 .88rem var(--font-head); color: var(--ink-2); cursor: pointer; }
.pw-tabs button.is-on { background: #fff; color: var(--primary); box-shadow: var(--shadow-sm); }
.pw-tabhelp { margin: .7rem 0; font-size: .9rem; }
.pw-subject { display: flex; align-items: center; gap: .6rem; margin-bottom: .6rem; }
.pw-subject span { font: 600 .82rem var(--font-head); color: var(--ink-2); white-space: nowrap; }
.pw-subject input, .pw-own input { flex: 1; min-width: 0; border: 1.5px solid var(--border); border-radius: 10px; padding: .6rem .8rem; font: inherit; background: #fff; }
.pw-text { width: 100%; border: 1.5px solid #E3D2F7; border-radius: var(--radius); padding: 1rem 1.1rem; font: 400 1rem/1.65 var(--font-body); color: var(--ink); background: #FDFBFF; resize: vertical; }
.pw-text:focus, .pw-subject input:focus, .pw-own input:focus { outline: none; border-color: var(--accent); box-shadow: 0 0 0 4px rgba(157,78,221,.14); }
.pw-bar { display: flex; justify-content: space-between; align-items: center; gap: .8rem; flex-wrap: wrap; margin-top: .7rem; }
.pw-bar .sa-muted { font-size: .85rem; }
.pw-bar [hidden] { display: none; }
.pw-fill, .pw-improve { margin-top: 1rem; }
.pw-fill span { font-size: .88rem; }
.pw-refine { margin-top: 1.2rem; padding-top: 1.1rem; border-top: 1px solid var(--border); display: grid; gap: .7rem; }
.pw-refine[hidden] { display: none; }
.pw-refine > strong { font-family: var(--font-head); font-size: .95rem; }
.pw-own { display: flex; gap: .5rem; align-items: center; }

/* About you */
.pw-about > summary { display: flex; gap: .9rem; align-items: center; cursor: pointer; list-style: none; }
.pw-about > summary::-webkit-details-marker { display: none; }
.pw-about > summary .sa-card-ic { margin: 0; flex-shrink: 0; }
.pw-about > summary strong { display: block; font: 700 1.3rem var(--font-head); color: var(--ink); }
.pw-about > summary small { font-size: .9rem; }
.pw-about > summary::after { content: ""; margin-left: auto; width: 10px; height: 10px; border-right: 2px solid var(--primary); border-bottom: 2px solid var(--primary); transform: rotate(45deg); transition: transform .2s; flex-shrink: 0; }
.pw-about[open] > summary::after { transform: rotate(-135deg); }
.pw-site { margin-top: 1.2rem; padding: 1rem 1.1rem; background: var(--bg-soft); border: 1px solid var(--border); border-radius: var(--radius-sm); display: grid; gap: .5rem; }
.pw-site label { font: 600 .9rem var(--font-head); }
.pw-site p { font-size: .88rem; }

/* Saved proposals */
.pw-list { display: grid; margin-top: 1rem; }
.pw-row { display: flex; align-items: center; gap: .8rem; padding: .75rem 0; border-top: 1px solid var(--border); }
.pw-row-main { flex: 1; min-width: 0; text-align: left; background: none; border: 0; padding: 0; cursor: pointer; display: grid; gap: .15rem; font: inherit; color: var(--ink); }
.pw-row-main strong { font-family: var(--font-head); font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pw-row-main:hover strong { color: var(--primary); }
.pw-row-main span { font-size: .85rem; }
.pw-st { font: 600 .75rem var(--font-head); padding: .25rem .65rem; border-radius: 99px; background: #F3F4F6; color: var(--ink-2); white-space: nowrap; }
.pw-st-sent { background: #DBEAFE; color: #1E40AF; }
.pw-st-won { background: #D1FAE5; color: #065F46; }
.pw-st-lost { background: #FEE2E2; color: #991B1B; }

@media (max-width: 640px) {
  .pw-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pw-own, .pw-subject { flex-wrap: wrap; }
  .pw-own input, .pw-subject input { flex-basis: 100%; }
  .pw-bar .sa-actions, .pw-bar .sa-actions .btn { width: 100%; }
}
