/*
 * One top-level Songsa page theme. The Composition Timeline is a separate
 * document and deliberately does not load this file, so its established DAW
 * palette never changes with the portrait setting.
 */
:root{
  color-scheme:dark;
  --songsa-page:#141416;
  --songsa-surface:#201e24;
  --songsa-raised:#29262e;
  --songsa-input:#17151b;
  --songsa-text:#f2eef7;
  --songsa-muted:#aaa1b2;
  --songsa-border:#403946;
  --songsa-hover:#302b35;
  --songsa-scrim:#08070acc;
  --paper:var(--songsa-page);
  --ink:var(--songsa-text);
  --muted:var(--songsa-muted);
  --line:var(--songsa-border);
  --line-strong:#554c5e;
  --portrait-surface:var(--songsa-page);
  --portrait-app-background:var(--songsa-page);
  --portrait-message:var(--songsa-raised);
  --portrait-text:var(--songsa-text);
  --portrait-muted:var(--songsa-muted);
  --portrait-hint:#8f8797;
  --portrait-border:var(--songsa-border);
  --portrait-button:#f2eef7;
  --portrait-button-text:#171419;
  --portrait-glass:#201e24f2;
  --portrait-scrim:var(--songsa-scrim);
}

:root[data-songsa-theme="light"]{
  color-scheme:light;
  --songsa-page:#f7f7fa;
  --songsa-surface:#ffffff;
  --songsa-raised:#f0edf3;
  --songsa-input:#ffffff;
  --songsa-text:#1d1921;
  --songsa-muted:#716978;
  --songsa-border:#d8d2dd;
  --songsa-hover:#eee9f1;
  --songsa-scrim:#17121e42;
  --line-strong:#bfb6c6;
  --portrait-hint:#807787;
  --portrait-button:#1d1921;
  --portrait-button-text:#ffffff;
  --portrait-glass:#fffffff2;
}

html,
body,
body.songsa-web,
body.chat-open .app-main,
.page:not(.songsa-studio),
.produce-page,
.produce-page .chat-conversation,
.library-page{
  background:var(--songsa-page)!important;
  color:var(--songsa-text)!important;
}

.produce-page .chat-composer{
  background:var(--songsa-surface)!important;
  border-color:var(--songsa-border)!important;
  color:var(--songsa-text)!important;
}

.produce-page #selection-markers{
  background:transparent!important;
  border-color:var(--songsa-border)!important;
  color:var(--songsa-text)!important;
}

/* The prompt shell is layout only. Keep its outer backing absent while the
 * grey composer remains the one visible input object. */
.produce-page .chat-shell{
  background:transparent!important;
}

body.songsa-web .produce-page .chat-composer{
  background:var(--songsa-surface)!important;
  box-shadow:0 8px 28px #08050c24!important;
}

.produce-page :is(.chat-message,.chat-message-content,.chat-message-label),
.library-page :is(h1,h2,h3,.library-music-tile,.release-main,.collection-main),
.library-page :is(.library-music-tile,.release-info) strong{
  color:var(--songsa-text)!important;
}

.produce-page :is(.chat-message-meta,.ai-report-trigger,.chat-turn-status),
.library-page :is(.library-music-tile,.release-info,.collection-main) :is(small,span),
.library-page>p{
  color:var(--songsa-muted)!important;
}

.produce-page .chat-artifact,
.library-page :is(.library-tile-empty,.release-empty-tile),
.token-usage-summary article{
  background:var(--songsa-surface)!important;
  border-color:var(--songsa-border)!important;
  color:var(--songsa-text)!important;
}

.produce-page .chat-composer textarea{color:var(--songsa-text)!important}

