@import url('https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:wght@700;800&display=swap');

/* JamFam / Studio workspace. Shared client, admin, sign-in and account interface. */
:root{
  --purple:#332e3e;--ink:#292e2c;--paper:#f6f5f0;--line:#dcdfd8;
  --orange:#21685d;--primary:#21685d;--magenta:#a8bcb1;
  --success:#226247;--danger:#ac362d;--muted:#606b65;--text-secondary:#606b65;
  --surface-tint:#edf2ec;--border:#dcdfd8;--surface:#fff;
  --ui-font:'Epilogue',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
body{background:var(--paper);color:var(--ink);font-family:var(--ui-font);line-height:1.55;-webkit-font-smoothing:antialiased;}
button,input,select,textarea{font-family:inherit;}
h1,h2,h3,.brand,.btn{font-family:var(--ui-font);letter-spacing:-.035em;}
h1,h2,h3{font-weight:700;text-transform:none;}
:where(button,a,input,select,textarea,summary):focus-visible{outline:3px solid #247e70;outline-offset:4px;}
.helper,.field-help,.muted,.login-card .tagline{color:var(--text-secondary);}
.hub-icon{flex-shrink:0;vertical-align:middle;}
main.dashboard,.admin-shell{width:min(1180px,calc(100% - 64px));padding-top:36px;padding-bottom:48px;}
.card,.product-card,.request-row,.account-panel,.help-panel{border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:0 2px 3px #23352803;}
.card{padding:28px;transition:none;}
.card:hover{border-color:var(--line);box-shadow:0 2px 3px #23352803;}
.card h2{text-transform:none;font:700 21px/1.35 var(--ui-font);letter-spacing:-.04em;color:var(--purple);}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:11px 18px;border:1px solid var(--primary);border-radius:10px;background:var(--primary);color:white;font:650 13px/1.4 var(--ui-font);text-transform:none;letter-spacing:-.01em;box-shadow:none;transition:background .15s,border-color .15s;}
.btn:hover{background:#185348;border-color:#185348;box-shadow:none;transform:none;filter:none;}
.btn.secondary{color:var(--purple);border-color:var(--line);background:#fff;box-shadow:none;}
.btn.secondary:hover{background:#f2f4ef;border-color:#bfc9bf;}
.btn:disabled{cursor:wait;opacity:.65;}
input:not([type=checkbox]):not([type=radio]):not([type=color]),select,textarea{border:1px solid #bec7bd;border-radius:10px;background:#fff;color:var(--ink);min-height:44px;box-shadow:none;}
input::placeholder,textarea::placeholder{color:#6b766e;opacity:1;}
.field label{color:#414a44;font-size:13px;font-weight:650;}
.field input:focus,.field textarea:focus,.field select:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #21685d14;}
.topbar{display:flex;gap:16px;min-height:76px;padding:14px clamp(20px,3vw,44px);background:#fff;color:var(--ink);border-bottom:1px solid var(--line);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;}
.topbar .brand{display:inline-flex;align-items:center;gap:10px;color:var(--purple);font:800 18px/1 var(--ui-font);letter-spacing:-.06em;white-space:nowrap;}
.jamfam-mark{width:29px;height:29px;flex-shrink:0;color:var(--primary);}
.topbar .site-name{padding:4px 0 4px 16px;margin-right:auto;border:0;border-left:1px solid var(--line);border-radius:0;background:transparent;color:#626b65;font-size:12px;opacity:1;min-width:0;}
.topbar button{min-height:42px;padding:9px 13px;border:1px solid var(--line);border-radius:9px;background:#fff;color:#465149;font-size:12px;font-weight:600;box-shadow:none;backdrop-filter:none;white-space:nowrap;}
.topbar button:hover{background:#f1f4ed;border-color:#bfc9bf;transform:none;}
.topbar #logout-btn{border-color:transparent;color:#69736c;}
.topbar-help{margin-left:0;gap:10px;}
.extra-help-switch{font-family:var(--ui-font);color:#606b65;}
#app .help-switch-track{background:#e0e5df;border-color:#bcc8bc;}
#app .extra-help-switch input:checked+.help-switch-track{background:var(--primary);border-color:var(--primary);}
#app .extra-help-switch input:focus-visible+.help-switch-track{outline-color:var(--primary);}
#org-switcher select{max-width:240px;background:#f6f7f2!important;color:var(--ink)!important;border:1px solid var(--line)!important;border-radius:8px!important;font-family:var(--ui-font);min-height:40px;}
#org-switcher option{color:var(--ink);background:#fff;}
.boot-splash{background:#f6f5f0;color:var(--purple);}
.boot-mark{font:800 30px/1 var(--ui-font);letter-spacing:-.06em;color:var(--purple);}
.boot-copy{color:var(--text-secondary);}
.boot-line{background:#dce3d9;}
.boot-line::after{background:var(--primary);}
.login-wrap{background:radial-gradient(ellipse at 15% 10%,#dfe8dc 0,transparent 50%),var(--paper);padding:24px;}
.login-card{width:min(100%,420px);margin:0;padding:38px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 18px 70px #2335280c;}
.login-card .brand{color:var(--purple);font:800 28px/1.2 var(--ui-font);letter-spacing:-.06em;}
.login-card .tagline{margin-top:8px;}
/* The client name is the title. The small monogram is identity, not an editing action. */
#app .home-welcome{display:flex;align-items:center;gap:20px;min-height:0;margin:0 0 24px;padding:6px 0 24px;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none;overflow:visible;color:var(--purple);}
#app .home-welcome::after{content:none;}
#app .home-welcome .home-welcome-icon{display:grid;place-items:center;flex:0 0 62px;width:62px;height:62px;border:1px solid #ced8ca;border-radius:18px;background:#e8eee3;color:#385342;font:650 20px/1 var(--ui-font);letter-spacing:-.04em;box-shadow:inset 0 0 0 4px #f6f8f2;}
#app .home-welcome .workspace-title-copy{min-width:0;flex:1;}
#app .home-welcome .eyebrow{display:block;margin:0 0 7px;color:#607064;font-size:10px;font-weight:700;line-height:1.4;letter-spacing:.12em;text-transform:uppercase;}
#app .home-welcome h1{margin:0;color:var(--purple);font:650 clamp(27px,3.3vw,37px)/1.2 var(--ui-font);letter-spacing:-.055em;overflow-wrap:anywhere;}
#app .home-welcome p{display:block;margin:9px 0 0;max-width:650px;color:#606b65;font-size:13px;line-height:1.6;}
.workspace-header-note{display:flex;align-items:center;gap:8px;align-self:flex-start;margin-top:16px;color:#687467;font-size:10px;font-weight:650;letter-spacing:.04em;white-space:nowrap;}
.workspace-header-note svg{width:16px;height:16px;color:var(--primary);}
#app .hub-shortcuts,.admin-section-nav{gap:4px;padding:6px;margin:0 0 30px;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:0 2px 4px #23352803;backdrop-filter:none;}
#app .hub-shortcuts button,.admin-section-nav button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:11px 15px;border:0;border-radius:8px;background:transparent;color:#5c665f;font:600 12px/1.4 var(--ui-font);box-shadow:none;}
#app .hub-shortcuts button:hover,.admin-section-nav button:hover{background:#f0f3ec;color:#345245;}
#app .hub-shortcuts button.active,.admin-section-nav button.active{background:#e5eee2;color:#2a503d;box-shadow:none;}
.hub-shortcuts svg,.admin-section-nav svg{width:19px;height:19px;flex-shrink:0;}
.home-overview{padding:0;}
.home-section-heading{margin:0 0 18px;}
.home-section-heading h2,.home-section-heading h3{font-family:var(--ui-font);color:var(--purple);font-weight:650;letter-spacing:-.04em;}
.home-section-heading h2{font-size:23px;}
.home-section-heading p{color:var(--text-secondary);font-size:13px;}
#app .home-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
#app .home-action{min-height:184px;padding:24px;gap:18px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 2px 4px #23352803;transition:border-color .15s,background .15s;}
#app .home-action::after{content:none;}
#app .home-action:hover{border-color:#a9b9a4;background:#fdfefa;transform:none;box-shadow:0 2px 4px #23352803;}
#app .home-action:focus-visible,#app .home-tool:focus-visible{outline-color:#247e70;}
#app .home-action .home-action-icon{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border:1px solid #dbe5d5;border-radius:13px;background:#edf3e8;color:#3d604b;}
#app .home-action[data-open-workspace=forms] .home-action-icon{background:#e6f2ed;border-color:#d0e5d9;color:#21685d;}
#app .home-action[data-open-workspace=search] .home-action-icon{background:#f1edf5;border-color:#e3dbea;color:#6a527c;}
#app .home-action[data-open-workspace=requests] .home-action-icon{background:#f8f0e3;border-color:#eddfc5;color:#8a612f;}
#app .home-action .home-action-copy{letter-spacing:0;text-transform:none;}
#app .home-action .home-action-copy strong{color:var(--purple);font-size:18px;font-weight:650;line-height:1.35;letter-spacing:-.025em;}
#app .home-action .home-action-copy small{color:#606b65;font-size:13px;line-height:1.7;}
#app .home-action .home-action-cta{padding-top:15px;color:#21685d;font-weight:650;}
.home-action-cta svg,.home-tool-arrow svg,.home-help-row svg{width:18px;height:18px;}
#app .home-action.primary{grid-column:1/-1;min-height:182px;flex-direction:row;align-items:center;gap:24px;padding:30px;background:#332e3e;border-color:#332e3e;box-shadow:none;}
#app .home-action.primary:hover{background:#40394e;border-color:#40394e;}
#app .home-action.primary .home-action-icon{flex-basis:60px;width:60px;height:60px;border:1px solid #635b70;border-radius:17px;background:#484151;color:#e4eddd;}
#app .home-action.primary .home-action-copy strong{color:#fff;font-size:27px;letter-spacing:-.045em;}
#app .home-action.primary .home-action-copy small{color:#e0dce5;font-size:14px;}
#app .home-action.primary .home-action-cta{display:inline-flex;align-self:flex-start;gap:14px;margin-top:5px;padding:8px 0;color:#e4eddd;font-size:12px;}
#app .home-action.primary .home-action-cta>span{margin-left:0;}
.home-publish-note{margin:14px 0 0;color:#657066;font-size:12px;}
.home-publish-note>span{display:grid;place-items:center;width:20px;height:20px;background:#e6eee2;border-radius:50%;color:#396047;}
.home-publish-note svg{width:14px;height:14px;}
.home-utilities{margin:30px 0 24px;padding-top:24px;border-top:1px solid var(--line);}
#app .home-tool{min-height:80px;padding:16px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--purple);box-shadow:none;}
#app .home-tool:hover{background:#f0f4eb;border-color:#bac9b3;}
.home-tool-icon{display:grid;place-items:center;flex-basis:36px;width:36px;height:36px;border-radius:10px;background:#f0f3eb;color:#4a6552;}
.home-tool strong{font-size:13px;font-weight:650;}
.home-tool small{color:#606b65;font-size:11px;}
.home-tool-arrow{color:#6c7b6e;}
#app .home-help-row{padding:20px 22px;border:1px solid #d7e3d0;border-radius:14px;background:#edf3e8;}
#app .home-help-row strong{color:#354f3f;font-size:14px;}
#app .home-help-row span{color:#566852;font-size:12px;}
#app .home-help-row .btn>span{color:inherit;}
.workspace-intro,.admin-view-intro{border-color:var(--line);border-radius:12px;background:#fff;color:var(--text-secondary);box-shadow:none;}
.shell-header{gap:18px;}
.client-header-actions{display:flex;align-items:center;gap:14px;margin-left:auto;}
.client-header-actions>.badge{justify-self:start;align-self:center;}
.billing-summary-grid>div{border-color:var(--line);background:#f6f8f2;}
.shell-header h1{color:var(--purple);font:650 clamp(28px,3.3vw,38px)/1.2 var(--ui-font);letter-spacing:-.055em;}
.shell-header .eyebrow{display:block;margin-bottom:8px;color:#607064;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;}
.admin-stat-grid>div{border-color:var(--line);background:#f6f8f2;border-radius:13px;}
.admin-stat-grid span{color:var(--text-secondary);}
.data-table{overflow:hidden;border:1px solid var(--line);border-radius:13px;background:white;box-shadow:none;}
table.data-table th{background:#f1f4ec;color:#57624f;font-size:11px;text-transform:none;letter-spacing:.01em;border-bottom:1px solid var(--line);}
.data-table td{border-color:#e7eae2;font-size:13px;}
.data-table tbody tr:hover{background:#f7f9f3;}
.badge{border-radius:7px;font-family:var(--ui-font);font-size:10px;font-weight:650;letter-spacing:.02em;}
.inspire-nav-icon svg{width:22px;height:22px;}
.inspire-editor-nav button{min-height:52px;border-color:var(--line);border-radius:11px;}
.inspire-editor-nav button.active{background:var(--purple);border-color:var(--purple);color:#fff;}
.inspire-editor-nav button.active strong,.inspire-editor-nav button.active small{color:#fff;}
.inspire-editor-nav button.active .inspire-nav-icon{background:#fff;color:var(--purple);}
.inspire-editor-nav button small,.inspire-panel-heading p,.inspire-color-copy p,.inspire-palette-heading p{color:var(--text-secondary);}
.editor-step,.editor-page-group,.account-panel,.product-card,.request-row{border-color:var(--line);box-shadow:none;}
.editor-flow,.editor-page-group[open]>summary{background:#f4f6f0;}
.hub-help-bubble{border-color:#b7c9af;background:#f0f6eb;}
.hub-help-bubble p{color:var(--text-secondary);}
.hub-help-bubble button{min-width:44px;min-height:44px;}
.troubleshoot-check-icon svg{width:18px;height:18px;}
.modal{border:1px solid var(--line);border-radius:18px;box-shadow:0 24px 90px #23352824;}
.admin-activity-dialog{border-color:var(--line);box-shadow:0 24px 90px #23352824;}
.admin-activity-list article.is-new{border-left-color:var(--primary);background:#edf3e8;}
.admin-activity-list small{color:var(--text-secondary);}
.admin-activity-list .activity-dot{background:var(--primary);}
.books-metrics article{background:#fff;border-color:var(--line);color:var(--purple);border-radius:14px;}
.books-metrics .books-balance{background:#e8f0e1;border-color:#c3d4b8;}
.books-metrics small,.books .data-table small{color:var(--text-secondary);}
.books table.data-table th{background:#f1f4ec;}
/* NCSWMC retains its recognizable green identity within the shared, quieter shell. */
body.ncs-client-theme .topbar{background:white;color:var(--ink);border-bottom:1px solid #cdd9cc;}
body.ncs-client-theme .topbar .brand{color:#234d3d;}
body.ncs-client-theme .ncswmc-hub .ncs-intro{background:#f0f5ed;color:#234d3d;border:1px solid #cfdfca;box-shadow:none;}
body.ncs-client-theme .ncswmc-hub .ncs-intro p{color:#526b5a;}
body.ncs-client-theme .ncswmc-hub .ncs-intro .ncs-eyebrow{color:#4d6d54;}
body.ncs-client-theme .ncswmc-hub h1,body.ncs-client-theme .ncswmc-hub h2{font-family:var(--ui-font);font-weight:650;letter-spacing:-.04em;}
body.ncs-client-theme .ncswmc-hub .ncs-option{border-width:1px;border-radius:16px;box-shadow:none;}
@media(min-width:900px){#app .home-actions.has-inbox{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:1020px) and (min-width:761px){.topbar{gap:10px;padding-inline:20px;}.extra-help-switch>span:first-child{max-width:55px;}.topbar .site-name{max-width:160px;}.topbar button{padding-inline:10px;}}
@media(max-width:760px){
  body{background:var(--paper);}
  main.dashboard,.admin-shell{width:100%;padding:24px 16px calc(var(--hub-nav-height,142px) + 28px + env(safe-area-inset-bottom));}
  #app main.dashboard{padding-bottom:calc(var(--hub-nav-height,142px) + 28px + env(safe-area-inset-bottom));}
  .topbar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;padding:10px 14px;min-height:0;}
  .topbar .brand{grid-column:1;grid-row:1;font-size:16px;gap:7px;}.jamfam-mark{width:24px;height:24px;}
  .topbar .site-name{grid-column:2;grid-row:1;justify-self:stretch;margin:0;padding:5px 8px;max-width:none;border-left:0;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .topbar #logout-btn{grid-column:3;grid-row:1;padding:8px;min-height:44px;font-size:11px;}
  #org-switcher select{width:100%!important;padding:8px 5px!important;min-height:38px!important;font-size:12px!important;}
  #app .topbar-help{grid-column:1/3;grid-row:2;min-width:0;width:auto;margin:0;justify-content:flex-start;gap:8px;}
  .extra-help-switch{gap:6px;font-size:11px;white-space:nowrap;}
  .topbar #open-hub-help{padding:8px 10px;font-size:11px;}
  .topbar #billing-payments-button{grid-column:3;grid-row:2;min-width:0;padding:8px;font-size:11px;}
  .admin-app .topbar .brand{grid-column:1/3;}.admin-app .topbar .site-name{display:none;}
  .admin-app #books-nav{grid-column:1;grid-row:2;}.admin-app #admin-activity-button{grid-column:2/4;grid-row:2;}
  #app .home-welcome{gap:14px;padding:2px 0 22px;margin-bottom:22px;}
  #app .home-welcome .home-welcome-icon{display:grid;flex-basis:50px;width:50px;height:50px;border-radius:14px;font-size:17px;}
  #app .home-welcome h1{font-size:27px;}.workspace-header-note{display:none;}
  #app .home-welcome p{font-size:12px;margin-top:7px;}
  #app .home-welcome .eyebrow{font-size:9px;margin-bottom:6px;}
  #app .hub-shortcuts,.admin-section-nav{position:fixed;top:auto;bottom:0;left:0;right:0;z-index:300;margin:0;padding:8px 8px calc(8px + env(safe-area-inset-bottom));border-width:1px 0 0;border-radius:16px 16px 0 0;background:#fff;box-shadow:0 -4px 20px #23352808;}
  #app .hub-shortcuts{display:grid;gap:4px;grid-template-columns:repeat(5,minmax(0,1fr));}
  #app .hub-shortcuts button,.admin-section-nav button{flex-direction:column;gap:5px;min-height:54px;padding:7px 3px;font-size:10px;line-height:1.25;}
  .hub-shortcuts svg,.admin-section-nav svg{width:20px;height:20px;}
  #app .home-actions,#app .home-actions.has-inbox{grid-template-columns:1fr;gap:12px;}
  #app .home-action{flex-direction:row;align-items:flex-start;gap:16px;min-height:0;padding:20px;}
  #app .home-action .home-action-copy strong{font-size:17px;}
  #app .home-action .home-action-copy small{font-size:13px;}
  #app .home-action.primary{padding:24px 20px;min-height:174px;gap:17px;}
  #app .home-action.primary .home-action-icon{flex-basis:46px;width:46px;height:46px;border-radius:13px;}
  #app .home-action.primary .home-action-copy strong{font-size:23px;}
  #app .home-action.primary .home-action-copy small{font-size:13px;}
  .home-section-heading h2{font-size:21px;}.home-section-heading p{font-size:12px;}
  .home-tools{grid-template-columns:1fr;gap:9px;}
  #app .home-tool{min-height:74px;padding:15px;}
  #app .home-help-row{padding:18px;}
  .card{padding:20px;border-radius:15px;}
  .card h2{font-size:20px;}
  input:not([type=checkbox]):not([type=radio]):not([type=color]),select,textarea{font-size:16px;min-height:44px;}
  .row-actions{flex-wrap:wrap;gap:8px;}
  .row-actions button,summary,.link-btn{min-height:44px;}
  .login-card{padding:30px 24px;}
  .shell-header{align-items:flex-start;flex-wrap:wrap;}
  .shell-header h1{font-size:29px;}
  .shell-header>div.client-header-actions:last-child{grid-template-columns:auto minmax(0,1fr);}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition:none!important;}}
@media print{body{background:#fff;}.card{box-shadow:none;}}

/* Approved JamFam studio look: white first, purple canvas in dark mode.
   Every rule is opt-in on the body; NCSWMC never receives this class. */
body.jamfam-themed{
  --jf-canvas:#fff;--jf-canvas-ink:#39214e;--jf-panel:#faf8f4;--jf-surface:#fff;
  --jf-ink:#2b173d;--jf-muted:#72647b;--jf-line:#e5deeb;--jf-tint:#f0e8f8;
  --jf-purple:#5924ad;--jf-orange:#ff9654;--jf-button-ink:#301542;
  --jf-bar:#fff;--jf-bar-ink:#5924ad;--jf-bar-muted:#756781;--jf-bar-line:#e5deeb;
  --purple:var(--jf-purple);--primary:var(--jf-purple);--orange:var(--jf-orange);
  --ink:var(--jf-ink);--paper:var(--jf-canvas);--line:var(--jf-line);--border:var(--jf-line);
  --surface:var(--jf-surface);--surface-tint:var(--jf-tint);--muted:var(--jf-muted);--text-secondary:var(--jf-muted);
  --ui-font:'Epilogue',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  background:var(--jf-canvas);color:var(--jf-canvas-ink);font-family:var(--ui-font);line-height:1.55;
}
html[data-jamfam-theme=dark] body.jamfam-themed{
  --jf-canvas:#5924ad;--jf-canvas-ink:#fff;--jf-bar:#5924ad;--jf-bar-ink:#fff;
  --jf-bar-muted:#eadcf9;--jf-bar-line:#ffffff35;
}
body.jamfam-themed :is(h1,h2,h3,.brand,.btn){font-family:var(--ui-font);font-weight:500;letter-spacing:-.045em}
body.jamfam-themed :where(button,a,input,select,textarea,summary):focus-visible{outline:3px solid #ad82e8;outline-offset:3px}
body.jamfam-themed :is(.helper,.field-help,.muted){color:var(--jf-muted)}
body.jamfam-themed #app .topbar{background:var(--jf-bar);color:var(--jf-bar-ink);border-bottom:1px solid var(--jf-bar-line);box-shadow:none;padding:20px max(24px,calc((100% - 1180px)/2));gap:15px}
body.jamfam-themed #app .topbar .brand{color:var(--jf-bar-ink);font-size:25px;letter-spacing:-1px;font-weight:700}
body.jamfam-themed #app .topbar .jamfam-mark{color:var(--jf-orange)}
body.jamfam-themed #app .topbar .site-name{color:var(--jf-bar-muted);border-color:var(--jf-bar-line)}
body.jamfam-themed #app .topbar button{background:transparent;color:var(--jf-bar-ink);border-color:var(--jf-bar-line);font-weight:500}
body.jamfam-themed #app .topbar button:hover{background:color-mix(in srgb,var(--jf-bar-ink) 7%,transparent);transform:none}
body.jamfam-themed #app .topbar #logout-btn{color:var(--jf-bar-muted);border-color:transparent}
body.jamfam-themed #app .extra-help-switch{color:var(--jf-bar-muted)}
body.jamfam-themed #org-switcher select{background:var(--jf-surface)!important;color:var(--jf-ink)!important;border-color:var(--jf-line)!important}
body.jamfam-themed #app .jamfam-theme-switch,body.jamfam-themed .jamfam-theme-switch{display:inline-flex;gap:2px;flex-shrink:0;border:1px solid var(--jf-bar-line);padding:3px;border-radius:24px;background:transparent}
body.jamfam-themed #app .jamfam-theme-switch button,body.jamfam-themed .jamfam-theme-switch button{font:500 12px/1.2 var(--ui-font);min-height:34px;min-width:47px;padding:8px 11px;border:0;border-radius:20px;color:var(--jf-bar-ink);background:transparent;box-shadow:none}
body.jamfam-themed #app .jamfam-theme-switch button[aria-pressed=true],body.jamfam-themed .jamfam-theme-switch button[aria-pressed=true]{background:var(--jf-bar-ink);color:var(--jf-bar);box-shadow:0 2px 4px #30154216}
body.jamfam-themed .login-card .jamfam-theme-switch{--jf-bar-ink:#5924ad;--jf-bar:#fff;--jf-bar-line:#e5deeb;float:right;margin:0 0 20px 15px}
body.jamfam-themed .login-card .brand{clear:both;display:flex}
body.jamfam-themed main.dashboard{width:min(1120px,calc(100% - 48px));padding:30px 0 48px}
body.jamfam-themed #app .home-welcome{border:0;padding:3px 0 26px;margin:0;color:var(--jf-canvas-ink);gap:18px}
body.jamfam-themed #app .home-welcome .home-welcome-icon{display:none}
body.jamfam-themed #app .home-welcome h1{color:var(--jf-canvas-ink);font-size:clamp(32px,4.5vw,52px);font-weight:500;line-height:1.15;letter-spacing:-2px}
body.jamfam-themed #app .home-welcome .eyebrow{color:var(--jf-canvas-ink);opacity:.8;font-size:11px;letter-spacing:1.5px;font-weight:400}
body.jamfam-themed #app .home-welcome p{color:var(--jf-canvas-ink);opacity:.85;font-size:15px}
body.jamfam-themed .workspace-header-note{color:var(--jf-canvas-ink);opacity:.8}
body.jamfam-themed .workspace-header-note svg{color:var(--jf-canvas-ink)}
body.jamfam-themed #app .hub-shortcuts{background:transparent;border:0;border-bottom:1px solid var(--jf-bar-line);border-radius:0;box-shadow:none;padding:0 0 14px;margin:0 0 24px;gap:6px}
body.jamfam-themed #app .hub-shortcuts button{color:var(--jf-canvas-ink);background:transparent;font-size:12px;font-weight:500}
body.jamfam-themed #app .hub-shortcuts button:hover{background:color-mix(in srgb,var(--jf-canvas-ink) 8%,transparent)}
body.jamfam-themed #app .hub-shortcuts button.active{background:var(--jf-tint);color:var(--jf-purple)}
body.jamfam-themed #app .home-overview{background:var(--jf-panel);color:var(--jf-ink);padding:28px;border-radius:28px;overflow:visible}
body.jamfam-themed #app .home-section-heading h2{font-size:20px;font-weight:500;color:var(--jf-ink)}
body.jamfam-themed #app .home-section-heading h3{font-size:16px;font-weight:500;color:var(--jf-ink)}
body.jamfam-themed #app .home-section-heading p{color:var(--jf-muted)}
body.jamfam-themed #app .home-actions,body.jamfam-themed #app .home-actions.has-inbox{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:0 28px}
body.jamfam-themed #app .home-action{min-height:128px;padding:20px 0;gap:14px;border:0;border-bottom:1px solid var(--jf-line);border-radius:0;background:transparent;box-shadow:none;flex-direction:row;align-items:flex-start}
body.jamfam-themed #app .home-action:hover{background:var(--jf-tint);transform:none;border-color:var(--jf-line);box-shadow:none}
body.jamfam-themed #app .home-action .home-action-icon{border:0;background:transparent;color:var(--jf-purple);border-radius:0;flex:0 0 26px;width:26px;height:30px}
body.jamfam-themed #app .home-action .home-action-copy strong{color:var(--jf-ink);font-size:20px;letter-spacing:-.6px;font-weight:500}
body.jamfam-themed #app .home-action .home-action-copy small{color:var(--jf-muted);font-size:14px;line-height:1.5}
body.jamfam-themed #app .home-action .home-action-cta{color:var(--jf-purple);font-size:13px;font-weight:500}
body.jamfam-themed #app .home-action.primary{grid-column:1;grid-row:1/span 2;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:285px;padding:28px;background:var(--jf-orange);color:var(--jf-button-ink);border:0;border-radius:6px 38px 6px 6px;box-shadow:0 3px 8px #59302018,inset 0 1px 0 #ffffff45}
body.jamfam-themed #app .home-action.primary:hover{background:#ffa267;box-shadow:0 4px 11px #59302024,inset 0 1px 0 #ffffff45}
body.jamfam-themed #app .home-action.primary .home-action-icon{display:none}
body.jamfam-themed #app .home-action.primary .home-action-copy strong{color:var(--jf-button-ink);font-size:clamp(28px,3vw,38px);line-height:1.18;letter-spacing:-1.2px;font-weight:500}
body.jamfam-themed #app .home-action.primary .home-action-copy small{color:#41254e;font-size:15px}
body.jamfam-themed #app .home-action.primary .home-action-cta{color:var(--jf-button-ink);font-size:14px;display:flex;align-items:center;gap:12px;margin-top:24px}
body.jamfam-themed #app .home-actions:not(:has(.home-action:nth-child(2))){grid-template-columns:1fr}
body.jamfam-themed #app .home-publish-note{color:var(--jf-muted)}
body.jamfam-themed #app .home-publish-note>span{color:var(--jf-purple);background:var(--jf-tint)}
body.jamfam-themed #app .home-utilities{border-color:var(--jf-line);margin:25px 0 20px;padding-top:20px}
body.jamfam-themed #app .home-tool{border:0;border-bottom:1px solid var(--jf-line);border-radius:0;background:transparent;color:var(--jf-ink);padding:12px 0;box-shadow:none}
body.jamfam-themed #app .home-tool:hover{background:var(--jf-tint)}
body.jamfam-themed #app .home-tool-icon{background:var(--jf-tint);color:var(--jf-purple)}
body.jamfam-themed #app .home-tool small,body.jamfam-themed #app .home-tool-arrow{color:var(--jf-muted)}
body.jamfam-themed #app .home-help-row{border:0;border-radius:0;padding:18px 0 0;background:transparent;border-top:1px solid var(--jf-line)}
body.jamfam-themed #app .home-help-row strong{color:var(--jf-ink)}
body.jamfam-themed #app .home-help-row span{color:var(--jf-muted)}
body.jamfam-themed #app .home-help-row .btn span{color:inherit}
body.jamfam-themed :is(.card,.product-card,.request-row,.account-panel,.help-panel,.modal,.admin-activity-dialog){background:var(--jf-surface);color:var(--jf-ink);border-color:var(--jf-line);box-shadow:none;border-radius:18px}
body.jamfam-themed .card:hover{border-color:var(--jf-line);box-shadow:none}
body.jamfam-themed :is(.card,.modal,.account-panel,.product-card) :is(h1,h2,h3){color:var(--jf-ink)}
body.jamfam-themed .card h2{font-size:23px;font-weight:500}
body.jamfam-themed .btn{background:var(--jf-purple);border-color:var(--jf-purple);color:#fff;font-weight:500;border-radius:12px;box-shadow:0 2px 5px #30154216,inset 0 1px 0 #ffffff22}
body.jamfam-themed .btn:hover{background:#6832ba;border-color:#6832ba;transform:none;box-shadow:0 3px 7px #30154220}
body.jamfam-themed .btn.secondary{background:var(--jf-surface);border-color:var(--jf-line);color:var(--jf-purple)}
body.jamfam-themed .btn.secondary:hover{background:var(--jf-tint)}
body.jamfam-themed :is(input:not([type=checkbox]):not([type=radio]):not([type=color]),select,textarea){background:var(--jf-surface);color:var(--jf-ink);border-color:#d5c7e1;border-radius:9px;box-shadow:none}
body.jamfam-themed :is(input,textarea)::placeholder{color:#7b6b83}
body.jamfam-themed .field label{color:var(--jf-ink);font-weight:500}
body.jamfam-themed :is(.workspace-intro,.admin-view-intro,.editor-flow,.editor-page-group[open]>summary,.hub-help-bubble){background:var(--jf-tint);color:var(--jf-ink);border-color:var(--jf-line)}
body.jamfam-themed :is(.admin-stat-grid>div,.billing-summary-grid>div,.books-metrics article,.search-metrics>div){background:var(--jf-panel);color:var(--jf-ink);border-color:var(--jf-line)}
body.jamfam-themed :is(.data-table,table.data-table){background:var(--jf-surface);color:var(--jf-ink);border-color:var(--jf-line);box-shadow:none}
body.jamfam-themed table.data-table th{background:var(--jf-tint);color:#665071;border-color:var(--jf-line);font-size:12px;font-weight:500}
body.jamfam-themed .data-table td{border-color:var(--jf-line)}
body.jamfam-themed .data-table tbody tr:hover{background:#faf6ff}
body.jamfam-themed .admin-shell{width:min(1180px,calc(100% - 48px));padding:30px;margin:32px auto 48px;background:var(--jf-panel);color:var(--jf-ink);border-radius:28px}
body.jamfam-themed .shell-header h1{font-size:clamp(32px,4vw,48px);font-weight:500;color:var(--jf-ink)}
body.jamfam-themed .shell-header .eyebrow{color:var(--jf-muted);font-weight:400;letter-spacing:1.3px;font-size:11px}
body.jamfam-themed .admin-section-nav{background:transparent;border:0;border-bottom:1px solid var(--jf-line);border-radius:0;box-shadow:none}
body.jamfam-themed .admin-section-nav button{color:var(--jf-muted);background:transparent}
body.jamfam-themed .admin-section-nav button.active{background:var(--jf-tint);color:var(--jf-purple)}
body.jamfam-themed .admin-section-nav button:hover{background:var(--jf-tint);color:var(--jf-purple)}
body.jamfam-themed .admin-activity-list article.is-new{background:var(--jf-tint);border-left-color:var(--jf-purple)}
body.jamfam-themed .admin-activity-list .activity-dot{background:var(--jf-purple)}
body.jamfam-themed .books-metrics .books-balance{background:var(--jf-tint);border-color:var(--jf-line)}
body.jamfam-themed .inspire-editor-nav button{border-color:var(--jf-line);background:var(--jf-surface);color:var(--jf-ink)}
body.jamfam-themed .inspire-editor-nav button.active{border-color:var(--jf-purple);background:var(--jf-purple);color:#fff}
body.jamfam-themed .inspire-editor-nav button.active :is(strong,small){color:white}
body.jamfam-themed .inspire-editor-nav button.active .inspire-nav-icon{background:#fff;color:var(--jf-purple)}
body.jamfam-themed .inspire-nav-icon{background:var(--jf-tint);color:var(--jf-purple)}
body.jamfam-themed :is(.inspire-panel-heading,.inspire-color-copy,.inspire-palette-heading) p{color:var(--jf-muted)}
body.jamfam-themed .admin-client-view-banner{background:#321557;color:#eadcf9;border:0}
body.jamfam-themed .admin-client-view-banner a{background:transparent;color:white;border-color:#ffffff40}
body.jamfam-themed .login-wrap{background:var(--jf-canvas);padding:24px}
body.jamfam-themed .login-card{background:var(--jf-surface);color:var(--jf-ink);border:1px solid var(--jf-line);border-radius:24px;box-shadow:none;max-width:440px}
body.jamfam-themed .login-card .brand{color:var(--jf-purple);font-size:28px;font-weight:500}
body.jamfam-themed .login-card .jamfam-mark{color:var(--jf-orange)}
body.jamfam-themed .login-card .tagline{color:var(--jf-muted)}
body.jamfam-themed .boot-splash{background:var(--jf-canvas);color:var(--jf-canvas-ink)}
body.jamfam-themed .boot-mark{color:var(--jf-canvas-ink)}
body.jamfam-themed .boot-copy{color:var(--jf-canvas-ink);opacity:.8}
body.jamfam-themed .boot-line{background:var(--jf-line)}
body.jamfam-themed .boot-line::after{background:var(--jf-orange)}
@media(max-width:1120px) and (min-width:761px){body.jamfam-themed #app .topbar{flex-wrap:wrap;padding:16px 24px;gap:10px}body.jamfam-themed #app .topbar .site-name{margin-right:auto}body.jamfam-themed #app .topbar .topbar-help{margin-left:auto}}
@media(max-width:760px){
 body.jamfam-themed #app .topbar{display:flex;flex-wrap:wrap;gap:10px;padding:14px 16px;min-height:0}
 body.jamfam-themed #app .topbar .brand{font-size:21px}
 body.jamfam-themed #app .topbar .site-name{display:block;max-width:150px;margin-right:auto;flex:1;white-space:normal;overflow-wrap:anywhere}
 body.jamfam-themed #app .topbar .topbar-help{order:4;margin:0;flex:1 1 auto}
 body.jamfam-themed #app .topbar #billing-payments-button{order:5}
 body.jamfam-themed #app .topbar .jamfam-theme-switch{order:3;margin-left:auto}
 body.jamfam-themed #app .topbar #logout-btn{order:6;padding:8px}
 body.jamfam-themed #app .jamfam-theme-switch button{min-height:38px;min-width:45px;padding:8px}
 body.jamfam-themed main.dashboard{width:100%;padding:24px 16px calc(var(--hub-nav-height,142px) + 28px + env(safe-area-inset-bottom))}
 body.jamfam-themed #app .home-welcome{padding:0 0 22px}
 body.jamfam-themed #app .home-welcome h1{font-size:32px;letter-spacing:-1.3px}
 body.jamfam-themed #app .home-welcome p{font-size:14px}
 body.jamfam-themed #app .home-overview{padding:21px;border-radius:24px}
 body.jamfam-themed #app .home-actions,body.jamfam-themed #app .home-actions.has-inbox{grid-template-columns:1fr;gap:8px}
 body.jamfam-themed #app .home-action.primary{grid-column:auto;grid-row:auto;min-height:230px;padding:25px;border-radius:6px 32px 6px 6px}
 body.jamfam-themed #app .home-action.primary .home-action-copy strong{font-size:29px}
 body.jamfam-themed #app .home-action{min-height:110px;padding:18px 0}
 body.jamfam-themed #app .home-action .home-action-copy strong{font-size:18px}
 body.jamfam-themed #app .hub-shortcuts{background:var(--jf-surface);border-top:1px solid var(--jf-line);border-bottom:0;padding:8px 8px calc(8px + env(safe-area-inset-bottom));margin:0;border-radius:16px 16px 0 0}
 body.jamfam-themed #app .hub-shortcuts button{color:var(--jf-muted);font-size:11px}
 body.jamfam-themed #app .hub-shortcuts button.active{background:var(--jf-tint);color:var(--jf-purple)}
 body.jamfam-themed .admin-shell{width:calc(100% - 24px);padding:22px 16px calc(90px + env(safe-area-inset-bottom));margin:20px 12px;border-radius:24px}
 body.jamfam-themed .admin-section-nav{background:var(--jf-surface);border-top:1px solid var(--jf-line);border-bottom:0;border-radius:16px 16px 0 0;padding:8px 8px calc(8px + env(safe-area-inset-bottom))}
 body.jamfam-themed .login-card{padding:26px 22px}
 body.jamfam-themed .login-card .jamfam-theme-switch{float:none;margin:0 0 24px auto;width:max-content}
 body.jamfam-themed .card{padding:20px}
}
@media(prefers-reduced-motion:reduce){body.jamfam-themed *{transition:none!important}}
@media print{body.jamfam-themed{--jf-canvas:#fff;--jf-canvas-ink:#2b173d}body.jamfam-themed .jamfam-theme-switch{display:none!important}}
@media(min-width:761px){body.jamfam-themed #app .home-actions.has-inbox .home-action.primary{grid-row:1/span 3}}

/* Strong display type only for the workspace name and primary editing action. */
body.jamfam-themed #app .home-welcome h1,
body.jamfam-themed #app .home-action.primary .home-action-copy strong,
body.jamfam-themed .shell-header h1{
 font-family:'Bricolage Grotesque','Epilogue',sans-serif;font-weight:800;
 font-optical-sizing:auto;letter-spacing:-.045em;
}
body.jamfam-themed .brand .jamfam-mark{display:none}
body.jamfam-themed .brand .jamfam-logo{display:block;width:38px;height:58px;object-fit:contain;flex-shrink:0}
body.jamfam-themed .login-card .brand{align-items:center;gap:12px}
@media(max-width:760px){body.jamfam-themed .brand .jamfam-logo{width:32px;height:49px}}
