/* Shared composition: public forms, intranet pages and their previews. */
.page-design { container-type:inline-size; position:relative; isolation:isolate; overflow:hidden; background:var(--design-bg,#0b2035); color:#fff; min-width:0; width:100%; border-radius:0; }
.page-design * { box-sizing:border-box; }
.design-backdrop,.design-shade { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; }
.design-shade { z-index:-1; background:linear-gradient(110deg,rgba(2,12,25,.76),rgba(2,12,25,var(--design-overlay,.35))); }
.design-composition { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); min-height:var(--design-height,720px); gap:clamp(20px,4cqw,64px); padding:clamp(20px,4cqw,64px); align-items:stretch; }
.design-story { min-width:0; align-self:center; padding:20px 0; max-width:670px; overflow-wrap:anywhere; }
.page-design .design-eyebrow { font:700 12px/1.5 Inter,system-ui,sans-serif; letter-spacing:.18em; color:#9ed9ff; margin:0 0 22px; }
.page-design .design-story h2 { color:#fff; font:750 clamp(30px,4.4cqw,64px)/1.08 Inter,system-ui,sans-serif; letter-spacing:-.035em; margin:0 0 24px; text-wrap:balance; }
.page-design .design-description { color:#e1ebf5; font:400 clamp(15px,1.45cqw,19px)/1.7 Inter,system-ui,sans-serif; white-space:pre-line; max-width:540px; margin:0; }
.design-story-rule { display:block; width:54px; height:3px; background:#74c8f4; margin-top:32px; }
.design-slot { min-width:0; display:grid; grid-template-columns:minmax(0,var(--design-left,50fr)) minmax(0,var(--design-width,520px)) minmax(0,var(--design-right,50fr)); grid-template-rows:minmax(0,var(--design-top,0fr)) auto minmax(0,var(--design-bottom,100fr)); }
.design-card { grid-column:2; grid-row:2; min-width:0; overflow:hidden; background:#fff; color:#263238; border:1px solid #dce4eb; border-radius:var(--design-radius,8px); box-shadow:0 12px 40px #0002; }
.design-card-hint { display:block; padding:8px 14px; color:#526777; background:#f3f7fa; font:500 11px/1.5 Inter,system-ui,sans-serif; border-bottom:1px solid #dce4eb; }
.layout-split.card-left .design-story { grid-column:2; grid-row:1; }
.layout-split.card-left .design-slot { grid-column:1; grid-row:1; }
.layout-cover .design-composition,.layout-simple .design-composition { grid-template-columns:minmax(0,1fr); gap:20px; }
.layout-cover .design-story { align-self:start; max-width:850px; }
.layout-cover .design-slot { min-height:400px; }
.layout-simple { background:var(--design-bg,#eef3f7); }
.layout-simple .design-shade { display:none; }
.layout-simple .design-story h2 { color:var(--design-simple-text,#263238); }
.layout-simple .design-description,.layout-simple .design-eyebrow { color:var(--design-simple-muted,#455d70); }
.design-form-embed { display:block; width:100%; min-height:240px; height:720px; border:0; background:white; }
.design-embed-placeholder { padding:32px; min-height:340px; }
.design-embed-placeholder h3 { font-size:24px; color:#263238; margin:0 0 12px; }
.design-embed-placeholder p { font-size:14px; line-height:1.6; color:#526777; }
.design-placeholder-line { height:40px; border:1px solid #ccd8e1; margin:16px 0; background:#f6f9fb; }
.design-embed-placeholder .btn { background:var(--design-accent)!important; color:#fff!important; }
.page-design .form-paper { background:#fff!important; color:#263238!important; border:0!important; border-radius:0!important; box-shadow:none!important; margin:0; padding:clamp(20px,3cqw,38px); }
.page-design .form-paper h1 { font-size:clamp(24px,2.7cqw,34px); line-height:1.2; color:#263238!important; }
.page-design .form-paper .eyebrow { color:var(--design-accent)!important; }
.page-design .form-intro,.page-design .form-help,.page-design .form-privacy,.page-design .form-question small { color:#536575!important; }
.page-design .form-question { color:#263238!important; }
.page-design .form-paper input:not([type=checkbox]):not([type=radio]),.page-design .form-paper select,.page-design .form-paper textarea { background:#fff!important; color:#263238!important; border:1px solid #bacbd9!important; min-height:42px; }
.page-design .form-paper input:focus-visible,.page-design .form-paper textarea:focus-visible,.page-design .form-paper select:focus-visible { outline:2px solid var(--design-accent); outline-offset:2px; }
.page-design .form-paper button[type=submit] { background:var(--design-accent)!important; border-color:var(--design-accent)!important; color:#fff!important; width:100%; min-height:46px; }
.public-form-shell:has(>.page-design) { max-width:none; width:100%; padding:0; margin:0; }
.public-form-shell:has(>.page-design) > .form-public-footer { text-align:center; padding:18px; }
body.public-form-embedded { background:white!important; }
.public-form-embedded .public-form-shell { width:100%; max-width:none; margin:0; padding:0; }
.public-form-embedded .form-paper { border:0; border-radius:0; box-shadow:none; margin:0; }
.public-form-embedded .form-public-footer { display:none; }
@container (max-width:680px) {
  .design-composition { grid-template-columns:minmax(0,1fr); min-height:0; padding:22px 16px; gap:14px; }
  .layout-split.card-left .design-story,.layout-split.card-left .design-slot { grid-column:auto; grid-row:auto; }
  .design-story { max-width:none; padding:12px 4px 20px; }
  .page-design .design-story h2 { font-size:32px; }
  .design-slot { display:block; min-height:0!important; }
  .design-card { width:100%; }
}

/* Compact authoring panels inherit the active Studio theme. */
.design-controls { color:var(--adm-text,var(--text,#263238)); font:13px/1.5 Inter,system-ui,sans-serif; }
.design-controls h3 { font-size:18px; line-height:1.25; margin:8px 0; }
.design-controls p { font-size:12px; color:var(--adm-muted,#607585); margin:6px 0 12px; }
.design-kicker { font-size:10px; font-weight:750; letter-spacing:.13em; color:var(--adm-primary,#287ead); }
.design-presets { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin:14px 0; }
.design-presets button { display:block!important; padding:0!important; text-align:left!important; min-width:0; background:var(--adm-panel,#fff); color:inherit; border:1px solid var(--adm-border,#d3dce5); cursor:pointer; }
.design-presets button:hover { border-color:#3c8dbc; box-shadow:0 0 0 1px #3c8dbc; }
.design-presets strong { display:block; font-size:12px; padding:7px 9px; }
.design-preset-mini { display:block; width:100%; height:78px; position:relative; overflow:hidden; }
.design-preset-mini img { width:100%; height:100%; object-fit:cover; }
.design-preset-mini i { position:absolute; right:10%; top:17%; bottom:17%; width:32%; background:#fff; border-radius:3px; box-shadow:0 2px 6px #0004; }
.design-preset-mini i::after { content:''; position:absolute; inset:12px 6px; background:repeating-linear-gradient(#d9e6ed 0 3px,transparent 3px 9px); }
.design-preset-mini.mini-left i { right:auto; left:10%; }
.design-preset-mini.mini-simple i { right:27%; width:46%; }
.design-preset-mini.mini-cover i { top:40%; bottom:8%; }
.design-field { display:grid; gap:6px; margin:12px 0; font-size:12px; font-weight:600; }
.design-field > span { display:flex; justify-content:space-between; gap:8px; }
.design-field output { color:var(--adm-primary,#287ead); font-variant-numeric:tabular-nums; }
.design-controls input:not([type=range]),.design-controls select,.design-controls textarea,.design-bank-tools input,.design-bank-tools select { width:100%; min-height:36px; border:1px solid var(--adm-border,#cbd7df); padding:7px 9px; background:var(--adm-input,var(--adm-panel,#fff)); color:inherit; font:inherit; }
.design-controls input[type=range] { width:100%; accent-color:#3c8dbc; cursor:pointer; }
.design-controls details { border-top:1px solid var(--adm-border,#d3dce5); padding:14px 0 0; margin-top:14px; }
.design-controls summary { font-weight:700; cursor:pointer; min-height:30px; }
.design-position-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:5px; }
.design-position-grid button { height:32px; border:1px solid var(--adm-border,#d3dce5); background:var(--adm-panel,#fff); display:grid; place-items:center; cursor:pointer; }
.design-position-grid button span { width:9px; height:9px; background:#95a9b8; }
.design-position-grid button[aria-pressed=true] { border-color:#3c8dbc; background:var(--adm-primary-soft,#e8f3fa); }
.design-position-grid button[aria-pressed=true] span { background:#3c8dbc; }
.design-image-current { margin:14px 0 8px; display:grid; position:relative; min-height:92px; place-items:center; background:var(--adm-bg,#f3f5f7); border:1px solid var(--adm-border,#d3dce5); }
.design-image-current img { width:100%; height:120px; object-fit:cover; }
.design-image-current button { margin:8px; }
.design-color-pair { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.design-controls input[type=color] { height:38px; padding:3px; }
.design-mobile-note { border-left:3px solid #3c8dbc; padding:10px; background:var(--adm-primary-soft,#eaf4fa); }
.design-mode-tabs,.design-preview-tools { display:flex; align-items:center; gap:6px; flex-wrap:wrap; margin-bottom:14px; }
.design-mode-tabs button[aria-pressed=true],.design-preview-tools button[aria-pressed=true] { background:#287ead!important; color:white!important; border-color:#287ead!important; }
.form-design-layout { display:grid; grid-template-columns:290px minmax(0,1fr); gap:14px; align-items:start; }
.form-design-layout > aside { padding:16px; border:1px solid var(--adm-border,#d3dce5); background:var(--adm-panel,#fff); max-height:calc(100dvh - 230px); overflow:auto; }
.form-design-preview { min-width:0; background:var(--adm-bg,#f3f5f7); border:1px solid var(--adm-border,#d3dce5); padding:12px; }
.design-preview-tools strong { margin-right:auto; font-size:12px; }
.design-device-frame { width:100%; margin-inline:auto; transition:max-width .2s; }
.design-device-frame[data-device=mobile] { max-width:390px; }
.design-device-frame[data-device=tablet] { max-width:820px; }
.design-preview-tools + .preview-notice { font-size:12px; margin-bottom:10px; }
.design-image-picker { width:min(1000px,calc(100vw - 32px)); max-height:calc(100dvh - 40px); padding:0; color:var(--adm-text,#263238); background:var(--adm-panel,#fff); border:1px solid var(--adm-border,#d3dce5); box-shadow:0 20px 80px #0005; border-radius:8px; }
.design-image-picker::backdrop { background:#061522ad; backdrop-filter:blur(4px); }
.design-image-picker[open] { display:flex; flex-direction:column; height:min(900px,calc(100dvh - 40px)); overflow:hidden; }
.design-image-picker > header,.design-image-picker > .design-bank-tools,.design-image-picker > footer { flex-shrink:0; }
.design-bank-scroll { flex:1; min-height:0; overflow:auto; overscroll-behavior:contain; scrollbar-gutter:stable; }
.design-bank-selection { display:flex; align-items:center; gap:10px; min-width:0; }
.design-bank-selection img { width:90px; height:54px; object-fit:cover; flex-shrink:0; border:1px solid var(--adm-border,#d3dce5); }
.design-bank-selection img[hidden] { display:none; }
.design-bank-selection-actions { display:flex; flex-wrap:wrap; gap:8px; justify-content:flex-end; }
.design-image-picker [data-flip][aria-pressed=true] { border-color:var(--adm-primary,#3c8dbc); background:var(--adm-primary-soft,#e8f2f8); }
@media(max-width:640px),(max-height:650px) {
 .design-image-picker[open] { height:calc(100dvh - 16px); max-height:calc(100dvh - 16px); }
 .design-image-picker > header { padding:12px 14px; }
 .design-image-picker > header p,.design-image-picker > header .design-kicker { display:none; }
 .design-image-picker > header h2 { font-size:18px; margin:4px 0; }
 .design-image-picker > .design-bank-tools { padding:10px 14px; gap:8px; }
 .design-image-picker > .design-bank-tools label { min-width:120px; }
 .design-image-picker > footer { padding:10px 14px; }
 .design-bank-selection img { width:64px; height:40px; }
 .design-bank-selection-actions { flex:1; }
}
.design-image-picker header { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; padding:24px; border-bottom:1px solid var(--adm-border,#d3dce5); }
.design-image-picker h2 { font-size:26px; margin:8px 0; letter-spacing:-.025em; }
.design-image-picker p { color:var(--adm-muted,#607585); font-size:13px; margin:0; }
.design-bank-tools { display:flex; gap:12px; align-items:end; padding:16px 24px; }
.design-bank-tools label { display:grid; gap:6px; flex:1; font-size:12px; }
.design-bank-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; padding:4px 24px 24px; }
.design-image-picker .design-image-card { display:block!important; overflow:hidden; padding:0!important; background:var(--adm-panel,#fff); color:inherit; border:1px solid var(--adm-border,#d3dce5); text-align:left!important; cursor:pointer; }
.design-image-card[aria-pressed=true] { border-color:#3c8dbc; outline:2px solid #3c8dbc; }
.design-image-card img { width:100%; aspect-ratio:4/3; object-fit:cover; display:block; }
.design-image-card[data-image-id^="photo-"] img { aspect-ratio:16/9; }
.design-image-card > span { display:grid; gap:6px; padding:14px; }
.design-image-card small { color:var(--adm-muted,#607585); font-size:11px; }
.design-image-card strong { font-size:14px; line-height:1.4; }
.design-image-card em { color:var(--adm-primary,#287ead); font-style:normal; font-size:12px; }
.design-image-picker footer { position:sticky; bottom:0; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 24px; border-top:1px solid var(--adm-border,#d3dce5); background:var(--adm-panel,#fff); font-size:12px; }
.design-controls button:focus-visible,.design-image-picker button:focus-visible { outline:2px solid #3c8dbc; outline-offset:3px; }
.design-template-photo { width:100%; height:140px; object-fit:cover; display:block; }
.design-empty { grid-column:1/-1; padding:36px 0; }
.canvas-stage .page-header-block { width:100%!important; max-width:100%!important; margin-inline:0!important; }
.canvas-stage { container-type:inline-size; }
@container(max-width:680px) {
  .page-header-block .page-header-title { font-size:32px!important; line-height:1.15; }
  .page-header-block .page-header-content { width:100%!important; max-width:100%!important; }
  .page-header-block .page-header-inner { padding:26px 20px!important; }
  .quick-links-grid,.public-columns { grid-template-columns:minmax(0,1fr)!important; }
}
.public-page-root[data-theme-id^="domain-"] { --site-primary:var(--domain-accent)!important; --site-primary-strong:var(--domain-accent)!important; --site-link:var(--domain-accent)!important; --site-accent:var(--domain-accent)!important; }
.design-template-filter { display:flex; align-items:center; gap:12px; margin:12px 0 18px; }
.design-template-filter select { max-width:300px; }
.template-picker-dialog .template-card[hidden] { display:none!important; }
.form-design-preview .question-drag-handle { display:none!important; }
.operational-dashboard-block { overflow:hidden; padding:0!important; }
.operational-dashboard-block > header { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:12px 16px; border-bottom:1px solid var(--adm-border,#d3dce5); }
.operational-dashboard-block h2 { font-size:16px; margin:0; }
.operational-dashboard-block header a { font-size:12px; }
.operational-dashboard-frame { display:block; width:100%; border:0; min-height:400px; background:var(--adm-bg,#f3f5f7); }
.operational-dashboard-placeholder { min-height:240px; display:grid; align-content:center; justify-items:center; text-align:center; padding:24px; background:var(--adm-surface,#f3f5f7); }
.operational-dashboard-placeholder > span { font-size:44px; color:var(--adm-primary,#287ead); }
.operational-dashboard-placeholder h3 { font-size:19px; margin:10px 0; }
.operational-dashboard-placeholder p,.operational-dashboard-placeholder small { font-size:12px; color:var(--adm-muted,#607585); }
.dashboard-picker-results { padding:0 24px 24px; }
.dashboard-picker .dashboard-choice { display:flex!important; align-items:center; gap:14px; width:100%; min-height:60px; margin:8px 0; padding:12px 16px!important; border:1px solid var(--adm-border,#d3dce5); background:var(--adm-panel,#fff); color:inherit; text-align:left!important; }
.dashboard-choice > span:first-child { font-size:26px; color:var(--adm-primary,#287ead); }
.dashboard-choice > strong { flex:1; }
.dashboard-choice:hover { border-color:#3c8dbc; }
@media(max-width:900px) { .form-design-layout { grid-template-columns:230px minmax(0,1fr); } }
@media(max-width:640px) { .form-design-layout { grid-template-columns:minmax(0,1fr); } .form-design-layout > aside { max-height:450px; } .design-bank-grid { grid-template-columns:1fr; } .design-bank-tools { flex-wrap:wrap; } .design-image-picker h2 { font-size:22px; } }
@media(prefers-reduced-motion:reduce) { .design-device-frame { transition:none; } }
.intranet-article-feed{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:14px}
.intranet-article-card{border:1px solid var(--site-border,var(--border,#d8dee5));background:var(--site-surface,var(--panel,#fff));color:var(--site-text,inherit);min-width:0;overflow:hidden}
.intranet-article-link{display:flex;flex-direction:column;height:100%;color:inherit!important;text-decoration:none!important}
.intranet-article-link:hover h3,.intranet-article-link:focus-visible h3{text-decoration:underline;color:var(--domain-accent,var(--accent,#3c8dbc))}
.intranet-article-link:focus-visible{outline:3px solid var(--accent,#3c8dbc);outline-offset:-3px}
.intranet-article-link>img,.intranet-article-cover{width:100%;height:180px;object-fit:cover}
.intranet-article-cover{display:grid;place-items:center;font-size:42px;background:linear-gradient(130deg,var(--domain-accent,#3c8dbc),#153b54);color:#fff}
.intranet-article-copy{display:flex;flex:1;flex-direction:column;padding:18px;gap:10px}
.intranet-article-copy h3,.intranet-article-copy p{margin:0;overflow-wrap:anywhere}
.intranet-article-copy h3{font-size:20px;line-height:1.3}.intranet-article-copy p{font-size:14px;line-height:1.65;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.intranet-article-meta{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--site-muted,currentColor)}
.intranet-article-copy footer{display:flex;justify-content:space-between;gap:10px;margin-top:auto;padding-top:12px;font-size:12px}
.intranet-article-feed.is-list{grid-template-columns:1fr}.intranet-article-feed.is-list .intranet-article-link{flex-direction:row}.intranet-article-feed.is-list .intranet-article-link>img,.intranet-article-feed.is-list .intranet-article-cover{width:160px;height:auto;min-height:145px}
@container (max-width:560px){.intranet-article-feed.is-list .intranet-article-link{flex-direction:column}.intranet-article-feed.is-list .intranet-article-link>img,.intranet-article-feed.is-list .intranet-article-cover{width:100%;height:150px;min-height:0}}

/* Explicit message color must win over the shell theme, in preview and publication. */
body[data-theme] #app .page-design .design-story > h2,
body[data-theme] #app .page-design .design-story > .design-eyebrow,
body[data-theme] #app .page-design .design-story > .design-description,
.page-design .design-story > h2,
.page-design .design-story > .design-eyebrow,
.page-design .design-story > .design-description { color:var(--design-text,#ffffff)!important; }
.design-image-picker .design-bank-upload { margin:0 24px 18px; padding:16px; border:1px solid var(--adm-border,#d3dce5); background:var(--adm-panel-alt,var(--adm-panel,#fff)); }
.design-image-picker .design-bank-upload[hidden] { display:none!important; }
.design-image-picker .design-bank-upload h3 { margin:0 0 8px; }
.design-image-picker .design-bank-upload label { display:block; margin:12px 0; }
.design-image-picker .design-bank-upload input:not([type=checkbox]) { display:block; width:100%; margin-top:6px; }
.design-image-picker .design-bank-consent { line-height:1.6; }
.design-image-picker .design-bank-notice:not(:empty) { padding:0 24px 16px; font-size:13px; }
.design-image-picker [data-upload-status] { display:block; margin-top:10px; }
.design-image-picker .design-bank-tools { flex-wrap:wrap; }
.design-image-picker .design-bank-tools label { min-width:180px; }
.design-image-picker .design-bank-upload input { box-sizing:border-box; max-width:100%; min-width:0; }
@media(max-width:640px) { .design-image-picker .design-color-pair { grid-template-columns:minmax(0,1fr); } .design-image-picker footer { flex-wrap:wrap; } }

/* Explicit columns keep a lone compact article from stretching across the row. */
.intranet-articles-block{container-type:inline-size;container-name:article-feed}
.intranet-article-feed.is-compact{grid-template-columns:repeat(var(--article-columns,3),minmax(0,1fr))}
.intranet-article-feed.is-compact .intranet-article-link>img,.intranet-article-feed.is-compact .intranet-article-cover{height:140px}
.intranet-article-feed.is-compact .intranet-article-copy{padding:12px;gap:8px}
.intranet-article-feed.is-compact h3{font-size:16px}
.intranet-article-feed.is-compact p{font-size:13px;line-height:1.5}
.intranet-article-feed.is-compact footer{flex-wrap:wrap;font-size:11px;padding-top:6px}
@container article-feed (max-width:900px){.intranet-article-feed.is-compact{grid-template-columns:repeat(min(var(--article-columns,3),2),minmax(0,1fr))}}
@container article-feed (max-width:520px){.intranet-article-feed.is-compact{grid-template-columns:minmax(0,1fr)}}
