/* Shared production shell adjustments; module styles and native mobile stay separate. */
@keyframes fv-office-wash { 0%,100% { opacity:.08 } 50% { opacity:1 } }
@media screen and (min-width:921px) {
    html:root body.fv-office-design:has(:is(#creation-app,#office-app,#analysis-app,#ai-document-app)) { background:#fff !important; isolation:isolate; }
    html body.fv-office-design :is(#creation-app,#office-app,#analysis-app,#ai-document-app),
    html body.fv-office-design :is(#creation-app,#office-app,#analysis-app,#ai-document-app) :is(.creation-workspace,.creation-main,.office-main,.analysis-main) { background:transparent !important; }
    body.fv-office-design :is(.creation-app,.creation-workspace,.creation-main,.office-main,.analysis-main,.fuuvo-writing-page) { background:transparent !important; }
    html body.fv-office-design :is(#creation-app,#office-app,#analysis-app,#ai-document-app) .creation-topbar { position:relative !important; background:transparent !important; border-bottom-color:transparent !important; box-shadow:none !important; backdrop-filter:none !important; }
    html body.fv-office-writing #creation-app[data-creation-page="writing"] .creation-workspace > .creation-topbar { position:relative !important; background:transparent !important; border:0 !important; box-shadow:none !important; backdrop-filter:none !important; }
    .fv-office-ambient { position:fixed; inset:0 0 auto 72px; height:min(620px,76vh); z-index:-1; pointer-events:none; overflow:hidden; mask-image:linear-gradient(#000 0%,#000 12%,#000d 37%,#0006 66%,transparent 100%); background:radial-gradient(ellipse at 9% -12%,#18d3c557,transparent 54%),radial-gradient(ellipse at 51% -20%,#4d9eff4d,transparent 59%),radial-gradient(ellipse at 91% -6%,#e77ee245,transparent 55%); }
    .fv-office-ambient::after { content:''; position:absolute; inset:0; background:radial-gradient(ellipse at 11% -6%,#418eff4f,transparent 56%),radial-gradient(ellipse at 53% -12%,#ff6f904d,transparent 60%),radial-gradient(ellipse at 94% -12%,#ffc64e59,transparent 56%); animation:fv-office-wash 8s ease-in-out infinite; }
    body.fv-office-design[data-fv-visibility="hidden"] :is(.fv-office-ambient,.fv-office-ambient::after),
    body.fv-office-design[data-fv-visibility="hidden"] *::before,
    body.fv-office-design[data-fv-visibility="hidden"] *::after { animation-play-state:paused !important; }
    body.fv-office-design :is(.office-main,.ai-document-main,.analysis-main) { max-width:1600px; width:100%; margin:0 auto; padding:30px 40px 40px; box-sizing:border-box; }
    body.fv-office-writing .creation-main { padding:0; }
    body.fv-office-writing .creation-workspace > main { max-width:none; padding:0; }
    html body.fv-office-writing #creation-app[data-creation-page="writing"] .creation-main[data-fuuvo-app-scroll="1"] { max-width:1600px !important; width:100% !important; margin:0 auto; padding:30px 40px 40px !important; }
    body.fv-office-writing .fuuvo-writing-page { --cycle:8s; --ink:#233c49; --muted:#607780; --teal:#16796f; --teal-dark:#166e66; --line:#dce6e7; }
    body.fv-office-writing .fuuvo-writing-page main { width:100%; max-width:1600px; margin:0 auto; padding:30px 40px 40px; box-sizing:border-box; }
    body.fv-office-writing .fuuvo-writing-page :is(.writing-topbar,.writing-route-nav) { display:none; }
    body.fv-office-writing .fuuvo-writing-page .writing-studio { gap:0; align-items:stretch; }
    body.fv-office-writing .fuuvo-writing-page .step-label { display:none; }
    body.fv-office-tasks #main.office-task-studio { margin:0 auto; padding:30px 40px 40px; }
    body.fv-office-tasks .office-task-studio :is(#workflows .section-heading,#changeWorkflow) { display:none; }
    body.fv-office-tasks .office-task-studio #workflows { margin:0 0 22px; padding:0; }
    body.fv-office-tasks .office-task-studio .workflow-grid { grid-template-columns:repeat(6,minmax(0,1fr)); }
    body.fv-office-tasks .office-task-studio .workflow-card { min-width:0; }
    body.fv-office-tasks .office-task-studio .workflow-copy h3 { overflow-wrap:anywhere; }
    body.fv-office-tasks .office-task-studio .office-workspace { gap:0; }
    body.fv-office-tasks .office-task-studio .field-support { min-height:20px; }
    body.fv-office-tasks .office-task-studio .field-support #materialCount { margin-left:auto; }
    .fv-office-reference { margin:13px 0 18px; }
    .fv-office-upload { position:relative; display:flex; align-items:center; gap:12px; width:100%; min-height:65px; padding:12px 14px; border:1px dashed #bdcfce; border-radius:8px; background:#fff; color:#315d65; cursor:pointer; box-sizing:border-box; }
    .fv-office-upload input { position:absolute; width:1px; height:1px; opacity:0; overflow:hidden; }
    .fv-office-upload-icon { width:24px; height:24px; flex:0 0 24px; }
    .fv-office-upload .reference-upload-copy { display:flex; flex-direction:column; gap:3px; min-width:0; }
    .fv-office-upload strong { font-size:12px; font-weight:600; }
    .fv-office-upload .reference-upload-copy > span { font-size:11px; color:#607780; }
    .fv-office-upload:is([data-drag-active="true"],:focus-visible,:focus-within) { border-color:#16796f; background:#f3fcfa; outline:2px solid #75bdb4; outline-offset:2px; }
    body.fv-office-writing #referenceStatus, body.fv-office-tasks #fileStatus { margin:6px 0 0; font-size:11px; line-height:1.6; }
    .fv-office-splitter { position:relative; display:flex; align-items:center; justify-content:center; min-width:0; cursor:col-resize; touch-action:none; outline-offset:-3px; }
    .fv-office-splitter > span { display:block; width:3px; height:42px; border-radius:3px; background:#c5d8d5; }
    .fv-office-splitter:is(:hover,:focus-visible) > span { background:#16796f; box-shadow:0 0 0 3px #e6f5f1; }
    body.fv-office-resizing, body.fv-office-resizing * { cursor:col-resize !important; user-select:none !important; }
    html body.fv-office-analysis #analysis-app[data-page="home"] .analysis-main[data-fuuvo-app-scroll="1"] { max-width:1600px !important; width:100% !important; padding:30px 40px 40px; }
    body.fv-office-analysis #fuuvo-analysis-desktop { width:100%; max-width:none; padding:0; color:#233f4b; background:transparent !important; }
    body.fv-office-analysis #fuuvo-analysis-desktop .workspace { gap:0; }
    body.fv-office-analysis #fuuvo-analysis-desktop .upload-art { width:48px; height:48px; background:#e9f6f3; border-radius:8px; margin:0 0 14px; }
    body.fv-office-analysis #fuuvo-analysis-desktop .upload-art .mini-doc { display:none; }
    body.fv-office-analysis #fuuvo-analysis-desktop .upload-bubble { position:static; width:48px; height:48px; box-shadow:none; border:0; background:transparent; color:#168a80; }
    body.fv-office-analysis #fuuvo-analysis-desktop .upload-bubble svg { width:24px; height:24px; }
    body.fv-office-analysis #fuuvo-analysis-desktop .sample-session[hidden] { display:none; }
    body.fv-office-analysis #fuuvo-analysis-desktop .workspace-note > a { display:none; }
    html:not([data-ui-theme="dark"]) body.fv-office-analysis #fuuvo-analysis-desktop :is(.example-card small,.analysis-template-open p) { color:#526d79; }
    body.fv-office-writing #fuuvo-writing-page .writing-mode { padding:0; border:0; background:transparent; }
    body.fv-office-design :is(.brief-panel,.draft-panel,.result-panel,.panel,.slides-composer,.office-result-card) { min-width:0; }
    body.fv-office-design :is(input,textarea,select) { max-width:100%; }
    body.fv-office-design :is(h1,h2,h3,button,label,a) { letter-spacing:0; }
    body.fv-office-design .fv-office-splitter[hidden] { display:none; }
}
@media (min-width:921px) and (max-width:1100px) {
    body.fv-office-writing .fuuvo-writing-page .writing-studio,
    body.fv-office-tasks .office-task-studio .office-workspace { grid-template-columns:1fr; gap:22px; }
    body.fv-office-tasks .office-task-studio .workflow-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (min-width:921px) and (max-width:1050px) {
    body.fv-office-analysis #fuuvo-analysis-desktop .workspace { grid-template-columns:1fr; gap:22px; }
}
@media (min-width:921px) and (prefers-reduced-motion:reduce) {
    body.fv-office-design *, body.fv-office-design *::before, body.fv-office-design *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}
@media screen and (min-width:921px) {
    html:root:is([data-ui-theme="dark"],[data-theme="dark"]) body.fv-office-design:has(:is(#creation-app,#office-app,#analysis-app,#ai-document-app)) { background:#121719 !important; }
    :is(html,body):is([data-ui-theme="dark"],[data-theme="dark"]) body.fv-office-design,
    body.fv-office-design:is([data-ui-theme="dark"],[data-theme="dark"]) { background:#121719; }
    html:is([data-ui-theme="dark"],[data-theme="dark"]) body.fv-office-design :is(.fv-office-ambient),
    body.fv-office-design:is([data-ui-theme="dark"],[data-theme="dark"]) .fv-office-ambient { opacity:.23; }
    html:is([data-ui-theme="dark"],[data-theme="dark"]) body.fv-office-design :is(.brief-panel,.draft-panel,.result-panel,.panel,.slides-composer,.office-result-card,.ai-document-intro,.ai-document-library),
    body.fv-office-design:is([data-ui-theme="dark"],[data-theme="dark"]) :is(.brief-panel,.draft-panel,.result-panel,.panel,.slides-composer,.office-result-card,.ai-document-intro,.ai-document-library) { background:#192124; color:#e3eced; border-color:#38484c; }
    html:is([data-ui-theme="dark"],[data-theme="dark"]) body.fv-office-design :is(.fv-field-frame,.field-frame,.select-frame,.fv-office-upload,.fv-field-frame > input,.fv-field-frame > select,.fv-field-frame > textarea),
    body.fv-office-design:is([data-ui-theme="dark"],[data-theme="dark"]) :is(.fv-field-frame,.field-frame,.select-frame,.fv-office-upload,.fv-field-frame > input,.fv-field-frame > select,.fv-field-frame > textarea) { background:#192124 !important; color:#e3eced !important; border-color:#53666b; }
    html:is([data-ui-theme="dark"],[data-theme="dark"]) body.fv-office-design :is(.fv-office-upload strong,.fv-office-upload .reference-upload-copy > span),
    body.fv-office-design:is([data-ui-theme="dark"],[data-theme="dark"]) :is(.fv-office-upload strong,.fv-office-upload .reference-upload-copy > span) { color:#c3d4d8; }
    html:is([data-ui-theme="dark"],[data-theme="dark"]) body.fv-office-design :is(#fuuvo-writing-page,#main.office-task-studio,#fuuvo-analysis-desktop) :is(.writing-mode button,.draft-tabs button,.template-filters button,.writing-formatting button,.writing-template-card,.writing-illustration,.workflow-card,.result-tabs button,.mode,.analysis-template-card,.source-switcher button) { background:#19282d !important; color:#dbe7ea !important; -webkit-text-fill-color:#dbe7ea !important; border-color:#40565d; }
    html:is([data-ui-theme="dark"],[data-theme="dark"]) body.fv-office-design :is(#fuuvo-writing-page,#main.office-task-studio,#fuuvo-analysis-desktop) :is(button[aria-pressed="true"],button[aria-selected="true"],.writing-illustration) { color:#a8e4db !important; -webkit-text-fill-color:#a8e4db !important; }
}
