/* VaultStream V1.2.13: text-only requests, desktop and iPhone Safari layouts. */
.request-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:20px 0;padding:20px 23px;background:#1b2632;border:1px solid #3b4858;border-radius:11px}
.request-banner-copy{min-width:0}.request-banner h3{font-size:19px;line-height:1.35;margin:5px 0}.request-banner p,.request-intro p{font-size:14px;line-height:1.6;color:#adb9c9;margin:0;max-width:66ch}
.request-banner-button{flex-shrink:0}.request-intro{margin:3px 0 22px}.request-intro h2{font-size:clamp(23px,3vw,30px);margin:8px 0}
.request-columns{display:grid;grid-template-columns:minmax(275px,.88fr) minmax(0,1.12fr);gap:20px;align-items:start}.request-form-surface,.request-history-surface,.request-admin-surface{padding:22px}
.request-form{display:flex;flex-direction:column;gap:9px}.request-form label,.request-filter label{display:block;color:#e2e8f0;font-size:13px;font-weight:650;margin-top:9px}
.request-form textarea,.request-form select,.request-filter select{width:100%;background:#121b26;color:#f4f5f8;border:1px solid #39485a;border-radius:8px;min-height:44px;padding:11px 12px;font:inherit;font-size:15px}
.request-form textarea{min-height:115px;line-height:1.5;resize:vertical;white-space:pre-wrap}.request-form textarea:focus-visible,.request-form select:focus-visible,.request-filter select:focus-visible{outline:2px solid #e4bc65;outline-offset:1px}
.request-help{color:#9dadbc;font-size:12px;line-height:1.5;margin:0 0 8px}.request-submit{align-self:flex-start}.request-list{display:grid;gap:13px}
.request-card{border:1px solid #334354;background:#111b26;border-radius:10px;padding:16px;min-width:0}.request-card-head{display:flex;justify-content:space-between;align-items:start;gap:12px}
.request-card-head strong{display:block;font-size:14px;line-height:1.4;overflow-wrap:anywhere}.request-card-head small{display:block;font-size:12px;color:#a4b1c0;margin-top:5px;overflow-wrap:anywhere}
.request-status{display:inline-flex;white-space:nowrap;align-items:center;font-size:11px;font-weight:700;border:1px solid #4a5360;padding:4px 8px;border-radius:999px;color:#d7dee8}
.request-fulfilled{color:#a8eacb;border-color:#2f7056}.request-declined{color:#f3c5c5;border-color:#865355}.request-open{color:#edd8a0;border-color:#78643e}
.request-description{font-size:14px;line-height:1.65;margin:16px 0 4px;overflow-wrap:anywhere}.request-reply{margin-top:16px;border-top:1px solid #304052;padding-top:13px}.request-reply strong{font-size:12px;color:#e9c675}.request-reply p{margin:8px 0 0;font-size:14px;line-height:1.65;overflow-wrap:anywhere}
.request-empty{padding:28px 12px;text-align:center;color:#acbac8;font-size:14px}.request-filter{max-width:270px;margin-bottom:16px}.request-filter select{margin-top:7px}
.request-admin-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.request-admin-form{border-top:1px solid #304052;margin-top:14px;padding-top:12px}.request-admin-form button{align-self:flex-start;margin-top:5px}
.request-pagination{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:22px;font-size:13px;color:#bbc8d5}
@media(max-width:960px){.request-admin-list{grid-template-columns:1fr}}
@media(max-width:780px){.request-columns{grid-template-columns:minmax(0,1fr)}.request-banner{flex-direction:column;align-items:stretch;padding:17px}.request-banner-button{width:100%}.request-form-surface,.request-history-surface,.request-admin-surface{padding:17px}.request-submit{width:100%}.request-card-head{flex-wrap:wrap}.request-admin-list{grid-template-columns:1fr}.request-card{padding:14px}.request-pagination{gap:10px}.request-pagination .btn{min-width:74px}}
/* V1.2.14: restrained assistant conversation treatment, accessible on narrow iPhones. */
.request-assistant-head{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:700;margin-bottom:15px;line-height:1.3}
.request-assistant-head>span:last-child small,.request-speaker>span:last-child small{display:block;color:#a8b5c3;font-size:11px;font-weight:400}
.vs-assistant-mark{display:inline-grid;place-items:center;width:33px;height:33px;flex:none;color:#d8e3ee;background:#283747;border:1px solid #526271;border-radius:10px;font-size:19px}
.request-bubble{border-radius:13px;padding:14px 15px;min-width:0;overflow-wrap:anywhere}
.request-bubble p{margin:6px 0;line-height:1.65;font-size:14px}
.request-bubble-assistant{background:#1b2632;border:1px solid #344657}
.request-bubble-user{background:#2b3c4d;border:1px solid #46596b;margin:13px 0 13px 15%;border-bottom-right-radius:4px}
.request-welcome{margin-bottom:18px}.request-conversation .request-bubble-assistant{margin-right:11%}
.request-speaker{display:flex;gap:9px;align-items:center;font-size:12px;font-weight:650;color:#dce7f4}
.request-date{display:block;font-size:12px;color:#9bacbc;margin-top:7px}
.request-estimate{font-size:12px!important;color:#c6ad77;margin-top:10px!important}
.request-update{margin-top:11px;border-top:1px solid #3a4b5d;padding-top:10px}
.request-update strong{font-size:12px;color:#c8d5e4}.request-delivery{margin-top:13px;display:flex;flex-wrap:wrap;gap:8px}
.request-photo-controls{display:flex;flex-direction:column;gap:8px;margin-top:8px}.request-photo-controls input[type=file]{font-size:13px;max-width:100%;color:#dce6ed}
.request-photo-controls input[type=file]::file-selector-button{background:#263548;color:#e8edf4;border:1px solid #46576b;border-radius:7px;padding:9px 11px;margin-right:10px;cursor:pointer}
.request-photo-controls input[type=file]:focus-visible{outline:2px solid #e4bc65;outline-offset:3px}
@media(max-width:780px){.request-bubble-user{margin-left:9%}.request-conversation .request-bubble-assistant{margin-right:4%}.request-bubble{padding:12px}.request-delivery .btn{min-height:44px;display:inline-flex;align-items:center}}

.delivered-photo-gallery{padding:20px;margin:20px 0}.delivered-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(146px,1fr));gap:14px;margin-top:14px}
.delivered-photo{display:flex;flex-direction:column;gap:9px;min-width:0;text-decoration:none;color:#dce7ee;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.delivered-photo img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:9px;border:1px solid #334759;background:#111a23}
.delivered-photo:focus-visible{outline:2px solid #e4bc65;outline-offset:3px}@media(max-width:500px){.delivered-photo-gallery{padding:15px}.delivered-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V1.2.15: quiet email status, never impersonate an AI responder. */
.request-email-note{color:#b9c8d6;font-size:12px;line-height:1.6;margin:9px 0 4px;overflow-wrap:anywhere}
.request-email-note .btn{min-height:36px;vertical-align:middle;margin:4px 0 0 3px}
