.primary-link { padding:7px 10px; border:0; border-radius:7px; color:#1d4ed8; background:#eff6ff; font-size:12px; font-weight:680; }.primary-link:hover { background:#dbeafe; }
.draft-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:16px; }.draft-summary > div { min-height:76px; display:grid; gap:6px; align-content:center; padding:13px 17px; border:1px solid var(--line); border-radius:11px; background:var(--surface); }.draft-summary span { color:var(--muted); font-size:11px; }.draft-summary strong { font-size:19px; }.muted-strong { color:var(--muted); }.online-strong { color:#047857; }.warning-strong { color:#a16207; }
.listing-backdrop { position:fixed; z-index:130; inset:0; padding:18px; overflow:auto; background:rgba(15,23,42,.5); backdrop-filter:blur(4px); }
.listing-editor { width:min(1320px,100%); min-height:calc(100vh - 36px); margin:0 auto; display:flex; flex-direction:column; border:1px solid var(--line); border-radius:15px; background:var(--page); box-shadow:0 28px 90px rgba(15,23,42,.28); overflow:hidden; }
.listing-head { min-height:86px; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:17px 22px; border-bottom:1px solid var(--line); background:var(--surface); }.listing-head h2,.listing-head p { margin:0; }.listing-head h2 { margin-top:5px; font-size:20px; }.listing-head p { margin-top:5px; color:var(--muted); font-size:11px; }.eyebrow { color:#2563eb; font-size:10px; font-weight:800; letter-spacing:.12em; }.listing-head > button { width:38px; height:38px; border:0; border-radius:8px; background:transparent; color:var(--muted); font-size:26px; }.listing-head > button:hover { color:var(--text); background:var(--hover); }
#listingDraftForm { flex:1; display:flex; flex-direction:column; min-height:0; }.listing-body { flex:1; display:grid; grid-template-columns:minmax(0,1fr) 330px; min-height:0; }.listing-main { padding:20px; overflow:auto; }.listing-side { padding:20px; border-left:1px solid var(--line); background:var(--surface-muted); }.listing-side > section { margin-bottom:14px; padding:15px; border:1px solid var(--line); border-radius:10px; background:var(--surface); }.listing-side h3 { margin:0 0 12px; font-size:13px; }
.form-section { margin-bottom:16px; padding:19px; border:1px solid var(--line); border-radius:12px; background:var(--surface); }.section-title { display:grid; grid-template-columns:34px 1fr; gap:11px; margin-bottom:17px; }.section-title > span { width:31px; height:31px; display:grid; place-items:center; border-radius:8px; color:#2563eb; background:#eff6ff; font-size:11px; font-weight:800; }.section-title h3,.section-title p { margin:0; }.section-title h3 { font-size:15px; }.section-title p { margin-top:5px; color:var(--muted); font-size:11px; }
.draft-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }.draft-form-grid.four { grid-template-columns:repeat(4,minmax(0,1fr)); }.draft-form-grid label { display:grid; gap:7px; color:var(--muted); font-size:11px; }.draft-form-grid .full { grid-column:1/-1; }.draft-form-grid .input,.draft-form-grid .select { width:100%; }.draft-form-grid textarea { width:100%; padding:10px 11px; resize:vertical; border:1px solid var(--line-strong); border-radius:8px; color:var(--text); background:var(--surface); outline:0; font:inherit; line-height:1.6; }.draft-form-grid textarea:focus { border-color:#2563eb; box-shadow:0 0 0 3px rgba(37,99,235,.12); }.draft-form-grid .code-input { font-family:"SFMono-Regular",Consolas,monospace; font-size:11px; }
.compliance-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }.compliance-list label { min-height:48px; display:flex; align-items:flex-start; gap:9px; padding:11px 12px; border:1px solid var(--line); border-radius:8px; font-size:12px; }.compliance-list input { margin-top:2px; }.compliance-list .owner-confirm { grid-column:1/-1; border-color:#bfdbfe; background:#eff6ff; }.owner-confirm strong,.owner-confirm small { display:block; }.owner-confirm small { margin-top:4px; color:#64748b; font-size:10px; }
.evidence-list > div { min-height:31px; display:flex; align-items:center; justify-content:space-between; gap:10px; border-bottom:1px dashed var(--line); font-size:11px; }.evidence-list span { color:var(--muted); }.full-button { width:100%; margin-top:12px; }.validation-box ul { margin:10px 0 0; padding-left:18px; color:var(--muted); font-size:11px; line-height:1.8; }.validation-box p { margin:9px 0 0; color:var(--muted); font-size:11px; }.validation-count { display:inline-flex; align-items:center; gap:6px; padding:5px 8px; border-radius:7px; font-size:11px; font-weight:680; }.validation-count.error { color:#b91c1c; background:#fef2f2; }.validation-count.success { color:#047857; background:#ecfdf5; }
.listing-side pre { max-height:300px; margin:0; overflow:auto; padding:11px; border:1px solid var(--line); border-radius:8px; color:#334155; background:#f8fafc; white-space:pre-wrap; word-break:break-word; font:10px/1.6 "SFMono-Regular",Consolas,monospace; }.side-note { margin:8px 0 0; color:var(--muted); font-size:10px; line-height:1.5; }
.listing-footer { min-height:68px; display:flex; align-items:center; justify-content:flex-end; gap:8px; padding:12px 20px; border-top:1px solid var(--line); background:var(--surface); }.listing-footer > div { margin-right:auto; color:var(--muted); font-size:11px; }
@media (max-width:1050px) { .listing-body { grid-template-columns:1fr; }.listing-side { border-top:1px solid var(--line); border-left:0; }.draft-summary { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:700px) { .listing-backdrop { padding:0; }.listing-editor { min-height:100vh; border-radius:0; }.listing-main,.listing-side { padding:12px; }.form-section { padding:14px; }.draft-form-grid,.draft-form-grid.four,.compliance-list { grid-template-columns:1fr; }.draft-form-grid .full,.compliance-list .owner-confirm { grid-column:auto; }.listing-footer { flex-wrap:wrap; }.listing-footer > div { width:100%; margin:0; }.listing-footer button { flex:1; }.draft-summary { grid-template-columns:repeat(2,minmax(0,1fr)); } }
