:root{--ink:#15151a;--muted:#6d6b75;--paper:#f7f5f0;--card:#fff;--line:#e5e1d8;--purple:#5b3fd6;--purple-dark:#4328bf;--gold:#f4b942;--green:#2f825c;--red:#b84444;--shadow:0 18px 50px rgba(35,29,20,.08)}*{box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.topbar{height:76px;padding:0 max(28px,calc((100vw - 1320px)/2));display:flex;align-items:center;justify-content:space-between;background:rgba(247,245,240,.94);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;backdrop-filter:blur(14px)}.wordmark{display:flex;align-items:center;gap:12px;font-weight:700;font-size:18px}.wordmark em{font-family:"Newsreader",serif;font-weight:500;color:var(--purple)}.mark{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--ink);color:white;font-family:"Newsreader",serif;font-size:22px}.topbar nav{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:600}.shell{width:min(1320px,calc(100% - 48px));margin:0 auto;min-height:calc(100vh - 150px);padding:60px 0 90px}.footer{text-align:center;border-top:1px solid var(--line);padding:28px;color:var(--muted);font-size:13px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:700;color:var(--purple);margin:0 0 10px}.button{appearance:none;border:0;border-radius:10px;background:var(--purple);color:white;padding:13px 20px;font-weight:700;font-size:14px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:.2s ease;box-shadow:0 8px 20px rgba(91,63,214,.2)}.button:hover{background:var(--purple-dark);transform:translateY(-1px)}.button:disabled{opacity:.45;cursor:not-allowed;transform:none}.button-small{padding:9px 14px}.button-ghost{background:white;color:var(--ink);border:1px solid var(--line);box-shadow:none}.button-ghost:hover{background:#faf9f6}.button.full{width:100%}.hero-row{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:52px}.hero-row h1,.form-intro h1{font:600 clamp(45px,5.2vw,76px)/.98 "Newsreader",serif;letter-spacing:-.035em;margin:0}.hero-row h1 span,.form-intro h1 span{color:var(--purple)}.lede,.form-intro p{max-width:620px;color:var(--muted);font-size:18px;margin:22px 0 0}.hero-actions{display:flex;gap:10px;flex-shrink:0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden;margin-bottom:28px}.stats article{background:var(--card);padding:24px 28px;display:flex;flex-direction:column}.stats strong{font:600 36px "Newsreader",serif}.stats span{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.panel,.review-section,.side-card{background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.panel-heading,.section-heading{display:flex;align-items:center;justify-content:space-between;padding:25px 28px;border-bottom:1px solid var(--line)}.panel-heading h2,.section-heading h2{font:600 27px "Newsreader",serif;margin:0}.muted{color:var(--muted);font-size:13px}.empty{text-align:center;padding:80px 20px}.empty-mark{display:grid;place-items:center;width:52px;height:52px;margin:0 auto 18px;border-radius:50%;background:#eeebff;color:var(--purple);font-size:23px}.empty h3{font:600 25px "Newsreader",serif;margin:0}.empty p{color:var(--muted)}.sermon-row{display:grid;grid-template-columns:48px minmax(240px,1fr) 170px 110px 22px;gap:18px;align-items:center;padding:18px 25px;border-bottom:1px solid var(--line);transition:.18s}.sermon-row:last-child{border:0}.sermon-row:hover{background:#faf9f6}.church-monogram{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;color:white;font:600 22px "Newsreader",serif;text-transform:uppercase}.church-monogram.large{width:66px;height:66px;border-radius:18px;font-size:30px}.sermon-main{display:flex;flex-direction:column;min-width:0}.sermon-main strong{font-size:15px}.sermon-main small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status{justify-self:start;display:inline-flex;align-items:center;gap:8px;padding:6px 10px;background:#f2f0ec;border-radius:999px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.status i{width:7px;height:7px;border-radius:50%;background:#aaa}.status-awaitingreview,.status-approved,.status-delivered{background:#e8f5ee;color:var(--green)}.status-awaitingreview i,.status-approved i,.status-delivered i{background:var(--green)}.status-failed{background:#fbeaea;color:var(--red)}.status-failed i{background:var(--red)}.status-normalizing,.status-transcribing,.status-analysing,.status-generatingcontent,.status-selectingclips,.status-renderingclips{background:#eeebff;color:var(--purple)}.status-normalizing i,.status-transcribing i,.status-analysing i,.status-generatingcontent i,.status-selectingclips i,.status-renderingclips i{background:var(--purple);animation:pulse 1.2s infinite}@keyframes pulse{50%{opacity:.28}}.asset-count{font-size:12px;color:var(--muted)}.arrow{font-size:20px;color:#aaa}.form-shell{display:grid;grid-template-columns:minmax(0,.9fr) minmax(500px,1fr);gap:80px;align-items:start;padding-top:20px}.form-intro{position:sticky;top:130px}.form-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:36px;box-shadow:var(--shadow);display:grid;gap:22px}.form-card label,.artifact-form label,.clip-copy label{font-size:12px;font-weight:700;letter-spacing:.03em;display:grid;gap:7px}.form-card input,.form-card select,.artifact-form input,.artifact-form textarea,.clip-copy input{width:100%;border:1px solid #d9d5cc;background:#fcfbf8;border-radius:9px;padding:12px 13px;color:var(--ink);outline:none}.form-card input:focus,.form-card select:focus,.artifact-form input:focus,.artifact-form textarea:focus,.clip-copy input:focus{border-color:var(--purple);box-shadow:0 0 0 3px #eeebff}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-card input[type=color]{height:50px;padding:5px}.upload-zone{border:1px dashed #bbb5a8;border-radius:12px;background:#faf9f6;padding:22px!important}.upload-zone input{border:0!important;padding:0!important;background:transparent!important}.upload-zone span{color:var(--muted);font-weight:400}.validation,.notice,.flash{border-radius:10px;padding:13px 16px;font-size:13px}.validation:empty{display:none}.validation{background:#fbeaea;color:#8f2e2e}.notice{background:#fff7df;color:#755711}.detail-hero{margin:-60px calc((1320px - 100vw)/2) 30px;padding:48px max(28px,calc((100vw - 1320px)/2)) 28px;background:linear-gradient(145deg,#191820,#282333);color:white}.backlink{font-size:12px;color:#bdb9c8}.detail-title{display:grid;grid-template-columns:66px 1fr auto;gap:20px;align-items:center;margin-top:28px}.detail-title h1{font:600 clamp(36px,5vw,60px)/1 "Newsreader",serif;margin:0}.detail-title p:not(.eyebrow){color:#c8c4d0;margin:8px 0 0}.detail-title .status{color:#222}.pipeline{display:grid;grid-template-columns:repeat(8,1fr);gap:12px;margin-top:42px}.pipeline span{display:flex;align-items:center;gap:7px;color:#817d8c;font-size:11px;white-space:nowrap}.pipeline span i{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;border:1px solid #514d5d;font-style:normal;font-size:10px}.pipeline .done{color:#d8d4e2}.pipeline .done i{background:var(--brand);border-color:var(--brand);color:white}.pipeline .active{color:white}.pipeline .active i{background:var(--accent);border-color:var(--accent);color:#201d14}.flash{margin:0 0 18px}.flash.success{background:#e8f5ee;color:#236747}.flash.error{background:#fbeaea;color:#8f2e2e}.failure-card{background:#341f24;color:white;border:1px solid #7d414c;border-radius:15px;padding:25px 28px;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center}.failure-card h2{margin:0;font:600 26px "Newsreader",serif}.failure-card p:last-child{margin-bottom:0;color:#e4cbd0}.workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:24px;align-items:start}.workspace-main{display:grid;gap:22px}.workspace-aside{display:grid;gap:18px}.review-section{overflow:hidden}.section-summary{font:500 22px/1.55 "Newsreader",serif;padding:27px 30px;margin:0}.confidence{font-size:11px;background:#eeebff;color:var(--purple);padding:6px 9px;border-radius:999px;font-weight:700}.insight-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.insight-grid article{padding:25px 30px}.insight-grid article+article{border-left:1px solid var(--line)}.insight-grid h3{font-size:12px;text-transform:uppercase;letter-spacing:.08em}.insight-grid ol{padding-left:20px}.insight-grid li{margin:12px 0;padding-left:5px}.insight-grid li small,.scripture small{display:block;color:var(--purple);margin-top:3px}.scripture{border-left:3px solid var(--gold);padding-left:14px;margin-top:16px}.scripture p{font-family:"Newsreader",serif;font-size:18px;margin:5px 0}.text-button,.copy-button{border:0;background:transparent;color:var(--purple);font-weight:700;cursor:pointer}.artifact{border-bottom:1px solid var(--line)}.artifact:last-child{border:0}.artifact summary{list-style:none;display:flex;align-items:center;justify-content:space-between;padding:19px 28px;cursor:pointer}.artifact summary::-webkit-details-marker{display:none}.artifact summary span:first-child{display:flex;flex-direction:column}.artifact summary small{color:var(--purple);text-transform:uppercase;letter-spacing:.08em;font-weight:700}.artifact-form{background:#faf9f6;border-top:1px solid var(--line);padding:25px 28px;display:grid;gap:14px}.artifact-form textarea{resize:vertical;line-height:1.55}.review-state{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;background:#f0eee9;color:var(--muted);padding:5px 8px;border-radius:999px;white-space:nowrap}.state-approved,.state-edited{background:#e8f5ee;color:var(--green)}.state-rejected{background:#fbeaea;color:var(--red)}.review-actions{display:flex;gap:8px;align-items:center;margin-top:5px}.button.approve{background:var(--green);box-shadow:none}.button.reject{background:white;color:var(--red);border:1px solid #e8c7c7;box-shadow:none}.evidence-note{font-size:11px;color:var(--muted)}.clip-list{display:grid}.clip-card{display:grid;grid-template-columns:65px 1fr auto;gap:20px;padding:25px 28px;border-bottom:1px solid var(--line)}.clip-card:last-child{border:0}.clip-score{width:58px;height:58px;border-radius:50%;background:#eeebff;color:var(--purple);display:flex;align-items:center;justify-content:center;flex-direction:column}.clip-score strong{font-size:16px}.clip-score span{font-size:8px;text-transform:uppercase}.clip-copy h3{font:600 23px "Newsreader",serif;margin:5px 0}.clip-copy>p{color:var(--muted);font-size:13px}.transcript-excerpt{font:500 17px/1.5 "Newsreader",serif!important;color:var(--ink)!important}.timecode{font:600 11px monospace;color:var(--purple)}.clip-copy form{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.clip-copy form .review-actions{grid-column:1/-1}.render-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:20px;padding:28px}.render-card{display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:center}.render-card video{width:150px;aspect-ratio:9/16;background:#111;border-radius:12px}.render-card h3{font:600 21px "Newsreader",serif;margin:0}.render-card p{font-size:12px;color:var(--muted)}.render-card a{font-size:12px;color:var(--purple);font-weight:700}.transcript>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;padding:25px 28px;cursor:pointer}.transcript>summary h2{margin:0;font:600 27px "Newsreader",serif}.transcript-list{max-height:560px;overflow:auto;border-top:1px solid var(--line);padding:12px 28px}.transcript-list p{display:grid;grid-template-columns:55px 1fr;gap:14px;font-size:13px}.transcript-list time{font-family:monospace;color:var(--purple)}.side-card{padding:24px}.side-card h3{font:600 22px "Newsreader",serif}.side-card dl{margin:0}.side-card dl div{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:11px 0;font-size:12px}.side-card dt{color:var(--muted)}.side-card dd{margin:0;font-weight:700}.mono{font-family:monospace}.sticky{position:sticky;top:96px}.checklist{list-style:none;padding:0;margin:18px 0}.checklist li{padding:9px 0 9px 25px;position:relative;color:var(--muted);font-size:13px}.checklist li:before{content:"";position:absolute;left:0;top:13px;width:13px;height:13px;border:1px solid #c8c3b9;border-radius:50%}.checklist li.checked{color:var(--ink)}.checklist li.checked:before{content:"✓";display:grid;place-items:center;background:var(--green);border-color:var(--green);color:white;font-size:8px}.delivery{--brand:#5b3fd6;--accent:#f4b942;background:white}.delivery-hero{min-height:72vh;background:linear-gradient(145deg,color-mix(in srgb,var(--brand) 82%,#16131d),#121117);color:white;padding:46px max(28px,calc((100vw - 1040px)/2));display:flex;flex-direction:column;justify-content:center;position:relative}.delivery-brand{position:absolute;top:35px;left:max(28px,calc((100vw - 1040px)/2));display:flex;align-items:center;gap:13px;text-transform:uppercase;letter-spacing:.1em}.delivery-logo{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:#1c1914;font:600 23px "Newsreader",serif}.delivery-hero>p{text-transform:uppercase;letter-spacing:.18em;font-size:12px;color:#d5d0dc}.delivery-hero h1{font:600 clamp(56px,8vw,100px)/.92 "Newsreader",serif;letter-spacing:-.045em;max-width:950px;margin:12px 0 24px}.delivery-meta{display:flex;gap:15px;align-items:center;color:#d7d3dd}.delivery-meta i{width:4px;height:4px;background:var(--accent);border-radius:50%}.scroll-cue{position:absolute;bottom:35px;font-size:12px;color:#d5d0dc}.delivery-main{width:min(1040px,calc(100% - 48px));margin:0 auto}.delivery-section{padding:100px 0;border-bottom:1px solid var(--line)}.delivery-section.shaded{margin-left:calc((1040px - 100vw)/2);margin-right:calc((1040px - 100vw)/2);padding-left:max(24px,calc((100vw - 1040px)/2));padding-right:max(24px,calc((100vw - 1040px)/2));background:#f7f5f0}.delivery-section h2{font:600 clamp(40px,5vw,62px)/1 "Newsreader",serif;max-width:800px;margin:0 0 36px}.prose{max-width:760px;font:500 21px/1.75 "Newsreader",serif}.preline{white-space:pre-line}.copy-button{padding:10px 0;margin-top:20px}.post-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.post-card{border:1px solid var(--line);padding:28px;border-radius:14px;background:white}.post-card>span{font-size:10px;color:var(--purple);font-weight:700;text-transform:uppercase;letter-spacing:.1em}.post-card h3{font:600 25px "Newsreader",serif}.post-card p{font-size:15px}.post-cta{font-weight:700}.video-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:30px}.video-grid video{width:100%;aspect-ratio:9/16;background:#111;border-radius:16px}.video-grid h3{font:600 25px "Newsreader",serif}.delivery-footer{text-align:center;padding:80px 20px;background:#17151d;color:white}.delivery-footer .delivery-logo{margin:0 auto}.delivery-footer p{color:#bbb6c4}@media(max-width:900px){.shell{width:min(100% - 28px,1320px);padding-top:35px}.hero-row,.form-shell{grid-template-columns:1fr;display:grid;gap:35px}.hero-actions{justify-self:start}.form-intro{position:static}.stats{grid-template-columns:1fr 1fr}.sermon-row{grid-template-columns:44px 1fr auto}.sermon-row .status{grid-column:2}.asset-count{display:none}.workspace-grid{grid-template-columns:1fr}.sticky{position:static}.pipeline{overflow:auto;padding-bottom:8px}.detail-hero{margin-top:-35px}.insight-grid{grid-template-columns:1fr}.insight-grid article+article{border-left:0;border-top:1px solid var(--line)}.post-grid{grid-template-columns:1fr}}@media(max-width:600px){.topbar{padding:0 16px}.topbar nav>a:first-child{display:none}.shell{width:calc(100% - 20px)}.hero-row h1,.form-intro h1{font-size:45px}.stats{grid-template-columns:1fr 1fr}.stats article{padding:18px}.sermon-row{padding:15px}.detail-title{grid-template-columns:52px 1fr}.detail-title .status{grid-column:2}.church-monogram.large{width:52px;height:52px}.field-grid{grid-template-columns:1fr}.form-card{padding:23px}.clip-card{grid-template-columns:1fr}.clip-copy form{grid-template-columns:1fr}.render-card{grid-template-columns:1fr}.render-card video{width:100%}.delivery-main{width:calc(100% - 32px)}.delivery-section{padding:65px 0}.delivery-section.shaded{margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}}
/* Operator-imported church images and finished package graphics. */
.brand-foundation-shell { display: block; max-width: 1120px; margin: auto; }
.brand-foundation-shell .form-intro { position: static; margin-bottom: 32px; }
.brand-foundation-shell > form { max-width: 800px; }
.brand-foundation-shell label { min-width: 0; }
.brand-asset-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: 24px; margin-top: 32px; }
.brand-asset-card { min-width: 0; overflow-wrap: anywhere; }
.brand-asset-card img, .delivery-graphic img { display: block; width: 100%; height: auto; max-height: 520px; object-fit: contain; border-radius: 12px; }
.brand-asset-card figure, .delivery-graphic { margin: 16px 0; }
.brand-asset-card form { margin-top: 12px; }
.delivery-brand-image { width: 64px; height: 64px; object-fit: contain; border-radius: 8px; }
.brand-foundation-shell .validation-summary-valid { display: none; }
.brand-foundation-shell textarea { width: 100%; padding: 12px 14px; border: 1px solid var(--line); border-radius: 10px; background: #fcfbf8; min-height: 90px; resize: vertical; }

/* Keep image readiness visible even when approved copy is collapsed. */
.social-review-wrapper { min-width: 0; }
.social-graphic-card { display:flex; align-items:center; gap:1.25rem; padding:1.25rem; border:1px solid #b8c9c0; border-radius:12px; background:#f4f8f5; color:#183b2c; margin:1rem 0; }
.social-graphic-card .social-graphic-thumbnail { width:120px; max-height:150px; object-fit:contain; flex-shrink:0; }
.graphic-status { display:block; font-size:1rem; font-weight:800; margin-bottom:.5rem; }
.social-graphic-card p { margin:.5rem 0 1rem; }
.social-graphic-card small { display:block; margin-top:.75rem; }
.social-graphic-card .graphic-primary { background:#183b2c; color:#fff; font-weight:800; text-align:center; white-space:normal; }
.graphic-secondary-link { display:block; margin-top:.75rem; color:var(--purple); font-size:.84rem; font-weight:700; }
@media(max-width:600px) { .social-graphic-card { flex-direction:column; align-items:stretch; } .social-graphic-thumbnail { align-self:center; } .social-graphic-card .graphic-primary { display:block; } }

/* Revision-bound social graphic generator. */
.graphic-studio-shell { width:min(1180px,100%); margin:0 auto; display:grid; gap:28px; }
.graphic-studio-hero { max-width:850px; }
.graphic-studio-hero h1 { font:600 clamp(44px,6vw,72px)/.98 "Newsreader",serif; letter-spacing:-.035em; margin:18px 0; }
.graphic-studio-hero>p:last-child { color:var(--muted); font-size:18px; max-width:720px; }
.graphic-studio-grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr); gap:30px; align-items:start; }
.graphic-preview-panel,.graphic-studio-controls>section,.graphic-control-form { background:white; border:1px solid var(--line); border-radius:18px; box-shadow:var(--shadow); overflow:hidden; }
.graphic-preview-panel>img { display:block; width:100%; aspect-ratio:4/5; object-fit:contain; background:#141427; }
.graphic-preview-facts { display:grid; grid-template-columns:repeat(5,1fr); margin:0; border-top:1px solid var(--line); }
.graphic-preview-facts>div { padding:14px; border-right:1px solid var(--line); }
.graphic-preview-facts>div:last-child { border:0; }
.graphic-preview-facts dt { color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.graphic-preview-facts dd { margin:4px 0 0; font-size:12px; font-weight:800; }
.graphic-preview-empty { aspect-ratio:4/5; display:grid; place-content:center; text-align:center; padding:60px; color:white; background:#141427; }
.graphic-preview-empty span { margin:auto; padding:7px 12px; border:1px solid rgba(255,255,255,.45); border-radius:999px; font-size:12px; }
.graphic-preview-empty h2 { font:600 38px/1.05 "Newsreader",serif; margin:22px 0 8px; }
.graphic-preview-empty p { color:#d7d9ef; }
.graphic-neutral-preview { display:block; width:100%; aspect-ratio:4/5; object-fit:contain; background:#262a33; }
.graphic-studio-controls { display:grid; gap:18px; }
.graphic-copy-source { padding:25px; }
.graphic-copy-source h2 { margin:17px 0 5px; font:600 21px "Newsreader",serif; }
.graphic-copy-source p { margin:0; overflow-wrap:anywhere; }
.graphic-copy-recovery { padding:25px; display:grid; gap:16px; }
.graphic-copy-recovery p { margin:0; }
.graphic-copy-recovery .button { white-space:normal; text-align:center; }
.graphic-copy-edit-target { scroll-margin-top:110px; }
.graphic-copy-edit-target:target { outline:2px solid var(--purple); outline-offset:8px; border-radius:4px; }
.graphic-control-form { padding:25px; display:grid; gap:14px; }
.graphic-control-form label { display:grid; gap:7px; font-size:12px; font-weight:800; }
.graphic-control-form select { width:100%; border:1px solid #d9d5cc; border-radius:9px; padding:12px 13px; background:#fcfbf8; }
.graphic-control-form .checkbox-field { grid-template-columns:auto 1fr; align-items:center; }
.graphic-control-form .checkbox-field input { width:18px; height:18px; }
.control-explainer { color:var(--muted); font-size:12px; margin:-6px 0 4px; }
.graphic-failure { padding:18px 20px; border-left:4px solid var(--red); background:#fbeaea; border-radius:10px; color:#762727; }
.graphic-failure p { margin:5px 0 0; }
.graphic-manual-link { color:var(--purple); font-weight:700; padding:0 4px; }
@media(max-width:900px) { .graphic-studio-grid { grid-template-columns:1fr; } .graphic-preview-panel { max-width:680px; margin:auto; } }
@media(max-width:600px) { .graphic-studio-hero h1 { font-size:43px; } .graphic-preview-facts { grid-template-columns:repeat(2,1fr); } .graphic-preview-facts>div { border-bottom:1px solid var(--line); } .graphic-preview-empty { padding:32px; } .graphic-preview-empty h2 { font-size:31px; } .graphic-control-form .button { width:100%; min-height:50px; white-space:normal; } }

.social-review-wrapper:has(.social-graphic-card) { border:1px solid #dce4df; border-radius:12px; padding:1rem; margin:1rem; }

.review-decision textarea { width:100%; min-height:120px; padding:12px; }
.review-decision input[type=checkbox] { width:auto; margin-right:.5rem; }
#package-activity { display:none; }

/* Operator client-review workflow. */
.client-review-shell { width:min(980px,100%); margin:0 auto; display:grid; gap:22px; }
.client-review-shell .validation-summary-valid { display:none; }
.client-review-hero { padding:8px 4px 12px; }
.client-review-hero .backlink { color:var(--muted); display:inline-block; margin-bottom:28px; }
.client-review-title { display:flex; align-items:end; justify-content:space-between; gap:24px; }
.client-review-title h1 { font:600 clamp(44px,6vw,72px)/.98 "Newsreader",serif; letter-spacing:-.035em; margin:0; }
.client-review-title p { color:var(--muted); font-size:18px; margin:10px 0 0; }
.client-review-status { font-size:12px; padding:8px 12px; }
.state-readytoshare,.state-awaitingclient { background:#eeebff; color:var(--purple); }
.state-changesrequested { background:#fff2d8; color:#78550a; }
.state-published { background:#e8f5ee; color:var(--green); }
.state-notready { background:#f0eee9; color:var(--muted); }
.review-next-action { background:linear-gradient(145deg,#1b1922,#302a45); color:white; border-radius:18px; padding:34px 38px; box-shadow:var(--shadow); }
.review-next-action .eyebrow { color:#c5baff; }
.review-next-action h2 { font:600 clamp(29px,4vw,42px)/1.08 "Newsreader",serif; max-width:760px; margin:0; }
.review-next-action>p:not(.eyebrow) { color:#d2ceda; max-width:680px; margin:14px 0 22px; }
.review-next-action .button { box-shadow:none; }
.review-next-action .client-requested-changes { margin-bottom:22px; }
.review-next-action form { margin-top:22px; }
.review-create-form { display:flex; align-items:end; gap:12px; flex-wrap:wrap; }
.review-create-form label { display:grid; gap:6px; color:#e5e1ec; font-size:12px; font-weight:700; }
.review-create-form input[type=number] { width:110px; padding:11px 12px; border:1px solid #625b73; border-radius:9px; background:#25212f; color:white; }
.review-current-card,.review-secondary-card,.review-history { background:var(--card); border:1px solid var(--line); border-radius:16px; box-shadow:var(--shadow); overflow:hidden; }
.review-current-body { padding:28px; display:grid; gap:24px; }
.review-facts,.review-metrics { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; margin:0; background:var(--line); border:1px solid var(--line); border-radius:12px; overflow:hidden; }
.review-facts div,.review-metrics div { background:white; padding:16px; }
.review-facts dt,.review-metrics dt { color:var(--muted); font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
.review-facts dd,.review-metrics dd { margin:5px 0 0; font-weight:700; }
.client-requested-changes { margin:0; padding:18px 20px; border-left:4px solid var(--gold); background:#fff8e9; color:var(--ink); border-radius:0 10px 10px 0; display:grid; gap:6px; }
.client-requested-changes span { white-space:pre-wrap; overflow-wrap:anywhere; }
.review-link-actions { display:grid; gap:12px; }
.review-link-actions>label { font-size:12px; font-weight:700; }
.review-link-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; }
.review-link-row input { min-width:0; border:1px solid var(--line); background:#fcfbf8; border-radius:9px; padding:12px 13px; }
.review-link-unavailable { display:grid; gap:5px; margin:0; padding:16px; border:1px dashed #c8c3b9; border-radius:10px; }
.review-link-unavailable span,.supporting-text,.client-review-caveat { color:var(--muted); font-size:12px; }
.review-link-actions form { justify-self:start; }
.review-activity { border-top:1px solid var(--line); padding-top:20px; }
.review-activity dl { display:flex; gap:26px; margin:0 0 6px; }
.review-activity dl div { display:flex; align-items:baseline; gap:7px; }
.review-activity dt { color:var(--muted); font-size:12px; }
.review-activity dd { margin:0; font-weight:800; }
.review-secondary-card { padding:24px 28px; display:grid; grid-template-columns:minmax(180px,.55fr) minmax(340px,1fr); gap:20px 32px; align-items:start; }
.review-secondary-card h2 { font:600 27px "Newsreader",serif; margin:0; }
.delivery-activity-list { display:grid; gap:12px; }
.delivery-activity-list article { display:grid; gap:3px; padding-bottom:12px; border-bottom:1px solid var(--line); }
.delivery-activity-list article:last-child { border-bottom:0; padding-bottom:0; }
.delivery-activity-list span,.delivery-activity-list small { color:var(--muted); font-size:12px; }
.review-history>summary { cursor:pointer; list-style:none; padding:20px 24px; font-weight:700; display:flex; justify-content:space-between; }
.review-history-list { border-top:1px solid var(--line); }
.review-history-list>article { padding:20px 24px; border-bottom:1px solid var(--line); display:grid; gap:9px; }
.review-history-list>article p { overflow-wrap:anywhere; }
.review-history-list>article:last-child { border-bottom:0; }
.review-history-list>article>div:first-child { display:flex; justify-content:space-between; gap:20px; }
.review-history-list small { color:var(--muted); }
.client-review-caveat { margin:0 4px; }
.client-review-summary-body { padding:24px 28px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.client-review-summary-body p { margin:0; color:var(--muted); }
.delivery .validation-summary-valid { display:none; }
.review-copy-label { width:max-content; margin:0 auto 18px; padding:7px 12px; border:1px solid rgba(255,255,255,.5); border-radius:999px; }
.review-copy-notice { padding-block:24px; }
.review-item-feedback { display:grid; gap:14px; margin-top:22px; padding-top:18px; border-top:1px solid rgba(30,31,29,.16); }
.review-item-form { display:grid; gap:10px; }
.review-item-form label { color:var(--ink); font-size:13px; font-weight:700; }
.review-item-form textarea { width:100%; min-height:78px; padding:11px 13px; border:1px solid #b8b3aa; border-radius:9px; background:#fff; color:var(--ink); resize:vertical; }
.review-item-error { margin:0; }
.review-item-recorded { padding:14px 16px; border-radius:9px; background:#edf7f1; color:#184a31; overflow-wrap:anywhere; }
.review-item-recorded p { margin:6px 0 0; color:inherit; white-space:pre-wrap; }
.review-item-recorded-changes { background:#fff2d8; color:#604306; border-left:4px solid #b47a09; }
.review-item-recorded-empty { background:#f2f0ec; color:var(--muted); }
.review-item-changes { outline:3px solid #d79c28; outline-offset:-3px; background:#fffaf0; }
.review-item-action { justify-self:start; }
.client-review-delivery [hidden] { display:none !important; }
.client-review-delivery [data-review-initially-hidden="true"] { display:none !important; }
.client-review-delivery .review-package-hero { min-height:0; padding-top:112px; padding-bottom:64px; justify-content:flex-start; }
.client-review-delivery .review-package-hero h1 { font-size:clamp(46px,6vw,74px); line-height:.98; max-width:900px; margin-bottom:20px; overflow-wrap:anywhere; }
.client-review-delivery .review-package-hero .scroll-cue { position:static; margin-top:34px; }
.client-review-delivery .review-package-sections { display:flex; flex-direction:column; width:100%; }
.client-review-delivery .package-major-section { display:block; width:100%; min-width:0; }
.review-progress-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; margin:24px 0; border:1px solid var(--line); border-radius:14px; overflow:hidden; background:var(--line); }
.review-progress-summary a { min-width:0; padding:16px 18px; display:grid; gap:3px; background:white; }
.review-progress-summary span { color:var(--muted); font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.review-progress-summary strong { font-size:14px; overflow-wrap:anywhere; }
.review-progress-summary small { color:#78550a; font-size:11px; }
.review-section-controls { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:24px; align-items:center; margin:36px 0 0; padding:22px 24px; border:1px solid var(--line); border-radius:14px; background:#f7f5f0; scroll-margin-top:18px; }
.review-section-controls h2 { margin:0 0 5px; font:600 30px/1.05 "Newsreader",serif; }
.review-section-controls p { margin:0; color:var(--muted); }
.review-section-progress { min-width:190px; display:grid; gap:2px; text-align:right; }
.review-section-progress small { color:var(--muted); }
.review-section-progress span { color:#78550a; font-size:12px; font-weight:700; }
.review-section-form { grid-column:1/-1; display:flex; align-items:center; gap:12px; flex-wrap:wrap; padding-top:14px; border-top:1px solid var(--line); }
.review-section-form small { color:var(--muted); }
.review-item-primary-actions { display:flex; gap:9px; flex-wrap:wrap; }
.review-change-editor { display:grid; gap:9px; padding:15px; border:1px solid #d9d5cc; border-radius:10px; background:#faf9f6; }
.review-change-editor[hidden] { display:none !important; }
.review-change-editor .review-actions { margin:0; }
.review-message-error { color:#8f2e2e !important; font-weight:700; }
.review-overall-form[hidden],.review-item-form[hidden],.review-section-form[hidden] { display:none !important; }
.review-overall-form .review-confirmation { display:flex; align-items:flex-start; gap:10px; }
.review-overall-form .review-confirmation input[type=checkbox] { flex:0 0 18px; width:18px; height:18px; margin:2px 0 0; padding:0; }
.review-overall-form .review-confirmation span { min-width:0; }
.review-overall-actions { align-items:stretch; }
.review-overall-actions .button { white-space:normal; text-align:center; }
.review-decision { scroll-margin-top:18px; }
.package-editor-anchor { display:block; position:relative; top:-92px; visibility:hidden; }
.package-feedback-jump { justify-self:start; }
.operator-package-feedback { display:grid; gap:20px; overflow:hidden; }
.review-secondary-card.operator-package-feedback { grid-template-columns:minmax(0,1fr); }
.operator-package-feedback>.delivery-section { margin:0; border:1px solid var(--line); border-radius:12px; padding:24px; }
.operator-package-feedback .post-grid,.operator-package-feedback .video-grid { margin-top:18px; }
.historical-package-feedback { width:100%; margin-top:12px; border-top:1px solid var(--line); padding-top:12px; }
.historical-package-feedback>summary { cursor:pointer; color:var(--purple); font-weight:700; }
.historical-package-feedback>.operator-package-feedback { margin-top:16px; }
@media(max-width:1100px) {
  .operator-package-feedback .video-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:600px) {
  .operator-package-feedback .video-grid { grid-template-columns:minmax(0,1fr); }
  .client-review-delivery .review-package-hero { padding-top:105px; padding-bottom:42px; }
  .client-review-delivery .review-package-hero h1 { font-size:clamp(42px,13vw,58px); }
  .client-review-delivery .review-package-hero .delivery-brand { top:24px; }
  .client-review-delivery .review-package-hero .scroll-cue { margin-top:24px; }
  .review-progress-summary { grid-template-columns:repeat(2,minmax(0,1fr)); margin-block:16px 24px; }
  .review-progress-summary a { padding:13px 12px; }
  .review-section-controls { grid-template-columns:1fr; gap:14px; padding:20px 17px; }
  .review-section-progress { min-width:0; text-align:left; }
  .review-section-form { align-items:stretch; }
  .review-section-form .button { width:100%; }
  .review-item-primary-actions { display:grid; grid-template-columns:1fr 1fr; }
  .review-overall-actions { display:grid; grid-template-columns:1fr; }
  .review-overall-actions .button { width:100%; min-height:50px; }
  .client-review-title { align-items:start; flex-direction:column; }
  .review-next-action { padding:28px 23px; }
  .review-facts,.review-metrics { grid-template-columns:1fr; }
  .review-link-row { grid-template-columns:1fr; }
  .review-secondary-card { grid-template-columns:1fr; }
  .review-secondary-card>small { grid-column:auto; }
  .review-history-list>article>div:first-child,.client-review-summary-body { align-items:start; flex-direction:column; }
}

.submissions-shell { max-width: 1050px; margin: 0 auto; }
.submission-tabs { display:flex; flex-wrap:wrap; gap:12px; margin:24px 0; }
.submission-list { display:grid; gap:18px; }
.submissions-shell .form-card { margin:20px 0; padding:28px; }
.submission-row { display:flex; align-items:center; justify-content:space-between; gap:24px; }
.submission-row h2 { margin:8px 0; }
.submission-facts { display:grid; grid-template-columns:160px 1fr; gap:14px 24px; }
.submission-facts dd { margin:0; overflow-wrap:anywhere; }
.submission-facts dt { font-weight:600; }
.submission-notes { white-space:pre-wrap; }
.duplicate-flag { color:#8a4b05; }
.submission-checkbox { display:flex; align-items:flex-start; gap:12px; }
.submission-checkbox input { width:auto; margin-top:5px; }
@media(max-width:640px) { .submission-row { display:block; } .submissions-shell .form-card { padding:20px; } .submission-facts { grid-template-columns:1fr; gap:6px; } .submission-facts dd { margin-bottom:12px; } }

.submissions-shell .validation-summary-valid { display:none; }
.form-card label.submission-checkbox { display:flex; align-items:flex-start; gap:12px; }
.form-card .submission-checkbox input { width:18px; height:18px; flex:0 0 18px; margin:3px 0 0; padding:0; }

/* Social Graphic Studio: exactly three operator palette controls. */
.graphic-palette { border: 1px solid var(--line, #d7dce0); border-radius: 12px; padding: 16px; margin: 0; min-width: 0; }
.graphic-palette legend { font-weight: 700; padding: 0 6px; }
.graphic-palette-fields { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.graphic-palette-fields label { min-width: 0; font-size: .85rem; }
.graphic-palette-fields input[type=color] { width: 100%; height: 48px; padding: 4px; cursor: pointer; }
@media (max-width: 420px) { .graphic-palette-fields { grid-template-columns: 1fr; } }
