/* Phone and tablet layouts; keep the desktop editorial design. */
.fields > *, .two > *, .grid > *, .location-grid > *, .chat-heading > div,
.chat-composer > *, .profile-hero > div { min-width: 0; }
main p, main li, main dd, main h2, main h3, .portal-project, .agenda-event {
  overflow-wrap: anywhere;
}
main dd { margin-left: 0; margin-bottom: 1rem; }
main dt { font-weight: 600; }
input[type=radio] { width: 20px; height: 20px; flex: none; accent-color: var(--accent); margin-top: 3px; }
.button { max-width: 100%; white-space: normal; }
.pwa-dialog { width: min(440px, calc(100% - 32px)); max-height: 85svh; overflow-y: auto; padding: 28px; border: 1px solid var(--line); background: var(--paper); color: var(--ink); }
.pwa-dialog::backdrop { background: #39291f99; }
.pwa-dialog [hidden] { display: none !important; }
.pwa-dialog h2 { font-size: 32px; }
.pwa-dialog .actions { margin-bottom: 0; }
.pwa-dialog ol { padding-left: 22px; }
.pwa-dialog li + li { margin-top: 12px; }
.pwa-footer-button { font: inherit; color: inherit; background: transparent; border: 1px solid currentColor; padding: 12px 16px; cursor: pointer; min-height: 44px; }
.account-signup { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; width: 100%; min-height: 64px; padding: 16px 20px; background: var(--rose); color: var(--ink); border: 1px solid var(--line); font-size: 16px; text-align: left; }
.account-signup strong { color: var(--accent); text-decoration: underline; text-underline-offset: 4px; }
.account-signup:hover { border-color: var(--accent); }
html[data-pwa-installed=true] [data-pwa-open] { display: none; }
.site-menu-panel { position: absolute; z-index: 30; right: 6%; top: 100%; width: min(650px, 88vw); }
.site-menu:not([open]) .site-menu-panel { display: none; }
.site-menu .site-menu-panel #nav { position: relative; top: auto; right: auto; width: 100%; }
.menu-scroll-hint { position: absolute; z-index: 31; bottom: 1px; left: 1px; right: 1px; height: 52px; display: flex; justify-content: center; align-items: flex-end; background: linear-gradient(transparent, var(--paper) 45%); border-radius: 0 0 20px 20px; pointer-events: none; }
.menu-scroll-hint[hidden] { display: none; }
.menu-scroll-hint button { width: 44px; height: 44px; padding: 10px; border: 0; background: var(--accent); color: var(--paper); border-radius: 50%; margin-bottom: 4px; cursor: pointer; pointer-events: auto; }
.menu-scroll-hint button:focus-visible { outline: 2px solid var(--accent); outline-offset: -3px; }
.menu-scroll-hint svg { display: block; width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.menu-scroll-hint button[data-direction=up] svg { transform: rotate(180deg); }
.home-scroll-hint { position: fixed; z-index: 20; bottom: max(18px, env(safe-area-inset-bottom)); left: calc(50% - 22px); width: 44px; height: 44px; display: grid; place-items: center; padding: 10px; border: 1px solid var(--paper); border-radius: 50%; background: var(--accent); color: var(--paper); box-shadow: 0 3px 12px #39291f33; cursor: pointer; }
.home-scroll-hint[hidden] { display: none; }
.home-scroll-hint svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.5; }
.home-scroll-hint:focus-visible { outline: 2px solid var(--ink); outline-offset: 3px; }

@media (max-width: 800px) {
  .fields { gap: 18px; }
  input:not([type=checkbox]):not([type=radio]), select, textarea { font-size: 16px; min-width: 0; max-width: 100%; }
  input:not([type=checkbox]):not([type=radio]), select { min-height: 48px; }
  input[type=file] { padding: 10px 8px; }
  input[type=file]::file-selector-button { padding: 8px; margin-right: 8px; }
  .check { min-height: 44px; align-items: flex-start; padding: 8px 0; margin: 8px 0; }
  input[type=checkbox] { width: 22px; height: 22px; }
  .wizard-previews button, .chat-previews button, .chat-photo-button,
  .chat-message-actions button, .chat-new, .subnav a { min-height: 44px; }
  .chat-message-actions { flex-wrap: wrap; }
  .site-menu #nav { max-height: min(70svh, var(--menu-room, 70svh)); overflow-y: auto; overscroll-behavior: contain; padding-bottom: 52px; }
  .account-options { max-height: 70svh; overflow-y: auto; overscroll-behavior: contain; }
  .draft-tools .button { margin-top: 8px; }
}

@media (max-width: 700px) {
  header { display: grid; grid-template-columns: minmax(0, 1fr) auto; padding: 16px 5% 8px; gap: 6px 12px; }
  .brand { font-size: 20px; }
  .brand span { font-size: 8px; }
  .header-tools { margin-left: 0; gap: 10px; }
  .site-menu > summary, .account-icon { width: 44px; height: 44px; padding: 10px; display: grid; place-items: center; }
  .languages { grid-column: 1 / -1; justify-content: flex-end; gap: 4px; }
  .languages button { min-width: 44px; min-height: 44px; font-size: 12px; padding: 10px; }
  .site-menu #nav { right: 5%; width: 90%; }
  .site-menu-panel { right: 5%; width: 90%; }
  .account-menu { position: static; }
  .account-options { right: 5%; top: 100%; width: min(300px, 90%); }
  .page { padding: 28px 5% 48px; }
  .page > h1 { font-size: clamp(34px, 9vw, 46px); margin-top: 18px; }
  .page h2 { font-size: clamp(28px, 7vw, 36px); }
  .page h3, legend { font-size: 26px; }
  .page .upcoming-project h2 { font-size: 24px; }
  fieldset { min-width: 0; margin: 28px 0; }
  legend { max-width: 100%; }
  .calendar, .empty, .success, .care-card, .first-story, .dossier-banner { padding: 20px; }
  .callout { padding: 16px; }
  .profile-hero > div:nth-child(2) { min-width: 0; }
  .profile-details { grid-template-columns: 1fr; gap: 4px; }
  .profile-details dd { margin-bottom: 12px; }
  .actions { gap: 12px; margin: 24px 0; }
  .page .actions > .button, .wizard-controls > .button { flex: 1 1 180px; }
  .wizard-controls { flex-wrap: wrap; gap: 10px; }
  .portal-photos { gap: 10px; }
  .portal-photos a { width: calc(50% - 5px); min-width: 0; }
  .portal-photos img { display: block; width: 100%; height: 160px; }
  .upcoming-photos { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .editorial-hero { min-height: 580px; height: auto; max-height: none; }
  .editorial-hero h1 { font-size: clamp(48px, 12vw, 80px); }
  .editorial-hero .actions > .button { flex: 1 1 150px; font-size: 12px; }
  .editorial-hero .actions { align-items: stretch; }
  .hero-bottom { flex-wrap: wrap; }
  footer { padding-bottom: max(28px, env(safe-area-inset-bottom)); }
}

@media (max-width: 480px) {
  .site-menu #nav { grid-template-columns: 1fr; }
  .site-menu #nav a { min-height: 44px; font-size: 14px; }
  .wizard-progress { gap: 8px; }
  .wizard-progress button { min-height: 48px; padding: 10px; }
  .chat-composer { grid-template-columns: minmax(0, 1fr); }
  .chat-composer > .button { width: 100%; }
  .chat-bubble { max-width: 95%; }
  .chat-heading h2 { font-size: 24px; }
  .agenda-month-controls { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .agenda-month-controls .field { grid-column: 1 / -1; grid-row: 1; }
  .agenda-month-controls .button { width: 100%; }
  .agenda-day { min-height: 68px; min-width: 0; padding: 5px 1px; font-size: 14px; }
  .agenda-day small { font-size: 10px; line-height: 1.3; }
  .agenda-weekday { font-size: 11px; }
  .date { flex-wrap: wrap; gap: 8px; }
  .page form > .button, .artist-calendar form > .button { display: block; width: 100%; margin-top: 12px; }
  .hero-bottom { font-size: 8px; gap: 8px; }
  .hero-bottom a { max-width: 155px; padding: 9px; }
  .editorial-hero .actions { flex-direction: row; }
  .editorial-hero .actions > .button { flex-basis: 100%; }
  .editorial-hero-content > p { line-height: 1.5; }
  .intro-copy { margin: 44px auto; }
  .intro-copy h2 { font-size: 34px; }
  .pwa-dialog { padding: 20px; }
}

.tattoo-gallery img.tattoo-full { aspect-ratio: auto; height: auto; }

.portfolio-photo-dialog {
  width: 100vw;
  height: 100vh;
  height: 100dvh;
  max-width: none;
  max-height: none;
  margin: 0;
  border: 0;
  padding: max(12px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));
  background: var(--paper);
  color: var(--ink);
  overflow: hidden;
}
.portfolio-photo-dialog[open] { display: grid; grid-template-rows: auto minmax(0, 1fr); gap: 12px; }
.portfolio-photo-back {
  justify-self: start;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 48px;
  padding: 10px 16px;
  border: 1px solid var(--accent);
  border-radius: 6px;
  background: var(--accent);
  color: var(--paper);
}
.portfolio-photo-back svg { width: 24px; height: 24px; flex-shrink: 0; fill: none; stroke: currentColor; stroke-width: 2; }
.portfolio-photo-dialog > img { display: block; width: 100%; height: 100%; min-height: 0; object-fit: contain; }

/* Account and form accessibility. */
:focus-visible { outline: 3px solid #883e2e; outline-offset: 4px; }
.skip-link { position: fixed; top: -100px; left: 12px; z-index: 2000; background: #fff7e4; color: #362b25; padding: 12px 18px; }
.skip-link:focus { top: 12px; }
.account-settings details { margin: 20px 0; padding: 12px 0; }
.account-settings summary { cursor: pointer; min-height: 44px; font-weight: 600; }
.password-visibility { min-height: 44px; margin-top: 8px; align-self: flex-start; }
.account-settings [data-mfa-form] { overflow-wrap: anywhere; }
.account-settings img { max-width: 100%; height: auto; }
@media(max-width: 600px) { input, select, textarea { font-size: 16px; } .account-settings .actions { flex-wrap: wrap; } }
@media(prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; transition-duration: .01ms !important; } }

/* Voluntary tattoo sharing: public gallery and personal story controls. */
.community-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 290px), 1fr)); gap: 24px; margin-top: 28px; align-items: start; }
.community-post { overflow: hidden; }
.community-photo { display: block; width: 100%; max-height: 580px; object-fit: contain; border-radius: 18px; background: #eee4d7; margin-bottom: 18px; }
.community-body { white-space: pre-wrap; overflow-wrap: anywhere; }
.community-compose { display: grid; gap: 18px; padding: 26px; border-radius: 20px; border: 1px solid #d9cdbf; background: #fbf8f1; }
.community-compose .check { align-items: flex-start; }
.community-compose .check input { flex-shrink: 0; margin-top: 4px; }
.community-compose textarea { resize: vertical; }
.community-post .actions { flex-wrap: wrap; gap: 10px; }
.community-post [data-post-editor]:not(:empty) { margin-top: 22px; }
.community-grid [data-moderate] { padding-bottom: 30px; }
[data-link-fallback] input { width: 100%; font-size: 16px; }
@media(max-width:600px) { .community-compose { padding: 18px; } .community-grid { gap: 18px; } .community-post .actions .button { width: 100%; } }

.story-example{margin:32px auto;max-width:320px;text-align:center}.story-example img{display:block;width:100%;height:auto;border-radius:18px;box-shadow:0 12px 32px #54372720}.story-example figcaption{margin-top:14px;font-size:14px;line-height:1.6}

/* Inline links remain identifiable without relying on colour alone. */
.page p a:not(.button),.page li a:not(.button){color:#883e2e;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:4px;font-weight:600}
.page p a:not(.button):hover,.page li a:not(.button):hover{color:#642c21;text-decoration-thickness:2px}
.page p a:not(.button):focus-visible,.page li a:not(.button):focus-visible{outline:2px solid #883e2e;outline-offset:4px;border-radius:2px}
/* Professional workspace: one task per screen. */
.pro-nav{display:flex;gap:8px;flex-wrap:wrap;padding:12px 0 22px;border-bottom:1px solid #d5c4b4;margin-bottom:28px}.pro-nav a,.pro-detail-tabs a{padding:12px 18px;text-decoration:none;border:1px solid #d5c4b4;border-radius:8px;color:inherit}.pro-nav a[aria-current=page],.pro-detail-tabs a[aria-current=page]{background:#883e2e;color:#fff7e4;border-color:#883e2e}.pro-dot{display:inline-block;background:#e9b858;width:9px;height:9px;margin-left:8px;border-radius:50%}.pro-detail-top{display:flex;gap:16px;flex-wrap:wrap;align-items:center;margin-bottom:24px}.pro-detail-tabs{display:flex;gap:8px}.pro-filters{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin:22px 0}.pro-list{display:grid;gap:10px}.pro-row{display:flex;gap:18px;align-items:center;padding:20px;background:#fffaf0;border:1px solid #decebf;border-radius:10px;text-decoration:none;color:inherit}.pro-row:hover{border-color:#883e2e}.pro-avatar{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;background:#efdfd3;border-radius:50%;font-size:24px}.pro-row-text{display:grid;gap:5px;flex:1;min-width:0}.pro-row-text>*{overflow-wrap:anywhere}.pro-row-text small{opacity:.7}.pro-agenda-layout{display:grid;grid-template-columns:minmax(300px,1fr) minmax(300px,1fr);gap:28px;align-items:start;margin:22px 0}.pro-agenda-day .agenda-event{width:100%;text-align:left;display:grid;gap:6px}.professional-page details>summary{cursor:pointer;padding:16px 0;font-weight:600}.professional-page #artist-live[hidden],.professional-page #temporary-admin[hidden]{display:none!important}[data-pro][data-pane=chat] #portal-thread>*:not(#portal-chat){display:none!important}[data-pro][data-pane=details] #portal-thread>#portal-chat{display:none!important}.professional-page .agenda-grid{align-self:start}.professional-page h1{font-size:clamp(30px,5vw,56px)}@media(max-width:760px){.pro-agenda-layout{grid-template-columns:1fr}.pro-nav{gap:6px}.pro-nav a{font-size:14px;padding:10px 12px}.pro-row{padding:14px;gap:12px}.pro-row .unread-count{font-size:12px}.pro-detail-tabs{flex-wrap:wrap}.pro-detail-tabs a{padding:10px 12px}.pro-agenda-day dl{overflow-wrap:anywhere}}
.pro-buckets{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin:24px 0}.pro-bucket{display:grid;gap:9px;padding:18px;text-align:left;background:#fffaf0;color:#362b25;border:1px solid #ddcdbd;border-radius:12px;cursor:pointer;min-height:105px}.pro-bucket strong{font-size:30px;font-weight:500}.pro-bucket span{font-size:14px;line-height:1.4}.pro-bucket[aria-pressed=true]{box-shadow:0 0 0 2px #883e2e;border-color:#883e2e}.pro-bucket-import_review,.pro-bucket-changes{background:#f4ded0}.pro-bucket-quote{background:#f4e6b6}.pro-bucket-client{background:#eee4f1}.pro-bucket-payment{background:#fae1bd}.pro-bucket-future{background:#dfeadf}.pro-bucket-past{background:#ece9e4}@media(max-width:600px){.pro-buckets{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.pro-bucket{padding:13px;min-height:92px}.pro-bucket strong{font-size:26px}}
/* Sidebar and focused appointment workspace. */
[data-pro]{display:grid;grid-template-columns:220px minmax(0,1fr);column-gap:28px;align-items:start}[data-pro]>.pro-nav{grid-column:1;grid-row:1/5;position:sticky;top:20px;display:flex;flex-direction:column;flex-wrap:nowrap;border:0;border-right:1px solid #d5c4b4;margin:0;padding:10px 18px 20px 0;gap:8px}[data-pro]>#pro-content,[data-pro]>#portal-thread{grid-column:2;min-width:0}.pro-sidebar-brand{font:19px Georgia,serif;padding:10px 8px 22px;line-height:1.4}.pro-sidebar-brand small{display:block;font:10px system-ui;letter-spacing:1px;margin-top:12px;color:#883e2e}.pro-nav a{border:0;border-radius:0 22px 22px 0;padding:13px 16px}.pro-menu-toggle,.pro-menu-overlay{display:none}.pro-detail-tabs{flex-wrap:wrap}.pro-document{padding:22px 0;border-bottom:1px solid #decebf}.artist-draft-tools{background:#f1e9dc;border:1px dashed #bda58d;border-radius:9px;padding:16px;margin-bottom:22px}.artist-draft-tools p{font-size:14px;line-height:1.5}.professional-page{max-width:1450px!important}.pro-agenda-layout{grid-template-columns:minmax(240px,.9fr) minmax(280px,1.1fr)}@media(max-width:1050px){.pro-agenda-layout{grid-template-columns:1fr}}@media(max-width:760px){[data-pro]{display:block}.pro-menu-toggle{display:inline-flex;margin-bottom:20px}[data-pro]>.pro-nav{position:fixed;left:0;top:0;bottom:0;width:min(310px,84vw);z-index:1002;background:#fff7e4;overflow-y:auto;padding:70px 22px 28px 16px;transform:translateX(-105%);transition:transform .16s ease;border-right:1px solid #ccb9a8}.pro-sidebar-open>.pro-nav{transform:translateX(0)}.pro-menu-overlay:not([hidden]){display:block;position:fixed;inset:0;width:100vw;height:100vh;background:#0008;border:0;z-index:1001}.professional-page .pro-nav a{font-size:16px;padding:15px 18px}.professional-page .pro-detail-tabs a{font-size:14px}}
.agenda-legend{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 25px}.agenda-legend span{padding:7px 10px;border-radius:8px;font-size:12px;color:#352c25}.agenda-tone-confirmed{background:#dfeadf!important;border-color:#a5bda5!important;color:#263d2a!important}.agenda-tone-payment{background:#fae1bd!important;border-color:#d8a86a!important;color:#533514!important}.agenda-tone-signature{background:#eee4f1!important;border-color:#baa3c6!important;color:#4e365a!important}.agenda-timeline{position:relative;margin:20px 0 25px 54px;min-height:180px;border-left:1px solid #ccbfae}.agenda-hour{position:absolute;left:0;right:0;height:1px;border-top:1px solid #e2d8c8;pointer-events:none}.agenda-hour>span{position:absolute;right:100%;width:52px;text-align:left;top:-9px;font:12px system-ui;color:#74695d}.agenda-time-event{position:absolute;left:6px;right:3px;min-height:45px;z-index:1}.agenda-time-event>.agenda-event{height:100%;width:100%;padding:10px 12px;display:block;overflow:auto;border-radius:8px;text-align:left;box-sizing:border-box;margin:0;min-height:0;font-size:13px}.agenda-time-event>.agenda-event>*{display:block;margin-bottom:5px}.agenda-day-dots{display:flex;gap:4px;justify-content:center}.agenda-day-dots i{display:block;width:7px;height:7px;border-radius:50%;border:1px solid}.professional-page .agenda-day{min-height:65px}.agenda-day-availability{border-top:1px solid #ddcebf}.pro-document h3{font-size:20px}@media(max-width:760px){[data-pro]>.pro-nav{visibility:hidden}.pro-sidebar-open>.pro-nav{visibility:visible}.agenda-time-event>.agenda-event{font-size:13px}}
.pro-sidebar-group{border-top:1px solid #d6c6b5;margin-top:15px;padding-top:18px}.pro-sidebar-group>small{display:block;font:10px system-ui;letter-spacing:1px;margin:0 12px 10px;color:#7b6c60}.pro-sidebar-group .pro-category-link{display:flex;align-items:center;gap:8px;font-size:12px;line-height:1.4;padding:10px 8px}.pro-category-dot{flex:0 0 8px;height:8px;border-radius:50%;border:1px solid #a29183}.pro-category-link>span{margin-left:auto;font-variant-numeric:tabular-nums}

/* Artist request brief: quiet editorial hierarchy in the site's palette. */
.request-brief{--brief-ink:#49392f;--brief-rust:#883e2e;--brief-line:#e4d7c8;color:var(--brief-ink);margin:26px 0 36px}.brief-hero{display:flex;justify-content:space-between;gap:28px;align-items:center;background:#eee0d0;padding:30px;border-radius:18px 18px 0 0;border:1px solid var(--brief-line)}.request-brief .eyebrow{font:600 10px/1.6 system-ui,sans-serif;letter-spacing:1.8px;color:#825744;margin-bottom:12px}.brief-hero h2{font:normal clamp(28px,3.5vw,43px)/1.15 Georgia,serif;margin:0 0 12px;overflow-wrap:anywhere}.brief-byline{font-size:16px!important;margin:0 0 16px}.brief-tags{display:flex;gap:7px;flex-wrap:wrap}.brief-tags span,.brief-waiting{display:inline-block;border:1px solid #cbb29d;padding:5px 11px;border-radius:20px;font:12px/1.5 system-ui;background:#fff8eb}.brief-budget{flex:0 0 205px;padding:22px;background:#883e2e;color:#fff8eb;border-radius:13px;display:grid;gap:9px}.brief-budget>span{font:11px/1.5 system-ui;letter-spacing:1px;text-transform:uppercase}.brief-budget strong{font:normal 28px/1.2 Georgia,serif;overflow-wrap:anywhere}.brief-budget small{font:11px/1.6 system-ui;color:#fff2dc}.brief-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(220px,1fr);gap:20px;margin-top:20px}.brief-main,.brief-side{display:grid;gap:20px;align-content:start;min-width:0}.brief-panel{padding:26px;background:#fffcf5;border:1px solid var(--brief-line);border-radius:14px;min-width:0}.brief-panel h3{font:normal 24px/1.25 Georgia,serif;margin:0 0 14px}.brief-section-heading{display:flex;gap:13px;align-items:center;margin-bottom:18px}.brief-section-heading h3{margin:0}.brief-number{display:grid;place-items:center;border:1px solid #d6bcaa;color:#883e2e;width:34px;height:34px;border-radius:50%;font:14px Georgia,serif;flex-shrink:0}.brief-description{white-space:pre-wrap;font:15px/1.85 system-ui!important;overflow-wrap:anywhere}.brief-facts,.brief-contact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px;margin:24px 0 0}.brief-facts>div,.brief-contact>div{min-width:0}.brief-facts dt,.brief-contact dt{font:10px/1.5 system-ui;text-transform:uppercase;letter-spacing:.8px;color:#77695f;margin:0 0 6px}.brief-facts dd,.brief-contact dd{font:14px/1.65 system-ui;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.brief-contact{grid-template-columns:1fr;gap:14px}.brief-person{background:#f3eee3}.brief-attention{background:#eaf0e6;border-color:#d2dccb}.brief-side .brief-facts{grid-template-columns:1fr;gap:14px}.brief-instagram{display:inline-block;margin-top:18px;font:13px system-ui;color:#883e2e}.brief-count{margin-left:auto;background:#eee0d0;border-radius:50%;padding:7px 11px;font:13px system-ui}.brief-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.brief-gallery a{display:grid;border-radius:10px;overflow:hidden;border:1px solid #e4d7c8;color:#674b3b;text-decoration:none;background:#fff}.brief-gallery img{display:block;width:100%;aspect-ratio:1;object-fit:contain;background:#f2ece2}.brief-gallery span{font:11px system-ui;padding:10px}.brief-muted{font:13px/1.7 system-ui!important;color:#77695f}.brief-project+.brief-project,.brief-extra{border-top:1px solid var(--brief-line);padding-top:24px;margin-top:24px}.brief-additional{margin-top:20px}.brief-archive{margin:25px 0;color:#675548}.brief-archive>summary{border-bottom:1px solid #ded1c0;padding:18px 0;cursor:pointer}.brief-archive .dossier-banner{margin-top:20px}.brief-archive .card{margin-top:18px}@media(max-width:1050px){.brief-layout{grid-template-columns:1fr}.brief-side{grid-template-columns:repeat(2,minmax(0,1fr))}.brief-side>section:last-child{grid-column:1/-1}}@media(max-width:600px){.brief-hero{display:block;padding:23px}.brief-budget{margin-top:22px;padding:18px}.brief-budget strong{font-size:26px}.brief-panel{padding:21px}.brief-side{grid-template-columns:1fr}.brief-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.brief-facts{gap:18px 12px}.brief-hero h2{font-size:30px}}

.wait-slot-panel{background:#eff2e8;border:1px solid #c5d1be;border-left:4px solid #6e8561}.wait-slot-panel h2{font:normal 29px/1.25 Georgia,serif}.wait-slot-panel form{margin-top:22px}.wait-slot-panel .eyebrow{color:#536e47}

.pro-bucket-future_instagram{border-color:#c5b2db;background:#eee5f5}.pro-bucket-future_site{border-color:#aec9ae;background:#e4efe0}.pro-category-dot.pro-bucket-future_instagram{background:#a182b8}.pro-category-dot.pro-bucket-future_site{background:#79976c}

.pro-bucket-slots{background:#f8e9cd;border-color:#d9be88}.pro-category-dot.pro-bucket-slots{background:#c49a50}

[data-pro][data-pane=group-chat] #portal-thread>*:not(#group-space){display:none!important}[data-pro][data-pane=chat] #portal-thread>#group-space{display:none!important}.group-member-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:18px;margin:24px 0}.group-member{padding:20px;background:#fffaf0;border:1px solid #decebf;border-radius:10px}.group-member dl{display:grid;gap:6px}.group-member dt{font-size:13px;opacity:.7}.group-member dd{margin:0 0 8px;overflow-wrap:anywhere}#group-space [role=log] p{white-space:pre-wrap;overflow-wrap:anywhere}

/* Full-screen private chat photos, on touch screens and desktop. */
.chat-photo-item{margin:0;min-width:0}.chat-photo-item>a:first-child{display:block}.chat-photo-item .chat-photo-download{display:inline-block;margin:8px 0 4px;color:#883e2e;text-decoration:underline;text-underline-offset:3px;font:14px/1.5 system-ui}.chat-photo-viewer{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:#211c18;color:#fff7e4;z-index:2500;box-sizing:border-box}.chat-photo-viewer::backdrop{background:#211c18}.chat-photo-viewer-shell{height:100%;display:flex;flex-direction:column;padding:max(14px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));box-sizing:border-box;gap:12px}.chat-photo-viewer header,.chat-photo-viewer footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.chat-photo-viewer .button{font:14px/1.5 system-ui;padding:12px 16px;min-height:44px;margin:0}.chat-photo-viewer .button.secondary{background:#fff7e4;color:#49392f;border-color:#fff7e4}.chat-photo-viewer-image{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;position:relative;overflow:auto}.chat-photo-viewer img{display:block;width:100%;height:100%;object-fit:contain}.chat-photo-viewer img[hidden]{display:none}.chat-photo-viewer [role=status]{position:absolute;max-width:85%;padding:12px;text-align:center;background:#211c18d9;font:14px/1.6 system-ui}.chat-photo-viewer [role=status]:empty{display:none}.chat-photo-viewer footer{font:13px/1.5 system-ui}.chat-photo-viewer [data-photo-caption]{flex:1;text-align:center;overflow-wrap:anywhere}.chat-photo-viewer button:focus-visible,.chat-photo-viewer a:focus-visible{outline:3px solid #e5b39c;outline-offset:3px}.chat-photo-viewer [hidden]{display:none!important}@media(max-width:500px){.chat-photo-viewer header .button{font-size:12px;padding:11px}.chat-photo-viewer footer .button{font-size:12px;padding:10px}.chat-photo-viewer [data-photo-caption]{font-size:12px}}
.pro-bucket-touchup_waiting{background:#e6edf5;border-color:#aec2d8}.pro-bucket-touchup_confirmed{background:#e7eddc;border-color:#b5c59c}.pro-category-dot.pro-bucket-touchup_waiting{background:#8ca7c3}.pro-category-dot.pro-bucket-touchup_confirmed{background:#8ca16d}
.pro-test-frame{display:block;width:100%;height:min(1150px,90vh);min-height:700px;border:2px solid #b79b85;border-radius:12px;background:#fff7e4;margin:24px 0}.pro-test-controls{flex-wrap:wrap}.pro-test-banner{position:sticky;top:0;z-index:3000;background:#49392f;color:#fff7e4;padding:14px 20px;font:13px/1.6 system-ui;border-bottom:3px solid #d9b68f}.pro-test-banner strong,.pro-test-banner>span{display:block}.pro-test-banner button{padding:8px 12px;min-height:38px;border:1px solid #e6cbb0;border-radius:6px;background:#fff7e4;color:#49392f;font:13px system-ui}.pro-test-banner .actions{margin:10px 0 0}.pro-test-banner p{font:12px/1.5 system-ui;margin:8px 0 0}@media(max-width:600px){.pro-test-frame{min-height:650px;height:85vh}.pro-test-banner{padding:12px}.pro-test-banner .actions{gap:6px}}
.pro-buckets[data-pro-buckets]{display:block}.pro-bucket-group{margin:26px 0}.pro-bucket-group>h3{margin-bottom:12px}.pro-bucket-group>.pro-buckets{margin-top:0}.pro-bucket-overview{max-width:240px}
