body.cloud-locked .app{display:none!important}#revisionPreviewBar,#switcher{display:none!important}body{padding-top:0!important}body.cloud-locked #loginScreen{display:block!important}.cloud-sync{font-size:11px;max-width:280px;color:#427462;text-align:right;line-height:1.5}.cloud-sync .text-button{font-size:11px;margin-left:10px;padding:2px}.cloud-error{color:#a02e3d}.cloud-client-choice{display:grid;gap:8px;color:#d4d0df;padding:12px 10px;margin:0 0 18px;font-size:12px}.cloud-client-choice select{width:100%;padding:10px;background:#242329;border:1px solid #494650;border-radius:10px;color:white}.logged-out #loginScreen{z-index:9999}.cloud-pending{background:#fff4dc;padding:12px;border-radius:10px}@media(max-width:650px){.cloud-sync{max-width:150px;font-size:10px}}

/* The live portals have no demo toolbar. Keep the header in document flow
   and remove the sidebar's inherited space for that toolbar. Specificity
   keeps these rules effective before the prototype's inline styles. */
.app > .main > .top{
  position:relative;
  top:auto;
  z-index:auto;
  height:auto;
  min-height:72px;
  padding-top:12px;
  padding-bottom:12px;
  flex-shrink:0;
  flex-wrap:wrap;
  gap:12px;
}
.app > .side{
  top:12px;
  height:calc(100vh - 24px);
  height:calc(100dvh - 24px);
}
.app > .main > .top h1{min-width:0;overflow-wrap:anywhere}
.app > .main > .top .actions{
  align-items:center;
  flex-wrap:wrap;
  min-width:0;
  max-width:100%;
  margin-left:auto;
  row-gap:8px;
}
.top .cloud-sync{min-width:0;overflow-wrap:anywhere}
.cloud-preview-button{display:inline-flex;align-items:center;gap:8px;background:#ededff;color:#41417e;border-color:#d8d8ff}
.cloud-client-preview-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:12px 28px 8px;padding:16px 20px;border:1px solid #d8d8ff;border-radius:16px;background:#ededff;color:#343465}
.cloud-client-preview-banner p{margin:4px 0 0;font-size:12px}
.cloud-client-preview-banner .btn{flex-shrink:0}
body.client-preview .cloud-sync{display:none}
body.client-preview [data-preview-blocked],body.client-preview textarea:disabled,body.client-preview input:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:650px){.cloud-client-preview-banner{margin:10px 16px;align-items:flex-start;flex-direction:column}}
/* Upcoming productions leads the client's right sidebar. */
.dashboard-rail > .client-rail-productions:first-child{
  margin-top:0;
  padding-top:0;
  border-top:0;
  margin-bottom:28px;
  padding-bottom:28px;
  border-bottom:1px solid #e2dfe6;
}
@media(max-width:650px){
  .app > .main > .top .actions{flex-basis:100%;justify-content:flex-end}
  .top .cloud-sync{flex:1;max-width:none;text-align:left}
}
.calendar-import-dialog{width:min(1000px,95vw);max-width:1000px}.calendar-import-dialog>label{display:block;margin:18px 0}.calendar-import-dialog textarea{width:100%;box-sizing:border-box}.calendar-import-table{overflow:auto;margin:20px 0}.calendar-import-table table{width:100%;border-collapse:collapse}.calendar-import-table th,.calendar-import-table td{text-align:left;padding:14px;border-bottom:1px solid #e2dfe6;vertical-align:top}.calendar-import-table td{min-width:130px}.calendar-import-table details{max-width:360px;white-space:pre-wrap;overflow-wrap:anywhere}#calendarImportError{white-space:pre-line;color:#972d39}#calendarImportSave{margin-top:16px}.calendar-import-dialog .toolbar{flex-wrap:wrap}
/* Neutral item surfaces only; preserve client buttons, counters and status colors. */
#view.clients-neutral .client-detail-grid .compact-content,
#view.clients-neutral .client-detail-grid button.compact-content[onclick],
#view.clients-neutral .compact-content[onclick^="openProduction("]{
 background:transparent!important;color:#252525!important;border-color:#e7e5e1!important;
 padding:16px 10px;gap:14px;
}
#view.clients-neutral .client-detail-grid .compact-content:hover,
#view.clients-neutral .compact-content[onclick^="openProduction("]:hover{background:#f6f5f3!important}
#view.clients-neutral .client-detail-grid .compact-content .meta{color:#77736d!important}
body:has(#view.clients-neutral) #modal .dialog,
body:has(#view.clients-neutral) #modal .dialog .card,
body:has(#view.clients-neutral) #modal .dialog .production-summary,
body:has(#view.clients-neutral) #modal .dialog .media-empty,
body:has(#view.clients-neutral) #modal .dialog .drive-frame{
 background:#fff!important;color:#252525!important;border-color:#e5e3df!important;
}

/* Approved live mobile navigation, dashboard follow-up and brief import. */
#workspaceMenuToggle,.workspace-menu-close{display:none}#workspaceMenuShade[hidden]{display:none!important}#workspaceMenuShade{position:fixed;inset:0;background:#0006;border:0;z-index:1000}.workspace-admin-flow{margin-top:32px;padding-top:30px;border-top:1px solid #dedbd5}.workspace-admin-flow>.row{align-items:flex-start}.workspace-admin-flow h2{font-size:26px;margin:0 0 10px}.workspace-followup-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.workspace-followup-grid .client-flow-section{min-width:0;margin:0;padding:0 0 28px}.workspace-followup-grid .client-flow-heading{align-items:flex-start;gap:18px}.workspace-followup-grid .client-flow-heading h3{font-size:21px}.workspace-followup-grid .client-flow-heading p{max-width:360px}.workspace-followup-grid .client-flow-heading .btn{white-space:nowrap}.workspace-studio-tasks{grid-column:1/-1}.workspace-followup-grid .compact-content{background:transparent!important;color:inherit!important;padding:16px 0}.workspace-followup-grid .compact-content:hover{background:#f0eee9!important}.brief-import-dialog{width:min(860px,94vw);max-width:860px}.brief-import-dialog textarea{min-height:95px}.brief-import-dialog input,.brief-import-dialog textarea,.brief-import-dialog select{width:100%;box-sizing:border-box}.brief-import-dialog small{font-size:12px;color:#736e67}.brief-import-dialog .toolbar{flex-wrap:wrap}.brief-import-steps{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.brief-import-steps span{border-radius:20px;padding:9px 13px;border:1px solid #dfdce5;color:#777;font-size:13px}.brief-import-steps .current{background:#e4e4ff;color:#373777;border-color:#bfbff4}.brief-original{padding:16px;border:1px solid #e5e2dc;border-radius:14px;margin:20px 0}.brief-original pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:13px}.brief-import-dialog #briefError{color:#972d39}.workspace-menu-open{overflow:hidden}
@media(max-width:1000px){.workspace-followup-grid{grid-template-columns:1fr}.workspace-studio-tasks{grid-column:auto}}
@media(max-width:900px){body{padding-bottom:0!important}.app{display:block!important}.app>.main{width:100%;margin:0;min-width:0}.app>.side{display:flex!important;flex-direction:column!important;position:fixed!important;left:0!important;top:0!important;width:min(310px,86vw)!important;height:100dvh!important;max-height:100dvh!important;margin:0!important;border-radius:0 22px 22px 0!important;z-index:1001!important;transform:translateX(-105%);transition:transform .2s ease;overflow-y:auto!important;padding-bottom:30px!important}.workspace-menu-open .app>.side{transform:translateX(0)}.workspace-menu-close{display:flex;margin:0 0 14px;color:white;background:#222;border-color:#555;justify-content:center}.app>.side .user{margin-top:auto!important;padding-top:24px!important}.logout-button{display:flex!important;justify-content:center;width:100%;margin-top:14px!important;min-height:44px}#workspaceMenuToggle{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:10px;margin-right:10px;background:white;color:#222;border:1px solid #dedbd5}.mobilebar{display:none!important}.top{padding:14px 16px!important;align-items:center!important;min-height:72px!important}.top h1{font-size:23px!important;flex:1}.top .actions{width:100%;margin-left:0!important;justify-content:flex-start!important}.top .actions .btn{font-size:12px;padding:9px 12px}.content,#view{min-width:0}#view{padding:20px 16px!important}.workspace-admin-flow>.row{flex-wrap:wrap}.workspace-followup-grid .client-flow-heading{flex-wrap:wrap}.workspace-followup-grid .compact-content{flex-wrap:wrap}.brief-import-dialog .form{grid-template-columns:1fr}.brief-import-dialog .form>*{grid-column:1!important}.brief-import-dialog{padding:22px!important}.brief-import-dialog h2{font-size:24px}.workspace-followup-grid .client-flow-heading h3{font-size:20px}}
@media(prefers-reduced-motion:reduce){.app>.side{transition:none}}
/* Drawer controls belong only to the mobile shell. */
.app>.side>.workspace-menu-close,#workspaceMenuToggle{display:none!important}
@media(max-width:900px){
 .app>.side>.workspace-menu-close{display:inline-flex!important;align-self:flex-end;align-items:center;justify-content:center;width:44px;min-width:44px;height:44px;min-height:44px;padding:10px;margin:0 0 4px auto;background:transparent!important;border:0!important;border-radius:0;color:#fff!important;box-shadow:none!important;flex-shrink:0}
 .app>.main>.top{position:relative!important}
 .app>.main>.top h1{padding-right:54px}
 #workspaceMenuToggle{display:inline-flex!important;position:absolute;top:14px;right:16px;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;min-height:44px;padding:10px;margin:0;background:transparent;border:0;box-shadow:none;color:#252525}
}
/* Keep the dashboard follow-up heading icons separate from their labels. */
.workspace-admin-flow .client-flow-heading h3>.outline-icon{margin-right:10px}
.calendar .event>.client-calendar-type-icon{width:16px;height:16px;margin:0 8px 2px 0;vertical-align:middle;flex-shrink:0}
/* Inbox badges distinguish unread alerts from the opened/read state. */
.top .actions .notification-read #notifCount{background:#ffe0c4!important;color:#6d4930!important}
.top .actions .notification-unread #notifCount{background:#8686ff!important;color:#202049!important}
.grouped-notice .notice-status-dot{width:8px;height:8px;border-radius:50%;background:#8686ff;flex-shrink:0}
.grouped-notice.is-read .notice-status-dot{background:#d4c7ba}
.grouped-notice.is-read .notice-read-label{background:#fff0e2!important;color:#76573f!important}
.grouped-notice.is-unread .notice-read-label{background:#e5e5ff!important;color:#39397d!important}
.client-mobile-calendar-options,.client-mobile-month{display:none}
@media(max-width:900px){
 .client-portal-session .modern-search{min-height:54px!important;padding:8px 14px!important;box-sizing:border-box;flex:1 1 100%;width:100%}
 .client-portal-session .modern-search input{min-height:38px!important;height:auto!important;padding:8px 4px!important;font-size:16px!important;line-height:1.4!important;box-sizing:border-box;min-width:0}
 .client-portal-session .unified-filter-bar{flex-wrap:wrap;align-items:stretch!important;gap:12px}
 .client-mobile-calendar-options{display:flex;gap:10px;margin:16px 0;flex-wrap:wrap}
 .client-mobile-calendar-options .btn{min-height:44px;flex:1;justify-content:center;gap:8px}
 .client-full-month .client-standard-calendar,.client-full-month .client-standard-week{display:none!important}
 .client-full-month .content-cards{display:none!important}
 .client-full-month .client-mobile-month{display:block;margin:12px 0 24px;padding:18px 4px}
 .client-mobile-month-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px;gap:12px}
 .client-mobile-month-heading h3{font-size:21px;background:#e5e5ff;border-radius:999px;padding:10px 20px;margin:0;color:#34346c;text-align:center}
 .client-mobile-month-heading .round-control{min-width:44px;min-height:44px;font-size:36px}
 .client-mobile-month-week,.client-mobile-month-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));text-align:center;gap:8px 2px}
 .client-mobile-month-week{font-size:11px;letter-spacing:.06em;color:#9b929f;margin-bottom:14px}
 .client-mobile-month-days>button{border:0;background:transparent;color:#7b7482;font:inherit;min-height:46px;width:100%;max-width:46px;justify-self:center;border-radius:50%;position:relative;cursor:pointer;padding:8px 0;font-size:18px}
 .client-mobile-month-days>button.selected{background:#ddddff;color:#373777}
 .client-mobile-month-days>button.is-today:not(.selected){box-shadow:inset 0 0 0 1px #a5a5e8}
 .client-mobile-month-days i{position:absolute;bottom:3px;left:calc(50% - 2px);width:4px;height:4px;border-radius:50%;background:#8686ff}
 .client-mobile-day-items{margin-top:26px;padding-top:20px;border-top:1px solid #e6e1e6}
 .client-mobile-day-items h3{font-size:18px;margin:0}
 .client-mobile-day-items .compact-content{gap:10px;align-items:center}
 .client-mobile-day-items .compact-content b{overflow-wrap:anywhere}
}
.top .actions button.notification-read{background:#fff2e6!important;border-color:#e9d9c8!important;color:#72533b!important}