.library-page :is(.release-completed,.collection-row){border-bottom-color:var(--songsa-border)!important;color:var(--songsa-text)!important}
.library-page :is(.release-more,.collection-more,.library-page-menu-trigger,.library-home-back),.library-feed-owner-share{color:var(--songsa-muted)!important}
.library-page :is(.release-more,.collection-more,.library-page-menu-trigger,.library-home-back):hover{background:var(--songsa-hover)!important}
.library-tile-section[data-library-emphasis="highlight"],.library-tile-section[data-library-background="highlighted"]{background:color-mix(in srgb,#6f3c99 9%,var(--songsa-page))!important}
.library-tile-section[data-library-background="artwork_tint"]{background:linear-gradient(135deg,#6f3c9920,var(--songsa-surface))!important}
.library-tile-section[data-library-background="themed"]{background:color-mix(in srgb,#6f3c99 13%,var(--songsa-page))!important}
.library-artist-placeholder{background:color-mix(in srgb,#6f3c99 18%,var(--songsa-surface))!important;color:#7b3dae!important}

:is(.library-page-menu,.library-sheet,.library-track-detail,.library-edit-dialog,.library-full-player,.library-mini-player,#settings-dialog,.prompt-mode-sheet,#song-guidance,.account-dialog,.token-usage-dialog,.music-report-dialog,.metadata-dialog,.community-dialog:not(.collection-editor):not(.library-selection-popover):not(.fyp-system-confirmation)){
  background-color:var(--songsa-surface)!important;
  border-color:var(--songsa-border)!important;
  color:var(--songsa-text)!important;
  color-scheme:inherit;
}

.library-full-player{background-image:linear-gradient(180deg,var(--songsa-raised),var(--songsa-page) 52%,var(--songsa-page))!important}
.library-mini-player{box-shadow:0 8px 26px #0007,inset 0 1px 0 #ffffff12!important}
.library-full-toggle{background:var(--songsa-text)!important;color:var(--songsa-page)!important}

/* The full-bleed artwork stays dark enough for its white overlay controls,
 * while the detail body follows the single app-level theme palette. */
.library-detail-sheet{
  background-color:var(--library-detail-bottom-color,var(--songsa-page))!important;
  color:var(--songsa-text)!important;
  color-scheme:inherit;
}
.library-detail-body{background:var(--library-detail-bottom-color,var(--songsa-page))!important}
.library-detail-controls .library-detail-icon{color:var(--songsa-text)!important}
.library-detail-play{background:var(--songsa-text)!important;color:var(--songsa-page)!important}
.library-detail-content .release-completed{border-bottom-color:var(--songsa-border)!important;color:var(--songsa-text)!important}
.library-detail-content .release-completed.is-active-track{background:var(--songsa-raised)!important}
.library-detail-content .release-info strong{color:var(--songsa-text)!important}
.library-detail-content :is(.release-info span,.release-more,.library-detail-status,.library-detail-empty,.library-collection-note){color:var(--songsa-muted)!important}
.library-detail-hero :is(.library-detail-back,.library-detail-more,.library-detail-favorite,.library-detail-title){color:#fff!important}
.library-detail-hero .library-detail-byline{color:#ded6e4!important}

:is(.library-page-menu,.library-sheet,.library-track-detail,.library-edit-dialog,#settings-dialog,.prompt-mode-sheet,#song-guidance,.account-dialog,.token-usage-dialog,.music-report-dialog,.metadata-dialog,.community-dialog) :is(h1,h2,h3,strong,label,p){color:inherit}
:is(.library-page-menu-list button,.library-sheet-action,.prompt-mode-options button,.song-guidance-option,.song-guidance-example){border-color:var(--songsa-border)!important;color:var(--songsa-text)!important}
:is(.library-page-menu-list button,.library-sheet-action,.prompt-mode-options button):hover{background:var(--songsa-hover)!important}
.library-action-popover{background-color:rgba(18,18,18,.62)!important;border-color:transparent!important;color:#f2eef7!important}
.library-action-icon,.library-action-icon:hover,.library-action-icon:focus-visible{background:transparent!important;color:#eeeaf2!important}
.library-action-icon[aria-pressed="true"]{background:transparent!important;color:#e5c8ff!important}
.library-action-icon.is-destructive{background:transparent!important;color:#ff6b7f!important}

:is(.library-edit-dialog,#settings-dialog,.prompt-mode-sheet,.account-dialog,.metadata-dialog) :is(input,textarea,select),.account-country-control{
  background:var(--songsa-input)!important;
  border-color:var(--songsa-border)!important;
  color:var(--songsa-text)!important;
  color-scheme:inherit;
}

.account-invitation,.credit-plan-tile{background:var(--songsa-surface)!important;border-color:var(--songsa-border)!important;color:var(--songsa-text)!important}

#settings-dialog .settings-theme-row{cursor:pointer}
.settings-theme-control{display:flex;align-items:center;gap:7px;flex:none;color:var(--songsa-muted);font:600 11px/1 system-ui}
.settings-theme-switch{position:relative;display:block;width:40px;height:24px;flex:none}
.settings-theme-switch input{position:absolute;z-index:2;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.settings-theme-track{position:absolute;inset:0;border:1px solid var(--songsa-border);border-radius:999px;background:var(--songsa-raised);transition:background-color .18s ease,border-color .18s ease}

/* App chrome behaves like native UI: holds and swipes belong to the controls,
 * not to WebKit's Copy/Look Up callout. Deliberately readable/editable content
 * opts back in below. */
body :where(*){-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}
body :where(input,textarea,[contenteditable="true"],[contenteditable="plaintext-only"],.chat-message-text,.library-artist-profile-bio,#selection-lyrics,.share-link,[data-songsa-copyable]){-webkit-touch-callout:default;-webkit-user-select:text;user-select:text}
body :where(select,option){-webkit-touch-callout:default;-webkit-user-select:auto;user-select:auto}
.settings-theme-track::after{content:'';position:absolute;left:3px;top:3px;width:16px;height:16px;border-radius:50%;background:var(--songsa-text);box-shadow:0 1px 4px #0005;transition:transform .18s ease}
.settings-theme-switch input:checked + .settings-theme-track{border-color:#6f3c99;background:#6f3c99}
.settings-theme-switch input:checked + .settings-theme-track::after{transform:translateX(16px);background:#fff}
.settings-theme-switch input:focus-visible + .settings-theme-track{outline:2px solid #a875d1;outline-offset:2px}
:root:not([data-songsa-theme="light"]) .settings-theme-dark,:root[data-songsa-theme="light"] .settings-theme-light{color:var(--songsa-text)}

@media(prefers-reduced-motion:reduce){.settings-theme-track,.settings-theme-track::after{transition:none}}
