/* Fotos Memórias V119 · Design global unificado. Preserva geometria das experiências imersivas. */
:root{--fm119-pink:#f52e73;--fm119-wine:#861441;--fm119-ink:#651a39;--fm119-border:#f0dce5;--fm119-shadow:0 7px 25px rgba(101,26,57,.09);--fm119-surface:linear-gradient(145deg,#fff,#fffafb)}
.fm119-saved{display:block;text-align:center;margin:10px auto;color:#3d815f;font:700 12px/1.5 Manrope,system-ui,sans-serif}
.fm117-shell{background:linear-gradient(155deg,#fff5f8,#fbe9f5 75%,#faf1fc)}
.fm117-shell .fm117-head{background:linear-gradient(110deg,#661945,#9b357a)!important;box-shadow:0 6px 18px #6b235735}
.fm117-shell .fm117-card{background:var(--fm119-surface);border:1px solid var(--fm119-border);box-shadow:var(--fm119-shadow);border-radius:27px}
.fm117-shell .fm117-card h1{font-family:'Fraunces',Georgia,serif;font-weight:700;letter-spacing:-.045em;color:var(--fm119-wine)}
.fm117-shell .fm117-kicker{color:#bb4574;font-weight:800;letter-spacing:.1em}
.fm117-shell .fm117-genres button{border-radius:24px;background:#fff;border:1px solid #e9d3e2;box-shadow:0 4px 10px #6c16450b}
.fm117-shell .fm117-genres button.chosen{background:linear-gradient(135deg,#b51561,#ef3475);border-color:transparent;box-shadow:0 7px 17px #bc246246}
.fm117-shell .fm117-ai{background:#fff9fc;border-color:#efd6e4;box-shadow:0 5px 12px #6d1b3b0c}
.fm117-shell .fm117-ai button,.fm117-shell #fm117-play,.fm117-shell #fm117-next{background:linear-gradient(120deg,#ef3776,#ae1050);color:white;box-shadow:0 7px 19px #b7215a32;border:0;border-radius:22px}
.fm117-shell #fm117-export{background:#fff5f9;color:#84234c;border:1px solid #dfacc2;box-shadow:none}
.fm117-shell #fm117-audio{display:block;width:100%;max-width:360px;height:48px;accent-color:#ba1959;border-radius:24px;margin:9px auto;background:#fce7f1}
.fm117-shell .fm117-upload,.fm117-shell .fm117-lyric-read{background:#fff9fc;border-radius:22px}
/* Home: novo recurso como cartão do aplicativo, com imagem real do player, não emoji isolado */
.fm-home68 .fm117-home-music{display:grid!important;grid-template-columns:minmax(120px,36%) minmax(0,1fr)!important;gap:9px 15px!important;align-items:center!important;padding:10px!important;border-radius:30px!important;background:linear-gradient(130deg,#fff,#fff2f7)!important;border:1px solid #f1d9e3!important;box-shadow:var(--fm119-shadow)!important}
.fm-home68 .fm119-home-music-art{grid-row:1 / span 2;width:100%;min-width:0;align-self:stretch;overflow:hidden;border-radius:23px;background:#f5e1f1;display:flex}
.fm-home68 .fm119-home-music-art img{width:100%;height:100%;object-fit:cover;display:block}
.fm-home68 .fm117-home-music>div:nth-child(2){min-width:0;align-self:end}
.fm-home68 .fm117-home-music span{color:#a73e67;font-weight:800}
.fm-home68 .fm117-home-music h3{font-family:'Fraunces',Georgia,serif!important;color:#72183c;font-size:clamp(1.5rem,5vw,2.2rem)!important;letter-spacing:-.04em}
.fm-home68 .fm117-home-music p{font:500 .88rem/1.55 Manrope,system-ui,sans-serif!important;color:#82576b}
.fm-home68 .fm117-home-music>button{grid-column:2;align-self:start;max-width:none!important;width:100%;background:linear-gradient(125deg,#f83f7b,#a60d50)!important;color:white!important;border-radius:22px!important;box-shadow:0 9px 18px #bd235338;font:800 .89rem Manrope,system-ui,sans-serif!important}
/* Shared visual language: forms, actions and primary cards of conventional app pages only. */
body:not(.love-public-mode):not(.tele-public-mode):not(.fm117-open) #main-content :is(.tele-chat-bubble,.tele-manager-card,.love-manager-card,.fm94-section,.fm94-project,.card,.fm-home68-choice,.fm-home68-steps-grid>div){border-radius:24px;box-shadow:var(--fm119-shadow)}
body:not(.love-public-mode):not(.tele-public-mode) #main-content :is(.tele-builder-shell,.tele-manager-shell,#fm94-board) :is(h1,h2,h3){letter-spacing:-.035em}
body:not(.love-public-mode):not(.tele-public-mode) #main-content :is(.tele-builder-shell,.tele-manager-shell) :is(.btn-primario,.btn-acento,.tele-play-main){border-radius:20px;background:linear-gradient(125deg,#fc4680,#b70e52);border:0;color:white;box-shadow:0 8px 17px #b1215436}
body:not(.love-public-mode):not(.tele-public-mode) #main-content :is(.tele-chat-chip,.tele-voice-card){border-radius:22px;box-shadow:0 3px 11px #712b4d10}
/* Chat is a full screen app experience: maintain layout, improve cards/fonts/shadow. */
.fm115-chat{--navy:#702b65!important;--accent:#bd185a!important;--pink:#fff0f7!important;--green:#fff3e0!important;color:#54223d!important}
.fm115-chat .fm115-header{background:linear-gradient(105deg,#55205c,#82357c)!important;box-shadow:0 5px 18px #62244b24}
.fm115-chat .fm115-header #fm115-new{background:linear-gradient(130deg,#e9a92f,#db8d13)!important;color:#402b1b!important;border:1.5px solid #ffe4a4!important}
.fm115-chat .fm115-history{background:linear-gradient(120deg,#fff3f5dc,#fae7efb8),repeating-linear-gradient(115deg,#f8dbe40d 0,#f8dbe40d 100px,#ffffff80 100px,#ffffff80 116px)!important}
.fm115-chat .fm115-row.theirs .fm115-msg{border-radius:8px 28px 28px 26px;box-shadow:0 6px 18px #632c4616;background:#fff!important;border:1px solid #f1e6e9!important;color:#482a3d}
.fm115-chat .fm115-row.mine .fm115-msg{border-radius:28px 8px 26px 28px;background:#fff6e1!important;border-color:#f4e5bd!important;color:#6e4c6c!important;box-shadow:0 5px 16px #77564a15}
.fm115-chat .fm115-msg strong,.fm115-chat .fm115-welcome-head strong{color:#632447!important}
.fm115-chat .fm115-occasions>button,.fm115-chat .fm115-quick button,.fm115-chat .fm115-options button{border:1px solid #eedde4!important;background:#fff!important;color:#6f234b!important;border-radius:25px!important;box-shadow:0 4px 12px #6c265315}
.fm115-chat .fm115-audio-bar>#fm115-play,.fm115-chat .fm115-dock>button{background:linear-gradient(125deg,#f13c7c,#af1050)!important;border-radius:22px;color:#fff!important}
.fm115-chat .fm115-wave i{background:#da87b0!important}
.fm115-chat .fm115-footer{background:#fffbfc!important;border-color:#f2dce4!important}
.fm115-chat :is(input,textarea):focus-visible,.fm117-shell :is(input,textarea):focus-visible{outline:2px solid #e95697;outline-offset:2px}
/* Compact creation library. Cards no longer occupy half a phone screen each. */
#fm94-board{gap:13px!important;padding:4px 0 16px!important}
#fm94-board .fm94-section{padding:14px!important;border-radius:26px!important}
#fm94-board .fm94-section-heading{margin-bottom:12px!important}
#fm94-board .fm94-collection{gap:9px!important}
#fm94-board .fm94-project{padding:11px 12px!important;gap:8px!important;border-radius:22px!important;box-shadow:0 5px 15px #79344d13!important}
#fm94-board .fm94-project-overview{grid-template-columns:67px minmax(0,1fr)!important;gap:11px!important}
#fm94-board :is(.fm94-cover,.fm94-tele-cover){height:66px!important;width:66px!important;max-width:66px!important;flex-basis:66px!important;border-radius:17px!important;font-size:2rem!important}
#fm94-board .fm94-tele-project .fm94-project-overview{grid-template-columns:67px minmax(0,1fr)!important}
#fm94-board .fm94-project-info{gap:4px!important}
#fm94-board .fm94-project h3{font-size:1rem!important;line-height:1.18!important}
#fm94-board .fm94-meta{font-size:.7rem!important;line-height:1.32!important;max-height:2.8em;overflow:hidden}
#fm94-board :is(.fm94-action-zone,.fm94-tele-project .fm94-action-zone,.fm94-history-message,.fm94-tele-project .fm94-history-message){margin-left:0!important}
#fm94-board .fm94-action-zone{gap:5px!important}
#fm94-board :is(.fm94-actions-primary,.fm94-actions-secondary){display:flex!important;gap:6px!important;flex-wrap:wrap!important}
#fm94-board .fm94-action{flex:1 1 auto!important;min-height:33px!important;max-width:100%!important;padding:7px 10px!important;font-size:.7rem!important;border-width:1px!important;white-space:normal!important;line-height:1.24!important}
#fm94-board .fm94-online{min-height:32px!important;padding:6px 9px!important;font-size:.7rem!important}
#fm94-board .fm94-section-heading .fm94-section-icon{width:43px!important;height:43px!important;flex-basis:43px!important;border-radius:15px!important}
#fm94-board .fm94-create{min-height:40px!important;padding:7px 13px!important}
@media(min-width:700px){#fm94-board .fm94-project-overview{grid-template-columns:75px minmax(0,1fr)!important}#fm94-board :is(.fm94-cover,.fm94-tele-cover){width:75px!important;height:75px!important;max-width:75px!important}}
@media(max-width:430px){.fm-home68 .fm117-home-music{grid-template-columns:36% minmax(0,1fr)!important;gap:8px!important;padding:9px!important}.fm-home68 .fm117-home-music h3{font-size:1.45rem!important}.fm-home68 .fm117-home-music p{font-size:.78rem!important}.fm-home68 .fm117-home-music>button{font-size:.76rem!important;padding:10px 5px!important;line-height:1.35}.fm-home68 .fm119-home-music-art{border-radius:18px}}
@media(prefers-reduced-motion:reduce){.fm115-chat *,.fm117-shell *{animation-duration:0s!important;transition-duration:0s!important}}
/* Site do Amor: editor de fotos/vídeo recebe os mesmos cartões e controles,
   sem interferir na aparência das páginas públicas ou nas animações das cartas. */
.site-amor-builder .builder-panel{border-radius:27px!important;background:var(--fm119-surface)!important;border:1px solid var(--fm119-border)!important;box-shadow:var(--fm119-shadow)!important;padding:clamp(15px,3.8vw,23px)!important}
.site-amor-builder .builder-panel h3{font:800 1.14rem/1.32 Manrope,system-ui,sans-serif!important;color:var(--fm119-wine)!important;letter-spacing:-.025em}
.site-amor-builder .builder-step{background:linear-gradient(120deg,#ffe5f0,#f9d8e7)!important;color:#97224c!important;border:1px solid #f0c4d6!important;box-shadow:0 3px 8px #8a325118}
.site-amor-builder .builder-subpanel,.site-amor-builder .music-info-card{border-radius:21px!important;background:#fff9fc!important;border:1px solid #f1dfe7!important;box-shadow:0 4px 14px #7835580c}
.site-amor-builder .photo-preview-item{border-radius:18px!important;box-shadow:0 6px 15px #71274917!important}
.site-amor-builder :is(.theme-chip,.music-source-tab){border-radius:100px!important;background:#fff!important;color:#78204b!important;border:1px solid #eacbda!important;box-shadow:0 4px 13px #772a490e}
.site-amor-builder :is(.theme-chip.ativo,.music-source-tab.ativo){background:linear-gradient(120deg,#f13c79,#a7104f)!important;color:#fff!important;border:1px solid transparent!important;box-shadow:0 8px 18px #ad225737!important}
.site-amor-builder .builder-field :is(input,textarea,select){border-radius:16px!important;border-color:#ead3de!important;background:#fff!important;box-shadow:inset 0 1px 4px #7c35500a}
.site-amor-builder :is(.builder-toolbar-actions .btn-primario,.builder-panel .btn-primario){background:linear-gradient(130deg,#f43f7c,#ae114f)!important;color:#fff!important;border-radius:20px!important;box-shadow:0 8px 18px #9e244a30!important}
@media(max-width:430px){.site-amor-builder{gap:12px!important}.site-amor-builder .builder-grid{gap:11px!important}}
