html[data-theme="midnight"],.theme-card[data-theme="midnight"]{color-scheme:dark;--bg:#0c1220;--panel:#131c2e;--text:#eef4ff;--muted:#a8b4c7;--line:#2a3952;--accent:#65a8ff;--accentText:#07101f;--error:#ff8585;--notice:#6dd69a}
html[data-theme="graphite"],.theme-card[data-theme="graphite"]{color-scheme:dark;--bg:#151617;--panel:#202224;--text:#f3f3f1;--muted:#b7b8b4;--line:#3a3d40;--accent:#f0a35b;--accentText:#211207;--error:#ff8b8b;--notice:#78d59a}
html[data-theme="deep-forest"],.theme-card[data-theme="deep-forest"]{color-scheme:dark;--bg:#0f1713;--panel:#17221b;--text:#edf6ef;--muted:#a9b9ad;--line:#304438;--accent:#7bc492;--accentText:#07120b;--error:#ff8f8f;--notice:#7bc492}
html[data-theme="merlot"],.theme-card[data-theme="merlot"]{color-scheme:dark;--bg:#1b1015;--panel:#28171f;--text:#faeff3;--muted:#cbb2bc;--line:#4a2b37;--accent:#e882a8;--accentText:#240811;--error:#ff8f8f;--notice:#83d0a3}
html[data-theme="slate"],.theme-card[data-theme="slate"]{color-scheme:dark;--bg:#30353b;--panel:#3b4148;--text:#f4f5f6;--muted:#c3c8cd;--line:#59616a;--accent:#8ec5ff;--accentText:#14202d;--error:#ff9a9a;--notice:#8ed8a9}
html[data-theme="stone"],.theme-card[data-theme="stone"]{color-scheme:light;--bg:#d4d0c8;--panel:#e4e1da;--text:#262522;--muted:#625f59;--line:#b7b1a7;--accent:#765a3b;--accentText:#fff;--error:#8b2626;--notice:#326544}
html[data-theme="sepia"],.theme-card[data-theme="sepia"]{color-scheme:light;--bg:#c9b99f;--panel:#ddd0b9;--text:#342a1f;--muted:#6e5c49;--line:#aa9678;--accent:#7c4d21;--accentText:#fff;--error:#8a2525;--notice:#3e6742}
html[data-theme="moss"],.theme-card[data-theme="moss"]{color-scheme:light;--bg:#b8bdad;--panel:#cdd1c4;--text:#23291f;--muted:#56604f;--line:#959e8b;--accent:#445f36;--accentText:#fff;--error:#812b2b;--notice:#315b36}
html[data-theme="paper"],.theme-card[data-theme="paper"],:root{color-scheme:light;--bg:#f4f1ea;--panel:#fffdf8;--text:#22211f;--muted:#68635b;--line:#d7d0c4;--accent:#8b2d1f;--accentText:#fff;--error:#8b1e1e;--notice:#245f39;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
html[data-theme="porcelain"],.theme-card[data-theme="porcelain"]{color-scheme:light;--bg:#f7f8fa;--panel:#fff;--text:#1f2933;--muted:#66727f;--line:#d9dee5;--accent:#365f91;--accentText:#fff;--error:#9c2f2f;--notice:#2d6a47}
html[data-theme="mist"],.theme-card[data-theme="mist"]{color-scheme:light;--bg:#edf4f7;--panel:#f9fcfd;--text:#1d2c33;--muted:#5c6e76;--line:#cfdee4;--accent:#2b7289;--accentText:#fff;--error:#963333;--notice:#32694b}
html[data-theme="sage"],.theme-card[data-theme="sage"]{color-scheme:light;--bg:#edf3ea;--panel:#fbfdf9;--text:#203020;--muted:#66745f;--line:#d1ddcc;--accent:#4d7a49;--accentText:#fff;--error:#913333;--notice:#3e7043}
:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);line-height:1.55}header,main,footer,.chat-bar{width:min(1120px,calc(100% - 2rem));margin-inline:auto}.chat-bar{display:flex;justify-content:flex-end;padding:.7rem 0 0}header{display:flex;align-items:center;justify-content:space-between;padding:1.15rem 0;border-bottom:1px solid var(--line);gap:1rem}.brand{font-weight:700;letter-spacing:normal;font-size:1.05rem;text-decoration:none;color:var(--text)}nav{display:flex;gap:.9rem;align-items:center;flex-wrap:wrap}a{color:var(--accent)}main{padding:3rem 0 4rem}.hero{padding:3rem 0 2rem;max-width:820px}.hero.compact{padding:1rem 0}.hero h1{font-size:clamp(2.2rem,7vw,5rem);line-height:1.1;letter-spacing:-.045em;margin:.2rem 0 1.1rem}.hero.compact h1{font-size:clamp(2rem,5vw,3.5rem)}.hero p{font-size:1.18rem;color:var(--muted)}.eyebrow{font-size:.78rem!important;font-weight:800;letter-spacing:.16em;color:var(--accent)!important}.card{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:1.4rem;margin:1rem 0}.narrow{max-width:620px}.wide{max-width:none}.actions{display:flex;gap:.75rem;flex-wrap:wrap}.button,button{display:inline-block;border:0;border-radius:999px;background:var(--accent);color:var(--accentText);font:inherit;font-weight:750;padding:.72rem 1rem;text-decoration:none;cursor:pointer}.button.secondary{background:var(--line);color:var(--text);border:1px solid var(--line)}label{display:grid;gap:.35rem;margin:.9rem 0;font-weight:650}input{width:100%;font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:.7rem}.notice,.error{padding:.8rem 1rem;border:1px solid currentColor;border-radius:12px;margin-bottom:1rem}.notice{color:var(--notice)}.error{color:var(--error)}.inline{display:inline}.link-button{padding:0;background:none;color:var(--accent);font-weight:400}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:.65rem;border-bottom:1px solid var(--line);white-space:nowrap}dl{display:grid;grid-template-columns:max-content 1fr;gap:.4rem 1rem}dt{color:var(--muted)}dd{margin:0}code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}footer{border-top:1px solid var(--line);padding:1.5rem 0 3rem;color:var(--muted);font-size:.9rem}footer{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem 2rem;flex-wrap:wrap}.footer-links{display:flex;gap:1.1rem;flex-wrap:wrap}.footer-links a{color:var(--muted);text-decoration:none}.footer-links a:hover,.footer-links a:focus-visible{color:var(--accent);text-decoration:underline}header nav a,header nav .link-button{color:var(--muted);text-decoration:none}header nav a:hover,header nav a:focus-visible,header nav .link-button:hover,header nav .link-button:focus-visible{color:var(--accent);text-decoration:underline}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.info-page{max-width:760px}.info-page h2{margin:1.9rem 0 .5rem;font-size:1.15rem}.info-page h2:first-of-type{margin-top:1.2rem}.info-page p,.info-page li{color:var(--text)}.info-page ul{padding-left:1.15rem}.info-page li{margin:.4rem 0}@media(max-width:620px){footer{flex-direction:column;gap:1rem}.footer-links{order:-1}header{align-items:flex-start;flex-direction:column}main{padding-top:1.5rem}.card{border-radius:12px}dl{grid-template-columns:1fr}dd{margin-bottom:.5rem}}
select,textarea{width:100%;font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:.7rem}textarea{resize:vertical;min-height:8rem}.field-note{font-size:.82rem;font-weight:400;color:var(--muted)}fieldset{border:1px solid var(--line);border-radius:12px;margin:1rem 0;padding:1rem}legend{font-weight:750;padding:0 .4rem}.location-picker{display:flex;gap:.65rem;flex-wrap:wrap}.radio-card{display:flex;align-items:center;gap:.45rem;margin:0;padding:.55rem .7rem;border:1px solid var(--line);border-radius:999px;cursor:pointer}.radio-card:has(input:checked){border-color:var(--accent);outline:1px solid var(--accent)}.radio-card input{width:auto;margin:0}.location-fields{display:none}.location-picker:has(input[value="zip"]:checked)~.location-zip,.location-picker:has(input[value="city_state"]:checked)~.location-city-state,.location-picker:has(input[value="address"]:checked)~.location-address{display:block}.field-grid{display:grid;grid-template-columns:2fr 1fr;gap:1rem}.money-input{display:grid;grid-template-columns:auto 1fr;align-items:center;border:1px solid var(--line);border-radius:10px;background:var(--bg);overflow:hidden}.money-input span{padding-left:.75rem;font-weight:800}.money-input input{border:0;border-radius:0;background:transparent}.secondary-button{background:var(--line);color:var(--text);border:1px solid var(--line)}.danger-button{background:var(--error);color:#fff}
button:disabled,.button:disabled,.button.secondary:disabled{background:transparent;color:var(--muted);border:1px solid var(--line);font-weight:400;cursor:not-allowed}
textarea:disabled,input:disabled,select:disabled{color:var(--muted);cursor:not-allowed}.danger-link{color:var(--error);align-self:center}.status{display:inline-block;border:1px solid var(--line);border-radius:999px;padding:.08rem .45rem;font-size:.8rem}.status.active{color:var(--notice);border-color:currentColor}.listing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:1rem}.listing-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:1.15rem}.listing-card h2{margin:.15rem 0}.listing-card h2 a{text-decoration:none;color:var(--text)}.listing-card h2 a:hover{text-decoration:underline}.listing-price{font-size:1.35rem;font-weight:850;margin:.4rem 0}.listing-price.large{font-size:clamp(2rem,5vw,3rem)}.listing-description{color:var(--muted);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.listing-manage{display:flex;justify-content:space-between;gap:1.5rem;align-items:center}.listing-manage h2{margin:.15rem 0}.listing-detail{max-width:850px}.listing-detail h1{font-size:clamp(2.2rem,7vw,4.5rem);line-height:1;letter-spacing:-.04em;margin:.35rem 0}.description-card{font-size:1.1rem}.location-line{font-size:1.05rem}.muted{color:var(--muted)}.form-card{max-width:760px}
@media(max-width:620px){.field-grid{grid-template-columns:1fr}.listing-manage{align-items:flex-start;flex-direction:column}.location-picker{display:grid}.radio-card{border-radius:10px}}

/* v0.2.1 account/listing usability */
.category-picker{padding:.7rem 1rem 1rem}.category-note{margin:.15rem 0 .75rem}.category-group{border-top:1px solid var(--line)}.category-group:last-child{border-bottom:1px solid var(--line)}.category-group summary{display:flex;align-items:center;gap:.65rem;cursor:pointer;font-weight:800;padding:.7rem .15rem;list-style:none}.category-group summary::-webkit-details-marker{display:none}.category-group summary::before{content:"+";display:grid;place-items:center;width:1.35rem;height:1.35rem;border:1px solid var(--line);border-radius:50%;font-size:.95rem;line-height:1}.category-group[open] summary::before{content:"−"}.category-count{margin-left:auto;color:var(--muted);font-size:.82rem;font-weight:600}.subcategory-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.35rem .7rem;padding:0 0 .8rem 2rem}.category-option{display:flex;align-items:center;gap:.45rem;margin:0;padding:.35rem .45rem;border-radius:8px;font-weight:550;cursor:pointer}.category-option:hover{background:var(--bg)}.category-option:has(input:checked){outline:1px solid var(--accent);background:var(--bg)}.category-option input{width:auto;margin:0}
.field-note-row{display:flex;justify-content:space-between;gap:1rem;align-items:baseline;flex-wrap:wrap}.char-count{font-variant-numeric:tabular-nums;white-space:nowrap}.char-count.at-limit{color:var(--error);font-weight:700}
.radio-row{display:flex;gap:.65rem;flex-wrap:wrap}.price-type-picker .price-field{margin-top:.5rem}.price-type-picker:has(input[value="free"]:checked) .price-field{display:none}
.location-picker{display:grid;gap:.7rem}.location-choice{border:1px solid transparent;border-radius:12px}.location-choice:has(> .radio-card input:checked){border-color:var(--line);padding:.7rem}.location-choice>.radio-card{width:max-content}.location-choice .location-fields{display:none}.location-choice:has(> .radio-card input:checked)>.location-fields{display:block;margin-top:.4rem}.location-choice .location-fields label{margin:.55rem 0 0}
.listing-status-line{margin:0 0 .55rem}.status{font-weight:750;padding:.16rem .6rem}.status.active{background:var(--notice);border-color:var(--notice);color:#fff}.status.inactive{background:var(--bg);color:var(--muted);border-color:var(--line)}
@media(max-width:620px){.subcategory-options{grid-template-columns:1fr;padding-left:1.5rem}.radio-row{display:grid}.location-choice>.radio-card{width:100%}}

/* v0.2.2 listing photos */
.listing-card-photo{display:block;margin:-1.15rem -1.15rem .9rem;aspect-ratio:4/3;overflow:hidden;border-radius:15px 15px 0 0;background:var(--bg)}.listing-card-photo img{width:100%;height:100%;object-fit:cover;display:block}.photo-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:.75rem;margin:1rem 0 1.5rem}.photo-gallery a{display:block;aspect-ratio:4/3;overflow:hidden;border-radius:14px;border:1px solid var(--line);background:var(--bg)}.photo-gallery img{display:block;width:100%;height:100%;object-fit:cover}.photo-manager{max-width:760px}.photo-manager h2{margin-bottom:.2rem}.photo-manage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.photo-manage-card{border:1px solid var(--line);border-radius:14px;padding:.65rem;background:var(--bg)}.photo-manage-card>img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:9px}.photo-manage-card p{margin:.5rem 0}.photo-actions{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.photo-actions form{margin:0}.small-button{padding:.38rem .58rem;font-size:.82rem}.danger-outline{background:transparent;color:var(--error);border:1px solid currentColor}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.listing-manage-thumb{width:110px;aspect-ratio:4/3;object-fit:cover;border-radius:10px;border:1px solid var(--line);flex:0 0 auto}.listing-manage-main{display:flex;align-items:flex-start;gap:1rem;min-width:0}.listing-manage-main>div{min-width:0}@media(max-width:620px){.photo-manage-grid{grid-template-columns:1fr 1fr}.listing-manage-main{width:100%}.listing-manage-thumb{width:84px}}@media(max-width:420px){.photo-manage-grid{grid-template-columns:1fr}}

/* v0.2.3 account/listing UX follow-up */
.category-controls{display:flex;gap:.45rem;justify-content:flex-end;margin:.45rem 0}.category-controls:first-of-type{margin-bottom:.65rem}.category-controls:last-child{margin-top:.7rem}
.copy-link-row{display:inline-flex;align-items:center;gap:.5rem;flex-wrap:wrap}.copy-link-row .small-button{white-space:nowrap}
.checkbox-row{display:flex;align-items:center;gap:.55rem;font-weight:650}.checkbox-row input{width:auto;margin:0}.warning-note{max-width:68ch}
.photo-section{display:grid;gap:.8rem}.photo-dropzone-ui{border:2px dashed var(--line);border-radius:14px;padding:1rem;text-align:center;background:var(--bg);transition:border-color .15s ease,background .15s ease}.photo-section.is-dragover .photo-dropzone-ui{border-color:var(--accent);background:var(--panel)}.photo-dropzone-ui p{margin:.25rem 0}.photo-dropzone-ui input[type="file"]{margin-top:.65rem;background:var(--panel)}
.selected-photo-previews{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.65rem}.selected-photo-previews:empty{display:none}.selected-photo-card{display:grid;gap:.35rem;min-width:0}.selected-photo-card>span{font-size:.78rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.existing-photo-block{margin-top:.15rem}.photo-thumb-button{display:block;width:100%;padding:0;border:0;background:transparent;border-radius:10px;overflow:hidden;cursor:zoom-in}.photo-thumb-button img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.photo-thumb-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.external-action-form{display:none}
.app-dialog{width:min(94vw,460px);max-width:none;padding:0;border:1px solid var(--line);border-radius:16px;background:var(--panel);color:var(--text);box-shadow:0 24px 80px rgb(0 0 0 / .45)}
.app-dialog::backdrop{background:rgb(0 0 0 / .5)}
.app-dialog form{padding:1.4rem}
.app-dialog h2{margin:0 0 .5rem}
.app-dialog p{margin:0 0 .5rem;color:var(--muted)}
.app-dialog .actions{margin-top:1.1rem;justify-content:flex-end}
.photo-viewer{width:min(94vw,1100px);max-width:none;padding:0;border:0;border-radius:16px;background:var(--panel);box-shadow:0 24px 80px rgb(0 0 0 / .45);overflow:visible}.photo-viewer::backdrop{background:rgb(0 0 0 / .78)}.photo-viewer img{display:block;max-width:94vw;max-height:88vh;width:auto;height:auto;margin:auto;border-radius:16px}.photo-viewer-close{position:absolute;right:.5rem;top:.5rem;z-index:2;width:2.4rem;height:2.4rem;padding:0;border-radius:50%;font-size:1.6rem;line-height:1;background:rgb(0 0 0 / .72);color:#fff}
.contact-card{margin-top:1rem}.contact-card h2{margin-top:0}.contact-card p:last-child{margin-bottom:0}
@media(max-width:620px){.category-controls{justify-content:stretch}.category-controls button{flex:1}.copy-link-row{align-items:flex-start}.selected-photo-previews{grid-template-columns:1fr 1fr}}

/* v0.2 completion: themes, attributes, seller-scoped search, admin */
.theme-groups{display:grid;gap:1rem}.theme-group{margin:.5rem 0}.theme-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.theme-card{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.65rem;margin:0;padding:.65rem;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--text);cursor:pointer}.theme-card:has(input:checked){outline:2px solid var(--accent);outline-offset:1px}.theme-card input{width:auto;margin:0}.theme-card small{display:block;color:var(--muted);font-weight:500}.theme-preview{display:grid;gap:.2rem;width:2.75rem;height:2.1rem;padding:.35rem;border:1px solid var(--line);border-radius:8px;background:var(--bg)}.theme-preview-accent{display:block;height:.4rem;border-radius:999px;background:var(--accent)}.theme-preview-lines{display:block;height:.7rem;border-top:2px solid var(--text);border-bottom:2px solid var(--muted)}
.listing-attributes{transition:opacity .15s ease}.listing-attributes.is-loading{opacity:.55}.attribute-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem}.required-marker{font-size:.72rem;color:var(--accent);font-weight:800;text-transform:uppercase;letter-spacing:.05em}.attribute-card h2{margin-top:0}.attribute-list{grid-template-columns:minmax(10rem,max-content) 1fr}.attribute-list dt,.attribute-list dd{padding:.25rem 0;border-bottom:1px solid var(--line)}
.marketplace-search{margin-bottom:1.5rem}.search-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 1rem}.result-count{align-self:center;color:var(--muted);font-weight:700}
.admin-dashboard{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.admin-dashboard>.card{margin:0}.admin-category-group summary{display:flex;justify-content:space-between;gap:1rem;cursor:pointer}.admin-category-group summary span{color:var(--muted);font-weight:500}.admin-category-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-top:1rem}.admin-category-list a{display:flex;justify-content:space-between;gap:.75rem;padding:.6rem .7rem;border:1px solid var(--line);border-radius:10px;text-decoration:none;background:var(--bg)}.admin-category-list a span:last-child{color:var(--muted);font-size:.82rem;white-space:nowrap}.attribute-admin-card h3{margin:.15rem 0}.attribute-admin-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.attribute-admin-heading form{margin:0}.attribute-admin-form{border-top:1px solid var(--line);margin-top:.8rem;padding-top:.5rem}.attribute-admin-form .field-grid{grid-template-columns:2fr 1.2fr .7fr}.attribute-options-field[hidden]{display:none}
@media(max-width:860px){.theme-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.search-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-category-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.theme-grid,.attribute-grid,.search-grid,.admin-dashboard,.admin-category-list{grid-template-columns:1fr}.attribute-list{grid-template-columns:1fr}.attribute-list dd{margin-bottom:.55rem}.attribute-admin-form .field-grid{grid-template-columns:1fr}}

/* v0.4.0 live P2P communications */
.p2p-nav{display:inline-flex;align-items:center;gap:.35rem}.p2p-nav-button{padding:.35rem .6rem;font-size:.82rem}.p2p-nav-button.available{outline:1px solid var(--notice)}.p2p-nav-button.busy{outline:1px solid var(--accent)}.p2p-nav-link{text-decoration:none;color:var(--text);font-weight:650}
.p2p-nav-count{display:grid;place-items:center;min-width:1.65rem;height:1.65rem;padding:0 .35rem;border:1px solid var(--line);border-radius:999px;text-decoration:none;font-size:.78rem;font-weight:800;color:var(--text);background:var(--panel)}
.p2p-status{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:.16rem .55rem;font-size:.82rem;font-weight:800}.p2p-status.available{color:var(--notice);border-color:currentColor}.p2p-status.busy{color:var(--accent);border-color:currentColor}.p2p-status.unavailable{color:var(--muted)}
.p2p-contact-card .actions{margin:.75rem 0}.seller-prechat,.disclosure-box,.conduct-note{border-left:4px solid var(--accent);background:var(--bg);padding:.75rem 1rem;border-radius:8px}.alternate-contact{margin-top:.8rem;padding-top:.8rem;border-top:1px solid var(--line)}
.p2p-request-card{position:relative;overflow:hidden}.p2p-context-thumb{float:right;width:110px;aspect-ratio:4/3;object-fit:cover;border-radius:10px;border:1px solid var(--line);margin:0 0 .75rem 1rem}.request-note{padding:.65rem .8rem;background:var(--bg);border-radius:10px}.verified{color:var(--notice);font-size:.8rem;font-weight:800}.unverified{color:var(--muted);font-size:.8rem}
.p2p-toast{position:fixed;right:1rem;bottom:1rem;z-index:1000;width:min(420px,calc(100vw - 2rem));background:var(--panel);color:var(--text);border:1px solid var(--accent);border-radius:16px;padding:1rem;box-shadow:0 18px 50px rgb(0 0 0 / .3)}.p2p-toast p{margin:.1rem 0 .8rem}
.p2p-wait-page{max-width:700px}.p2p-wait-details{margin:1rem 0}.p2p-wait-page .actions{margin-top:1rem}
.p2p-chat{max-width:900px;margin:0 auto}.chat-header{width:auto;margin:0 0 1rem;padding:0 0 1rem;border-bottom:1px solid var(--line);display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.chat-header h1{margin:.15rem 0}.chat-messages{height:min(55vh,540px);overflow:auto;border:1px solid var(--line);border-radius:16px;background:var(--panel);padding:1rem;margin:1rem 0;display:flex;flex-direction:column;gap:.75rem}.chat-message{max-width:78%;padding:.7rem .85rem;border:1px solid var(--line);border-radius:14px;background:var(--bg)}.chat-message.mine{align-self:flex-end;border-color:var(--accent)}.chat-message.theirs{align-self:flex-start}.chat-message-meta{font-size:.72rem;color:var(--muted);margin-bottom:.25rem}.chat-message-body{white-space:pre-wrap;overflow-wrap:anywhere}.chat-message-status{display:block;font-size:.7rem;color:var(--muted);text-align:right;margin-top:.2rem}.typing-indicator{height:1.5rem;color:var(--muted);font-style:italic}.chat-compose{display:grid;gap:.5rem}.chat-compose textarea{min-height:5rem}.chat-compose-footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;color:var(--muted)}
@media(max-width:620px){.p2p-nav{width:100%}.chat-bar .p2p-nav{width:auto}.p2p-nav-button{flex:1}.p2p-context-thumb{width:86px}.chat-header{flex-direction:column}.chat-message{max-width:92%}.p2p-toast{bottom:.5rem;right:.5rem;width:calc(100vw - 1rem)}}

/* Reporting ------------------------------------------------------------ */

.report-line { margin-top: 1rem; }
.report-line span { display: block; }

.report-summary {
    white-space: pre-wrap;
    word-break: break-word;
    background: var(--surface-sunken, rgba(0, 0, 0, 0.04));
    border: 1px solid var(--border, rgba(0, 0, 0, 0.15));
    border-radius: 0.5rem;
    padding: 0.9rem 1rem;
    font-size: 0.9rem;
    line-height: 1.5;
    overflow-x: auto;
}

.report-photos { display: flex; flex-wrap: wrap; gap: 0.5rem; margin: 0.5rem 0 1rem; }
.report-photos img { border-radius: 0.35rem; border: 1px solid var(--border, rgba(0, 0, 0, 0.15)); }

/* Public information pages, 2026-09-05 -- generated from local/files/legal/*.md */
.info-page h3 { margin: 1.3rem 0 .4rem; font-size: 1rem; }
.info-page ol { padding-left: 1.35rem; }
.info-page ol li { margin: .4rem 0; }
.info-page hr { border: 0; border-top: 1px solid var(--line); margin: 2rem 0; }
.info-page form { margin-top: .5rem; }

/* Cross-links to the rest of the document set, so a reader who arrived from a
   search engine can move sideways without going up to /policies first. */
.info-siblings { display: flex; flex-wrap: wrap; gap: .3rem .9rem; align-items: baseline;
  margin-top: 2.2rem; padding-top: 1.1rem; border-top: 1px solid var(--line);
  font-size: .88rem; }
.info-siblings span { color: var(--muted); font-weight: 700; }
.info-siblings a { color: var(--muted); text-decoration: none; }
.info-siblings a:hover, .info-siblings a:focus-visible { color: var(--accent); text-decoration: underline; }

/* An owner fact that has no configured value. Deliberately conspicuous: a legal
   page that quietly omits who operates the service is worse than one that says
   the value is missing. deploy.sh refuses a production deploy while any remain. */
.legal-unset { color: var(--error); font-style: italic; white-space: nowrap; }

/* Callouts. Used sparingly and on purpose: the "our role" statement at the four
   points where someone decides whether to deal with a stranger, and the three
   Terms clauses where conspicuousness carries actual legal weight (warranty
   disclaimer, liability limit, subscription renewal). The other ~14 operator
   disclaimers stay as prose -- at that density a callout stops being one. */
.callout { border-left: 4px solid var(--accent); background: var(--bg);
  padding: .85rem 1.1rem; border-radius: 8px; margin: 1.4rem 0; }
.callout > :first-child { margin-top: 0; }
.callout > :last-child { margin-bottom: 0; }
.callout h2, .callout h3 { margin: 0 0 .4rem; font-size: 1rem; }

/* The role statement leads a page, so it sits tighter to the heading above it. */
.callout-role { margin-top: 1rem; }

/* Conspicuous contract terms. Slightly heavier than the role note, since these
   are the clauses a court would ask whether the reader could reasonably miss. */
.callout-key { border-left-color: var(--error); }
.callout-key p { margin: .5rem 0; }

/* Marketplace and Listing history, 2026-09-14. The server draws it for a signed-in
   account and app.js draws the same markup from browser storage for a signed-out
   visitor, so both share these rules. local/specs/RETURNING-BUYER-HISTORY-SPEC.md */
.history-controls { align-items: center; margin: 0 0 1rem; }
.history-controls form, .history-group-head form, .history-listing form { margin: 0; }
.history-paused { margin: 0 0 1rem; }
.history-group-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; }
.history-group-head h2 { margin: 0; }
.history-group-head p { margin: .15rem 0 0; }
.history-note { margin: .7rem 0 0; color: var(--muted); }
.history-listings { list-style: none; margin: .9rem 0 0; padding: 0; }
.history-listing { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; padding: .65rem 0; border-top: 1px solid var(--line); }
.history-listing p { margin: .1rem 0 0; }
.history-home-list { list-style: none; margin: .5rem 0 .8rem; padding: 0; }
.history-home-list li { display: flex; flex-wrap: wrap; align-items: baseline; gap: .2rem .6rem; padding: .4rem 0; border-top: 1px solid var(--line); }
.history-footnote { margin-top: 1.4rem; }
@media (max-width: 620px) {
  .history-group-head, .history-listing { flex-direction: column; gap: .45rem; }
}
