#public-watchlists-tab { max-width: 1320px; margin: 0 auto; padding: 32px 24px; }
#public-watchlists-tab .pw-heading { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 20px; }
#public-watchlists-tab h1 { font-size: 32px; margin: 6px 0 10px; }
#public-watchlists-tab h2 { font-size: 21px; margin: 0 0 12px; }
#public-watchlists-tab p { color: var(--sx-muted); line-height: 1.6; }
#public-watchlists-tab .pw-eyebrow { font-size: 11px; letter-spacing: .14em; }
#public-watchlists-tab .pw-empty { text-align: center; padding: 64px 24px; }
#public-watchlists-tab a { color: var(--sx-accent); display: inline-block; margin: 12px; text-decoration: underline; }
#public-watchlists-tab .pw-lists { display: grid; grid-template-columns: repeat(auto-fit,minmax(260px,1fr)); gap: 16px; }
#public-watchlists-tab .pw-list { text-align: left; padding: 24px; color: var(--sx-text); cursor: pointer; }
#public-watchlists-tab .pw-list span { float: right; }
#public-watchlists-tab .pw-editor { padding: 24px; }
#public-watchlists-tab .pw-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-bottom: 24px; }
#public-watchlists-tab .pw-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
#public-watchlists-tab .pw-toolbar :is(button, summary),
#public-watchlists-tab .pw-add :is(button, .pw-upload),
#public-watchlists-tab .pw-import a { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; min-height: 44px; padding: 10px 18px; line-height: 1.25; font-size: 14px; margin: 0; border: 1px solid transparent; }
#public-watchlists-tab .pw-save-state { margin-right: auto; color: var(--sx-muted); font-size: 12px; }
#public-watchlists-tab .pw-detail-heading { margin-bottom: 24px; }
#public-watchlists-tab .pw-detail-heading h2 { font-size: 28px; margin-bottom: 4px; overflow-wrap: anywhere; }
#public-watchlists-tab .pw-detail-heading p { margin: 0; font-size: 13px; }
#public-watchlists-tab .pw-view td { vertical-align: middle; }
#public-watchlists-tab .pw-view .pw-company-name { display: block; margin-top: 6px; color: var(--sx-muted); }
#public-watchlists-tab .pw-note { white-space: pre-wrap; overflow-wrap: anywhere; }
#public-watchlists-tab fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
#public-watchlists-tab label { display: block; font-size: 13px; }
#public-watchlists-tab input, #public-watchlists-tab textarea { box-sizing: border-box; width: 100%; color: var(--sx-text); background: var(--sx-surface); border: 1px solid var(--fp-border); border-radius: 7px; padding: 10px; font: inherit; margin-top: 6px; }
#public-watchlists-tab .pw-name { max-width: 480px; font-weight: 600; }
#public-watchlists-tab .pw-add { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; margin: 28px 0; padding: 24px 0; border-top: var(--sx-card-border); border-bottom: var(--sx-card-border); }
#public-watchlists-tab .pw-add form { position: relative; }
#public-watchlists-tab .pw-add form > .btn-ghost { margin-top: 10px; }
#public-watchlists-tab .pw-import { display: flex; flex-wrap: wrap; align-items: center; align-self: end; gap: 12px; }
#public-watchlists-tab .pw-hint { font-size: 12px; }
#public-watchlists-tab .pw-upload { display: inline-block; cursor: pointer; position: relative; overflow: hidden; }
#public-watchlists-tab .pw-upload input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
#public-watchlists-tab .pw-upload:focus-within { outline: 3px solid var(--sx-accent); outline-offset: 3px; }
#public-watchlists-tab .pw-results:not(:empty) { position: absolute; top: 65px; z-index: 2; background: var(--sx-surface); border: 1px solid var(--fp-border); box-shadow: 0 8px 24px #25301f22; width: 100%; }
#public-watchlists-tab .pw-results button { display: block; width: 100%; padding: 10px; border: 0; background: transparent; text-align: left; color: var(--sx-text); cursor: pointer; }
#public-watchlists-tab .pw-results button:hover { background: var(--sx-row-hover); }
#public-watchlists-tab .pw-table-wrap { position: relative; z-index: 0; overflow-x: auto; }
#public-watchlists-tab .pw-table { width: 100%; border-collapse: collapse; min-width: 500px; }
#public-watchlists-tab th { text-align: left; font-size: 11px; text-transform: uppercase; color: var(--sx-muted); }
#public-watchlists-tab th, #public-watchlists-tab td { padding: 14px 10px; border-bottom: var(--sx-card-border); vertical-align: top; }
#public-watchlists-tab .pw-company-cell { min-width: 170px; }
#public-watchlists-tab .pw-cell-target_price { min-width: 120px; }
#public-watchlists-tab .pw-cell-notes { width: 200px; min-width: 160px; }
#public-watchlists-tab textarea { min-height: 40px; height: 40px; resize: vertical; }
#public-watchlists-tab .pw-columns { position: relative; z-index: 3; }
#public-watchlists-tab .pw-columns summary { cursor: pointer; list-style: none; }
#public-watchlists-tab .pw-columns summary::-webkit-details-marker { display: none; }
#public-watchlists-tab .pw-column-options { position: absolute; right: 0; top: 100%; width: 260px; max-height: 360px; overflow-y: auto; padding: 16px; border: 1px solid var(--fp-border); border-radius: 8px; background: var(--sx-surface); box-shadow: 0 8px 24px #25301f22; }
#public-watchlists-tab .pw-column-options label { display: flex; align-items: center; gap: 8px; padding: 6px 0; }
#public-watchlists-tab .pw-column-options input { width: auto; margin: 0; }
#public-watchlists-tab .pw-column-options small { display: block; margin-top: 12px; color: var(--sx-muted); }
#public-watchlists-tab .pw-error { color: var(--sx-neg); }
#public-watchlists-tab .pw-error:empty { display: none; }
#public-watchlists-tab .sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
@media(max-width:700px) {
    #public-watchlists-tab { padding: 20px 12px; }
    #public-watchlists-tab .pw-heading { align-items: flex-start; flex-direction: column; }
    #public-watchlists-tab .pw-add { grid-template-columns: 1fr; gap: 16px; }
    #public-watchlists-tab .pw-editor { padding: 16px; }
    #public-watchlists-tab .pw-table { min-width: 0; }
    #public-watchlists-tab thead { display: none; }
    #public-watchlists-tab tr { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; padding: 20px 0; border-top: var(--sx-card-border); }
    #public-watchlists-tab td { min-width: 0 !important; width: auto !important; border: 0; padding: 0; }
    #public-watchlists-tab .pw-company-cell, #public-watchlists-tab .pw-cell-notes { grid-column: 1 / -1; }
    #public-watchlists-tab td[data-label]::before { content: attr(data-label); display: block; margin-bottom: 6px; font-size: 12px; color: var(--sx-muted); }
}

