#project-brief{box-sizing:border-box;width:min(620px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:0;border:0;border-radius:32px;overflow:auto;overscroll-behavior:contain;touch-action:pan-y;background:#fff8ee;color:var(--wine);box-shadow:0 28px 80px #32140b33;scrollbar-width:thin;scrollbar-color:#751b2c66 transparent}
#project-brief::backdrop{background:#281014c9}
#project-brief[open]{display:block;animation:brief-arrive 360ms cubic-bezier(.16,1,.3,1)}
#project-brief [hidden]{display:none!important}
#project-brief ::selection{background:var(--wine);color:var(--paper)}
#project-brief *{box-sizing:border-box}
.brief-shell{padding:30px 46px 32px}
.brief-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}
.brief-header img{width:180px;height:auto}
#project-brief svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
#project-brief button{font:16px/1.3 StudioText,Arial,sans-serif;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
#project-brief button:focus-visible{outline:2px solid currentColor;outline-offset:5px}
.brief-close{display:grid;place-items:center;border:0;background:none;color:var(--wine);width:44px;height:44px}
#project-brief h2{font:500 60px/.98 StudioDisplay,Georgia,serif;letter-spacing:-.03em;text-align:center;max-width:none;margin:0 0 16px;outline:none}
.brief-intro{font:16px/1.5 StudioText,Arial,sans-serif;text-align:center;color:var(--ink);margin:0 0 24px}
.brief-field{margin:0 0 18px}
.brief-field label{display:flex;justify-content:space-between;gap:10px;font:16px/1.4 StudioText,Arial,sans-serif;color:var(--ink);margin-bottom:6px}
.brief-field label span{font-size:12px;color:var(--ink-muted);align-self:center}
#project-brief input:not([type=range]),#project-brief textarea{display:block;width:100%;padding:10px 0;border:0;border-bottom:1px solid #751b2c88;border-radius:0;background:none;color:var(--wine);font:16px/1.5 StudioText,Arial,sans-serif;caret-color:var(--wine);outline:none;box-shadow:none}
#project-brief textarea{resize:vertical;min-height:92px;max-height:240px}
#project-brief input::placeholder,#project-brief textarea::placeholder{color:#896454;opacity:1}
#project-brief input:not([type=range]):focus,#project-brief textarea:focus{border-bottom:2px solid var(--wine);padding-bottom:9px}
#project-brief [aria-invalid=true]{border-bottom:2px solid var(--wine)!important}
.brief-error,.brief-send-status{font:14px/1.5 StudioText,Arial,sans-serif;color:var(--wine);margin:8px 0 0;outline:none}
.brief-error:empty,.brief-send-status:empty{display:none}
.voice-recorder{margin:4px 0 20px}
.voice-record{display:flex;align-items:center;gap:18px;padding:16px 20px;width:100%;text-align:left;background:none;color:var(--wine);border:1px solid #751b2c88;border-radius:16px;min-height:76px}
#project-brief .voice-record>svg{width:28px;height:36px}
.voice-record span{font-size:18px}.voice-record small{display:block;font-size:12px;line-height:1.4;margin-top:4px;color:#765345}
.voice-record:hover{background:#751b2c08}
.voice-status{font:12px/1.5 StudioText,Arial,sans-serif;margin:8px 0 0;color:#765345}
.voice-live,.voice-playback{border:1px solid #751b2c66;padding:12px 16px;border-radius:16px}
.voice-wave{display:block;width:100%;height:48px}
.voice-live-controls{display:flex;align-items:center;gap:12px;font:12px/1.4 StudioText,Arial,sans-serif}.voice-clock,.voice-duration{font-variant-numeric:tabular-nums}
.voice-stop{margin-left:auto;display:flex;align-items:center;gap:6px;min-height:44px;border:0;background:none;color:var(--wine)}
.voice-player{display:flex;align-items:center;gap:10px;min-width:0}.voice-player button{width:44px;height:44px;display:grid;place-items:center;flex-shrink:0;border:0;background:none;color:var(--wine)}
.voice-seek{min-width:0;flex:1;accent-color:var(--wine);height:36px;cursor:pointer}.voice-duration{font:12px/1.4 StudioText,Arial,sans-serif}
.voice-again{border:0;background:none;color:var(--wine);padding:8px 0;min-height:44px;text-decoration:underline;text-underline-offset:4px;font-size:13px!important}
.voice-audio{display:none}
.brief-send,.brief-done{display:flex;align-items:center;justify-content:center;gap:28px;width:100%;min-height:54px;padding:14px 22px;background:var(--wine);color:var(--paper);border:0;border-radius:28px}
.brief-send:hover,.brief-done:hover{background:#571322}.brief-send:disabled{opacity:.6;cursor:wait}
.brief-success{padding:50px 0}.brief-success>svg{width:56px!important;height:56px!important;display:block;margin:0 auto 28px}.brief-success p{font:16px/1.5 StudioText,Arial,sans-serif;color:var(--ink);text-align:center;margin:24px 0 32px}
.pricing-brief:not(:disabled){cursor:pointer;opacity:1}.pricing-brief:not(:disabled):hover{background:#751b2c0a}
@keyframes brief-arrive{from{opacity:.5;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:700px){#project-brief{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);border-radius:24px}.brief-shell{padding:20px 24px 24px}.brief-header{margin-bottom:14px}.brief-header img{width:145px}#project-brief h2{font-size:46px}.brief-intro{font-size:14px;margin-bottom:22px}.brief-intro br{display:none}.brief-field{margin-bottom:16px}.brief-field label{font-size:14px}.voice-record{padding:12px 14px;gap:12px}.voice-record span{font-size:16px}.voice-record small{font-size:11px}.voice-live{padding:10px}.voice-live-controls{gap:6px}.voice-stop{font-size:13px!important}.voice-playback{padding:8px}.voice-player{gap:4px}.brief-success{padding:30px 0}}
@media(max-height:740px){.brief-shell{padding-top:20px;padding-bottom:24px}#project-brief h2{font-size:44px}.brief-header{margin-bottom:12px}.brief-intro{margin-bottom:18px}}
@media(prefers-reduced-motion:reduce){#project-brief[open]{animation:none}}
/* Fit the whole idle form in ordinary desktop panels, including the in-app view. */
.brief-shell{padding:22px 32px 24px}.brief-header{margin-bottom:10px}.brief-header img{width:150px}
#project-brief h2{font-size:48px;margin-bottom:12px}.brief-intro{font-size:14px;margin-bottom:16px}.brief-field{margin-bottom:12px}.brief-field label{font-size:14px;margin-bottom:2px}
#project-brief input:not([type=range]),#project-brief textarea{padding:8px 0}#project-brief textarea{min-height:68px}
.voice-recorder{margin-bottom:14px}.voice-record{min-height:64px;padding:10px 16px}.voice-record span{font-size:16px}.brief-send{min-height:48px;padding:12px 18px}
.brief-send{position:sticky;bottom:12px;z-index:2;box-shadow:0 -12px 0 #fff8ee,0 12px 0 #fff8ee}
body:has(#project-brief[open]) .scene-scroll-cue{visibility:hidden;pointer-events:none}
#project-brief.brief-letter{width:min(940px,calc(100vw - 40px));border:1px solid #bca492;border-radius:0;transform:rotate(-.65deg);color:#241b18}
#project-brief.brief-letter .brief-shell{padding:36px 48px 40px;position:relative}
#project-brief.brief-letter .brief-shell::before{content:"";position:absolute;inset:9px;border:1px solid #cba99c66;pointer-events:none}
#project-brief.brief-letter .brief-header{margin-bottom:28px}
#project-brief.brief-letter .brief-header img{width:165px;opacity:.8}
#project-brief.brief-letter h2{font-size:64px;text-align:left;max-width:none;margin:0 0 16px;color:var(--wine)}
#project-brief.brief-letter .brief-intro{text-align:left;max-width:520px;font-size:16px;margin:0 0 26px}
#project-brief.brief-letter .brief-fields{display:grid;grid-template-columns:1fr 1.4fr;gap:20px 24px}
#project-brief.brief-letter .brief-field{margin:0}
#project-brief.brief-letter .brief-field:has(#brief-project){grid-column:1/-1;grid-row:1}
#project-brief.brief-letter .brief-field:has(#brief-name){grid-column:1;grid-row:2}
#project-brief.brief-letter .brief-field:has(#brief-contact){grid-column:2;grid-row:2}
#project-brief.brief-letter .brief-field label{font-size:14px;margin-bottom:8px}
#project-brief.brief-letter input:not([type=range]),#project-brief.brief-letter textarea{color:#241b18;border-bottom-color:#cba99c;padding:12px 0}
#project-brief.brief-letter textarea{min-height:138px}
#project-brief.brief-letter .voice-recorder{grid-column:1;grid-row:3;margin:0;min-width:0}
#project-brief.brief-letter .voice-record{padding:10px 0;min-height:44px;border:0;border-radius:0;gap:10px}
#project-brief.brief-letter .voice-record>svg{width:24px;height:26px}
#project-brief.brief-letter .voice-record small{display:none}
#project-brief.brief-letter .voice-record span{font-size:16px}
#project-brief.brief-letter .voice-status{font-size:12px;margin:6px 0 0;color:#785c50}
#project-brief.brief-letter .brief-send{grid-column:2;grid-row:3;align-self:start;justify-self:end;width:auto;min-width:204px;min-height:52px;border-radius:0;padding:14px 26px;margin:0}
#project-brief.brief-letter .brief-send-status{grid-column:1/-1;margin:0}
#project-brief .brief-legal{grid-column:1/-1;font:13px/1.5 StudioText,Arial,sans-serif;color:#5e433a}
#project-brief .brief-legal p{font-size:13px;margin:8px 0}
#project-brief .brief-legal a{color:#751b2c;text-decoration:underline;text-underline-offset:3px}
#project-brief .brief-consent{display:flex;gap:12px;align-items:flex-start;cursor:pointer;min-height:44px}
#project-brief.brief-letter .brief-consent input[type=checkbox]{appearance:auto;flex:0 0 20px;width:20px;height:20px;min-height:20px;padding:0;margin:3px 0;accent-color:#751b2c}
#project-brief.brief-letter .brief-send{grid-row:auto}
@media(max-width:700px){#project-brief.brief-letter{width:calc(100vw - 24px);transform:none}#project-brief.brief-letter .brief-shell{padding:24px}#project-brief.brief-letter h2{font-size:44px}#project-brief.brief-letter .brief-intro{font-size:14px}#project-brief.brief-letter .brief-header img{width:145px}#project-brief.brief-letter .brief-fields{display:flex;flex-direction:column;gap:18px}#project-brief.brief-letter .brief-field:has(#brief-project){order:-1}#project-brief.brief-letter .brief-send{width:100%}#project-brief.brief-letter textarea{min-height:110px}}
@media(max-height:760px){.brief-shell{padding:16px 24px 20px}.brief-header{margin-bottom:6px}#project-brief h2{font-size:40px;line-height:.98;margin-bottom:10px}.brief-intro{margin-bottom:12px}.brief-field{margin-bottom:8px}#project-brief textarea{min-height:58px}.voice-recorder{margin-bottom:10px}.voice-record{min-height:60px}.voice-status{margin-top:5px}}
@media(max-width:700px){#project-brief{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.brief-shell{padding-left:22px;padding-right:22px}}
