/* Account and request layouts follow designs/account-requests-concept.png.
   The existing lookbook grid is reused for additional GPT-generated samples. */
.mobile-workspace-link { display:none; }
.workspace-nav { display:flex; gap:30px; border-bottom:1px solid var(--line); padding-top:20px; }
.workspace-nav a { font-size:12px; padding:13px 0; border-bottom:2px solid transparent; margin-bottom:-1px; }
.workspace-nav a[aria-current] { border-color:var(--green); }
.account-layout { display:grid; grid-template-columns:minmax(0,1.8fr) minmax(0,1fr); gap:60px; padding-top:38px; }
.account-layout .page-title { padding-top:0; }
.account-layout h1 { font-size:clamp(45px,5.5vw,76px); }
.account-layout h1 em,.account-aside h2 em { color:#66745a; }
.account-section { padding:22px 0 28px; border-top:1px solid var(--line); }
.account-section h2 { font-size:30px; letter-spacing:-.04em; margin-bottom:10px; }
.account-section>p { font-size:12px; }
.account-section form { margin-top:20px; }
.account-section .grid-2 { gap:22px; }
.account-aside>.photo { aspect-ratio:4/5; margin-bottom:20px; }
.account-aside h2 { font-size:43px; }
.account-aside p { font-size:13px; line-height:1.8; margin:20px 0; }
.privacy-facts { margin-top:15px; }
.privacy-fact { display:flex; gap:20px; padding:19px 0; border-bottom:1px solid var(--line); }
.privacy-fact>.icon { width:24px; height:24px; margin-top:3px; flex:none; }
.privacy-fact h3 { font:400 23px/1.15 MorrowSerif,Georgia,serif; letter-spacing:-.035em; }
.privacy-fact p { font-size:12px; line-height:1.7; margin-top:7px; }
.privacy-actions { display:flex; gap:15px; flex-wrap:wrap; align-items:center; margin-top:24px; }
.record-filters { margin-bottom:30px; flex-wrap:wrap; }
.requests-layout { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(0,1fr); gap:36px; align-items:start; }
.request-row { display:grid; grid-template-columns:105px minmax(0,1fr) 112px; gap:18px; border-bottom:1px solid var(--line); padding:21px 12px; align-items:start; }
.request-row.selected { background:#e9eadd80; outline:1px solid #9aa48c; outline-offset:-1px; }
.request-row small { font-size:9px; line-height:1.8; color:var(--muted); overflow-wrap:anywhere; }
.request-row h3 { font:400 25px/1.15 MorrowSerif,Georgia,serif; letter-spacing:-.04em; }
.request-row p { font-size:11px; margin-top:8px; overflow-wrap:anywhere; }
.request-row .text-link { display:block; margin-top:16px; font-size:10px; }
.request-detail-panel { border-left:1px solid var(--line); padding-left:30px; }
.request-detail { min-width:0; }
.request-detail .eyebrow { font-size:9px; letter-spacing:1.5px; overflow-wrap:anywhere; }
.request-detail .section-top { margin:0 0 12px; align-items:start; gap:15px; flex-wrap:wrap; }
.request-detail h2 { font-size:34px; }
.request-detail h3 { font:400 22px/1.2 MorrowSerif,Georgia,serif; letter-spacing:-.03em; margin:24px 0 10px; }
.message-copy { white-space:pre-wrap; overflow-wrap:anywhere; font-size:13px; line-height:1.8; }
.timeline-title { border-top:1px solid var(--line); padding-top:20px; }
.request-timeline { padding:0; margin:20px 0; list-style:none; }
.request-timeline li { position:relative; border-left:1px solid #b4b9a8; margin-left:5px; padding:0 0 23px 23px; }
.request-timeline li::before { content:''; position:absolute; left:-5px; top:5px; height:9px; width:9px; background:var(--green); border-radius:50%; }
.request-timeline li:last-child { border-left-color:transparent; padding-bottom:0; }
.request-timeline small { color:var(--muted); font-size:10px; }
.request-timeline strong { display:block; margin:8px 0; font-size:12px; font-weight:500; }
.reply-form { margin-top:25px; border-top:1px solid var(--line); padding-top:20px; }
.project-card h3 { overflow-wrap:anywhere; }
.project-card .actions { gap:12px; }
.sample-counter { display:block; color:var(--muted); font-size:10px; margin-top:8px; }
.style-sample-thumbs { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; margin-top:12px; }
.style-sample-thumbs button { padding:2px; border:1px solid transparent; background:transparent; }
.style-sample-thumbs button[aria-pressed=true] { border-color:var(--green); }
.style-sample-thumbs .photo { aspect-ratio:4/5; }
.collection-examples { border-top:1px solid var(--line); padding-top:35px; }
.collection-examples .photo { aspect-ratio:4/5; }
.collection-examples .lookbook-item>span { font-size:21px; }
.collection-examples .grid-3 { row-gap:30px; }
.gallery-item .photo img { object-position:center 28%; }
.style-modal-main .photo { aspect-ratio:4/5; }
button:disabled { opacity:.45; cursor:default; }
@media (max-width:1000px) {
  .account-layout { gap:30px; }
  .requests-layout { grid-template-columns:1fr; gap:35px; }
  .request-detail-panel { border-left:0; border-top:1px solid var(--line); padding:30px 0 0; }
}
@media (max-width:760px) {
  .nav-links .mobile-workspace-link { display:block; }
  .workspace-nav { gap:0; justify-content:space-between; padding-top:10px; }
  .workspace-nav a { font-size:11px; }
  .account-layout { grid-template-columns:1fr; padding-top:25px; }
  .account-layout h1 { font-size:46px; }
  .account-layout .grid-2 { grid-template-columns:1fr; gap:0; }
  .account-aside { display:none; }
  .account-section h2 { font-size:28px; }
  .privacy-actions { align-items:stretch; flex-direction:column; }
  .privacy-actions .btn { justify-content:center; }
  .request-row { grid-template-columns:minmax(0,1fr) 110px; gap:10px; padding:18px 8px; }
  .request-row>small { grid-column:1 / -1; }
  .request-row h3 { font-size:24px; }
  .request-row .pill { font-size:9px; }
  .request-detail h2 { font-size:32px; }
  .record-filters { gap:18px; }
  .record-filters button { font-size:11px; }
  .collection-examples .grid-3 { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 12px; }
  .collection-examples .lookbook-item>span { font-size:18px; }
  .style-sample-thumbs { gap:4px; }
}

/* Uses the existing approved account/gallery visual language. */
.workflow-card { margin-top:40px; }
.job-progress { margin:25px 0; }
.job-progress progress { width:100%; height:12px; accent-color:var(--green,#173f35); }
.job-results { margin:25px 0; align-items:start; }
.job-results .card h3 { margin:12px 0; }
.job-results .eyebrow { display:block; margin-top:16px; }
.job-result-open { border:0; padding:0; width:100%; display:block; background:none; cursor:zoom-in; }