#public-watchlists-tab .pw-target-reached .pw-company-cell { background: var(--fp-selected); }
#public-watchlists-tab .pw-target-reached .pw-company-name input { color: var(--sx-pos); font-weight: 700; }
#public-watchlists-tab .pw-view .pw-target-reached .pw-company-name { color: var(--sx-pos); font-weight: 600; }
#public-watchlists-tab .pw-target-badge { display: block; font-size: 11px; color: var(--sx-pos); font-weight: 600; margin-top: 5px; }
#public-watchlists-tab .pw-target-badge[hidden] { display: none; }
#home-watchlist-targets[hidden] { display: none; }
#home-watchlist-targets .wt-card { padding: 20px; }
#home-watchlist-targets .wt-row { display: flex; justify-content: space-between; gap: 16px; padding: 14px 10px; border-bottom: var(--sx-card-border); }
#home-watchlist-targets .wt-reached { background: var(--fp-selected); border-left: 3px solid var(--sx-pos); }
#home-watchlist-targets small { display: block; color: var(--sx-muted); font-size: 12px; margin-top: 8px; }
@media(max-width:700px) { #home-watchlist-targets .wt-row { flex-direction: column; gap: 6px; } }

#public-watchlists-tab .pw-target-help { display: inline-flex; position: relative; justify-content: center; align-items: center; width: 16px; height: 16px; min-height: 0; padding: 0; line-height: 1; background: transparent; color: inherit; margin-left: 6px; border: 1px solid var(--sx-muted); border-radius: 50%; cursor: help; font-size: 11px; text-transform: none; }

#public-watchlists-tab .pw-mobile-help { display:none; }
@media(max-width:700px) {
    #public-watchlists-tab .pw-cell-target_price { position:relative; }
    #public-watchlists-tab .pw-mobile-help { display:inline-flex; position:absolute; top:-4px; right:0; width:24px; height:24px; margin:0; }
}
