:root{
  --brand:#d64550;
  --brand-dark:#a52c37;
  --ink:#1b1b1e;
  --paper:#fbfffe;
  --canvas:#f8f5f2;
  --line:#e7ded8;
  --muted:#68666a;
  font-family:'Raleway',Arial,sans-serif;
  color:var(--ink);
  background:var(--canvas);
}
*{box-sizing:border-box}
body{margin:0;background:var(--canvas)}
a{color:var(--brand-dark)}
button,input,textarea,select{font:inherit}
.app-shell{min-height:100vh;display:grid;grid-template-columns:245px 1fr}
.sidebar{background:#1b1b1e;color:#fbfffe;border-right:4px solid var(--brand);padding:24px 14px;display:flex;flex-direction:column;gap:4px}
.brand{font-family:'Rokkitt',Georgia,serif;font-size:28px;font-weight:900;letter-spacing:1.6px;color:white;margin:0 10px 4px}
.brand::after{content:'';display:block;width:57px;height:4px;background:var(--brand);margin-top:8px;border-radius:5px}
.brand-sub{display:block;color:#d5c7c3;letter-spacing:.6px;margin:0 10px 25px;font-size:12px}
.nav-link{display:block;color:#e8e1df;text-decoration:none;font-weight:600;padding:12px 14px;border-radius:9px;margin:3px 0}
.nav-link:hover,.nav-link.active{background:var(--brand);color:#fff}
.main-area{min-width:0}
.topbar{background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 2px 14px #1b1b1e06;padding:16px 30px;display:flex;justify-content:space-between;align-items:center}
.topbar strong{font-family:'Rokkitt',Georgia,serif;font-size:23px;font-weight:800}
.topbar span{color:var(--muted);font-size:13px}
.content{max-width:1250px;margin:auto;padding:28px 30px 70px}
.page-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:22px}
.page-head h1{font-family:'Rokkitt',Georgia,serif;font-size:36px;font-weight:800;margin:0}
.panel{background:var(--paper);border:1px solid var(--line);border-radius:13px;padding:22px;margin-bottom:18px;box-shadow:0 3px 18px #1b1b1e08}
.panel h2,.panel h3{font-family:'Rokkitt',Georgia,serif;margin-top:0}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.grid.two{grid-template-columns:repeat(2,1fr)}
.stat{font-family:'Rokkitt',Georgia,serif;font-size:39px;font-weight:750;color:var(--brand)}
.muted{color:var(--muted)}
.sub{font-size:13px;color:var(--muted)}
.row{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #edf1ed;padding:14px 2px}
.row:last-child{border:0}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.card{display:flex;flex-direction:column;gap:8px;background:white;padding:24px;border-radius:12px;text-decoration:none;color:inherit;border:1px solid var(--line)}
.card:hover{border-color:#c9b7b0}
.pill{font-size:12px;border-radius:50px;background:#f9e4e5;color:#9d303b;padding:5px 9px;font-weight:700;white-space:nowrap}
.pill.draft{background:#fff0d9;color:#845c16}
.pill.review{background:#eaf0ff;color:#375ca2}
.btn{display:inline-block;background:var(--brand);border:1px solid var(--brand);color:white;padding:10px 14px;border-radius:8px;text-decoration:none;font-weight:700}
.btn.alt{background:white;color:var(--brand-dark);border-color:#e6b4b8}
.notice{padding:12px 15px;border-radius:9px;background:#fff1f1;color:#91323b;border-left:4px solid var(--brand);margin-bottom:17px}
.notice.info{background:#f7f3f1;color:#504649;border-left-color:#b8a49a}
.field{display:flex;flex-direction:column;gap:7px;margin-bottom:15px}
.field label{font-size:13px;font-weight:700;color:#383437}
.field input,.field textarea,.field select,.search{width:100%;padding:11px;border:1px solid #d6cbc6;border-radius:8px;background:white}
.field textarea{min-height:120px}
.thumb{width:100%;aspect-ratio:4/3;background:linear-gradient(135deg,#f2d2d3,#d64550);border-radius:8px;display:grid;place-items:center;color:white;font-weight:700}
.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.tile{border:1px solid var(--line);border-radius:10px;padding:9px;background:white}
.tile p{margin:8px 2px 2px;font-size:13px}
@media(max-width:900px){
  .app-shell{grid-template-columns:75px 1fr}
  .sidebar{padding:15px 6px}
  .brand{font-size:13px;letter-spacing:0;margin:0 3px}
  .brand::after{width:28px;height:3px}
  .brand-sub{display:none}
  .nav-link{font-size:0;padding:14px 4px;text-align:center}
  .nav-link span{font-size:20px}
  .grid,.grid.two{grid-template-columns:1fr}
  .tiles{grid-template-columns:repeat(2,1fr)}
  .content{padding:20px 15px}
  .page-head h1{font-size:30px}
}


.login-shell{max-width:480px;margin:8vh auto;padding:20px}
.account-nav{display:flex;gap:15px;align-items:center;flex-wrap:wrap}
.role-choice{display:inline-block;margin:12px 20px 12px 0}
fieldset{border:1px solid var(--line);border-radius:8px;margin-bottom:18px}
table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line)}

.content-editor{min-height:220px}

.field-error{color:var(--brand-dark);font-size:13px}.inline-form{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:15px}.delete-form{border-top:1px solid var(--line);padding-top:18px;margin-top:22px;display:flex;flex-wrap:wrap;gap:15px;align-items:center}.plain-content{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6}.nav-row{display:grid;gap:8px;border-bottom:1px solid var(--line);padding:15px 0}dd{margin:5px 0 15px;overflow-wrap:anywhere}footer{border-top:1px solid var(--line);margin-top:30px;padding-top:20px}

/* Separate page overview and full-width composition workspace. */
.page-workspace{max-width:none;width:100%;padding-inline:clamp(16px,3vw,48px)}
.workspace-nav{display:flex;flex-wrap:wrap;gap:12px 24px;margin-bottom:20px}
.page-builder{margin-bottom:28px}.page-builder>.page-head{margin-top:24px}
.block-stack{display:flex;flex-direction:column;gap:14px}.block-card{margin:0}
.block-card .page-head{margin-bottom:8px}.block-card h3{margin:0;overflow-wrap:anywhere}
.block-number{display:inline-block;padding:5px 11px;border-radius:8px;background:var(--canvas);color:var(--brand-dark)}
.block-excerpt{margin:12px 0 20px;max-width:90ch}.block-hidden{border-style:dashed;background:var(--canvas)}
.block-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.block-actions form{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.block-actions select{padding:8px;border:1px solid var(--line);border-radius:6px}.block-delete summary{cursor:pointer;padding:10px;color:var(--brand-dark)}
.block-editor{margin-top:24px}.block-form,.metadata-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.block-form>input[type=hidden],.block-form>input[name^=_]{display:none}
.block-form>p,.block-form>fieldset,.block-form>button,.block-form-wide{grid-column:1/-1}
.block-form>label{display:flex;flex-direction:column;gap:8px}.block-form>label input,.block-form>label select{padding:10px;border:1px solid var(--line);border-radius:8px}
.block-form>button{justify-self:start}.metadata-section>summary{cursor:pointer;font-weight:700;font-size:18px}
.metadata-section[open]>summary{margin-bottom:20px}.metadata-section form{margin-top:16px;display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.page-properties [hidden]{display:none!important}.page-workspace :focus-visible{outline:3px solid var(--brand);outline-offset:3px}
@media(max-width:900px){.block-form,.metadata-fields{grid-template-columns:1fr}.page-workspace .page-head{align-items:flex-start;flex-wrap:wrap}.page-workspace .pill{white-space:normal}.block-actions{align-items:flex-start}.block-actions>a{width:100%;text-align:center}}
.block-form fieldset label{display:flex;flex-direction:column;gap:7px;margin-bottom:15px}.block-form fieldset input,.block-form fieldset textarea{width:100%;padding:11px;border:1px solid var(--line);border-radius:8px}.block-form .content-editor{min-height:300px}
.page-editor-shell .sidebar{position:sticky;top:0;align-self:start;height:100vh;overflow-y:auto}

/* Editorial workspace: prototype hierarchy, readable controls, no system-form wall. */
.page-editor-shell{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;background:#f3f5f4}
.page-editor-shell .page-head h1{font:700 28px/1.2 Inter,system-ui,sans-serif;overflow-wrap:anywhere}
.page-editor-shell h2,.page-editor-shell h3,.page-editor-shell .topbar strong{font-family:Inter,system-ui,sans-serif}
.editor-context{display:flex;flex-wrap:wrap;gap:12px 28px;color:var(--muted);margin:0 0 20px;font-size:13px}.editor-context strong{color:var(--ink);margin-right:7px}
.compact-properties{display:grid;grid-template-columns:2fr 1fr;gap:18px;margin-bottom:24px}.compact-properties>.notice{grid-column:1/-1}.compact-properties .panel{margin-bottom:0}.compact-properties .metadata-section[open]{grid-column:1/-1}
.picker-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.picker-card{display:flex;flex-direction:column;gap:10px;padding:20px;border:1px solid var(--line);border-radius:10px;color:var(--ink);text-decoration:none;background:#fff}.picker-card:hover,.picker-card:focus{border-color:var(--brand);box-shadow:0 3px 15px #0001}.picker-icon{font-size:28px;color:var(--brand-dark)}.picker-card .muted{font-size:14px;line-height:1.5}
.empty-builder{text-align:center;padding:50px 24px}.empty-builder>span{font-size:42px;color:var(--muted)}
.block-card-head{display:flex;align-items:flex-start;gap:14px}.block-card-copy{flex:1;min-width:0}.block-card-copy h3{font-size:18px;margin:6px 0}.block-excerpt{font-size:14px;color:var(--muted);margin:8px 0 16px}.block-card .block-actions{border-top:1px solid var(--line);padding-top:14px;margin-top:14px}
.drag-handle{font-size:26px;background:none;border:0;color:var(--muted);cursor:grab;padding:3px 6px}.dragging{opacity:.5}.block-thumbnail{max-width:160px;height:90px;object-fit:cover;border-radius:7px}.icon-button{padding:9px 12px}.btn:disabled{opacity:.4;cursor:not-allowed}.actions{display:flex;gap:8px;flex-wrap:wrap}.btn.danger{background:#fff4f4;color:#9c3030;border-color:#e4bcbc}
.editorial-block-form{max-width:100%;display:block}.editorial-block-form>.field{max-width:none;margin-bottom:24px}.editorial-block-form .field input,.editorial-block-form .field textarea,.editorial-block-form .field select{font-size:15px}.editorial-block-form .field label{font-size:14px}
.rich-toolbar{display:flex;gap:4px;flex-wrap:wrap;padding:8px;background:#f2f5f3;border:1px solid var(--line);border-bottom:0;border-radius:8px 8px 0 0}.rich-toolbar button{padding:8px 11px;border:1px solid transparent;background:#fff;border-radius:5px;cursor:pointer}.rich-toolbar button:hover{border-color:var(--brand)}.rich-editor{min-height:240px;padding:18px;border:1px solid var(--line);border-radius:0 0 8px 8px;background:white;line-height:1.7;overflow-wrap:anywhere}.rich-source[hidden],.rich-toolbar[hidden],.rich-editor[hidden]{display:none}
.media-field{border:1px solid var(--line);padding:18px;border-radius:10px}.media-selection{display:flex;align-items:center;gap:16px;min-height:70px;margin-bottom:10px}.media-selected-preview{width:150px;height:100px;object-fit:contain;border-radius:7px;background:#f2f5f3}.media-selection-label{color:var(--muted)}
.repeatable-item{border:1px solid var(--line);border-radius:10px;padding:20px;margin-bottom:18px}.repeatable-item h4{margin:0}.repeatable-item .page-head{margin-bottom:20px}.presentation-settings,.optional-link{border:1px solid var(--line);padding:16px;border-radius:8px;margin:20px 0}.presentation-settings summary,.optional-link summary{cursor:pointer;font-weight:650}.presentation-settings[open] summary,.optional-link[open] summary{margin-bottom:18px}.editor-savebar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}
#media-picker{width:min(920px,calc(100% - 30px));max-height:90vh;border:0;border-radius:14px;padding:26px;box-shadow:0 20px 90px #0005}#media-picker::backdrop{background:#16251d80}.media-library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:14px;margin:20px 0}.media-choice{display:flex;flex-direction:column;gap:10px;padding:10px;border:1px solid var(--line);border-radius:9px;background:white;cursor:pointer;text-align:left}.media-choice img{width:100%;height:130px;object-fit:cover;border-radius:6px}.media-choice:hover{border-color:var(--brand)}.upload-panel{border-top:1px solid var(--line);padding-top:18px}.upload-panel summary{cursor:pointer;font-weight:700}.upload-panel form{margin-top:20px}
@media(max-width:900px){.compact-properties{grid-template-columns:1fr}.block-card-head{flex-wrap:wrap}.editor-context{gap:10px}.repeatable-item .page-head{flex-wrap:wrap}.editor-savebar .btn{flex:1}.page-editor-shell .page-workspace{padding-inline:16px}}

@media(max-width:900px){
 .page-editor-shell .topbar{padding:14px 16px;flex-direction:column;align-items:flex-start;gap:12px}
 .page-editor-shell .account-nav{width:100%;gap:10px;min-width:0}
 .page-editor-shell .account-nav span{width:100%;overflow-wrap:anywhere}
 .page-editor-shell .media-selection{flex-wrap:wrap}
 .page-editor-shell .media-selection-label{overflow-wrap:anywhere;max-width:100%}
 .page-editor-shell .field input,.page-editor-shell .field select,.page-editor-shell .field textarea{min-width:0;max-width:100%}
}

.website-navigation [hidden]{display:none!important}.website-navigation .destination-value{overflow-wrap:anywhere}.website-navigation details{border:1px solid var(--line);border-radius:8px;padding:14px;margin-bottom:20px}.website-navigation details summary{cursor:pointer;font-weight:600}.website-navigation details[open] summary{margin-bottom:16px}

/* Revisioned page layout: generic unit grid, independent of block type and theme. */
.page-grid{display:grid;gap:1rem;min-width:0}.page-grid>[data-span]{min-width:0}
.page-grid[data-grid="1"]{grid-template-columns:repeat(1,minmax(0,1fr))}.page-grid>[data-span="1"]{grid-column:span 1}
.page-grid[data-grid="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}.page-grid>[data-span="2"]{grid-column:span 2}
.page-grid[data-grid="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}.page-grid>[data-span="3"]{grid-column:span 3}
.page-grid[data-grid="4"]{grid-template-columns:repeat(4,minmax(0,1fr))}.page-grid>[data-span="4"]{grid-column:span 4}
.page-grid[data-grid="5"]{grid-template-columns:repeat(5,minmax(0,1fr))}.page-grid>[data-span="5"]{grid-column:span 5}
.page-grid[data-grid="6"]{grid-template-columns:repeat(6,minmax(0,1fr))}.page-grid>[data-span="6"]{grid-column:span 6}
.page-grid[data-grid="7"]{grid-template-columns:repeat(7,minmax(0,1fr))}.page-grid>[data-span="7"]{grid-column:span 7}
.page-grid[data-grid="8"]{grid-template-columns:repeat(8,minmax(0,1fr))}.page-grid>[data-span="8"]{grid-column:span 8}
.page-grid[data-grid="9"]{grid-template-columns:repeat(9,minmax(0,1fr))}.page-grid>[data-span="9"]{grid-column:span 9}
.page-grid[data-grid="10"]{grid-template-columns:repeat(10,minmax(0,1fr))}.page-grid>[data-span="10"]{grid-column:span 10}
.page-grid[data-grid="11"]{grid-template-columns:repeat(11,minmax(0,1fr))}.page-grid>[data-span="11"]{grid-column:span 11}
.page-grid[data-grid="12"]{grid-template-columns:repeat(12,minmax(0,1fr))}.page-grid>[data-span="12"]{grid-column:span 12}
.page-grid[data-grid="13"]{grid-template-columns:repeat(13,minmax(0,1fr))}.page-grid>[data-span="13"]{grid-column:span 13}
.page-grid[data-grid="14"]{grid-template-columns:repeat(14,minmax(0,1fr))}.page-grid>[data-span="14"]{grid-column:span 14}
.page-grid[data-grid="15"]{grid-template-columns:repeat(15,minmax(0,1fr))}.page-grid>[data-span="15"]{grid-column:span 15}
.page-grid[data-grid="16"]{grid-template-columns:repeat(16,minmax(0,1fr))}.page-grid>[data-span="16"]{grid-column:span 16}
.page-grid[data-grid="17"]{grid-template-columns:repeat(17,minmax(0,1fr))}.page-grid>[data-span="17"]{grid-column:span 17}
.page-grid[data-grid="18"]{grid-template-columns:repeat(18,minmax(0,1fr))}.page-grid>[data-span="18"]{grid-column:span 18}
.page-grid[data-grid="19"]{grid-template-columns:repeat(19,minmax(0,1fr))}.page-grid>[data-span="19"]{grid-column:span 19}
.page-grid[data-grid="20"]{grid-template-columns:repeat(20,minmax(0,1fr))}.page-grid>[data-span="20"]{grid-column:span 20}
.page-grid[data-grid="21"]{grid-template-columns:repeat(21,minmax(0,1fr))}.page-grid>[data-span="21"]{grid-column:span 21}
.page-grid[data-grid="22"]{grid-template-columns:repeat(22,minmax(0,1fr))}.page-grid>[data-span="22"]{grid-column:span 22}
.page-grid[data-grid="23"]{grid-template-columns:repeat(23,minmax(0,1fr))}.page-grid>[data-span="23"]{grid-column:span 23}
.page-grid[data-grid="24"]{grid-template-columns:repeat(24,minmax(0,1fr))}.page-grid>[data-span="24"]{grid-column:span 24}

.layout-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:1rem}.layout-choice{border:1px solid #cbd5e1;border-radius:.6rem;padding:1rem}.choice-diagram{margin-bottom:1rem;gap:.3rem}.choice-diagram span{background:#dce8f5;text-align:center;padding:1rem .15rem;border-radius:.25rem}.layout-section{border:2px solid #7396bd;background:#f4f8fc;padding:1.2rem}.layout-section>.page-head{margin-bottom:1rem}.builder-column{border:1px dashed #93aac1;border-radius:.5rem;background:white;padding:.8rem;min-width:0}.builder-column>header{display:flex;justify-content:space-between;gap:.5rem;margin-bottom:.8rem}.builder-column .block-card{margin:0 0 1rem;padding:.8rem}.builder-column .block-card-head{flex-wrap:wrap}.builder-column .block-actions{gap:.4rem}.builder-column .block-actions .btn{font-size:.8rem;padding:.4rem .6rem}.builder-column .block-excerpt{overflow-wrap:anywhere}.full-width-block{width:100%}.page-layout .layout-column{min-width:0;overflow-wrap:anywhere}.preview-section{margin:1.5rem 0}.preview-layout .layout-column{border:1px dashed #a1b5cd;padding:1rem;background:#f6f9fc}.preview-block{margin:0 0 1rem;overflow-wrap:anywhere}.preview-block img{max-width:100%;height:auto}.preview-layout .layout-full{width:100%;margin-block:1.5rem}

@media(max-width:48rem){.page-layout .page-grid[data-grid],.builder-grid.page-grid[data-grid]{grid-template-columns:minmax(0,1fr)}.page-layout .page-grid>[data-span],.builder-grid.page-grid>[data-span]{grid-column:1/-1}}

/* Long editorial titles must wrap in the standalone page layout preview too. */
.page-layout-preview{overflow-wrap:anywhere}

/* Editorial workspace: content first, administration on a separate screen. */
.editor-heading {align-items:center;margin:1.25rem 0}.editor-heading h1{margin:.25rem 0 .75rem;overflow-wrap:anywhere}
.eyebrow{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted,#64748b);margin:0}
.editorial-title{padding:1.2rem 1.5rem}.editorial-title #title{font-size:1.15rem;font-weight:600}
.editorial-title .metadata-section{margin:.75rem 0}.editor-savebar{display:flex;align-items:center;gap:1rem;margin-top:1rem;flex-wrap:wrap}
.page-builder{margin-top:2rem}.page-builder>.page-head{align-items:flex-start}.page-builder>.page-head>div:first-child{max-width:42rem}
.page-builder .block-card{border-radius:14px}.layout-section{border:2px solid #9eafc3;background:#f4f7fb}
.builder-column{background:white;border:1px dashed #b6c4d5;border-radius:12px}.builder-column>header{padding:.5rem 0 .9rem;border-bottom:1px solid #e2e8f0;margin-bottom:1rem}
.layout-choice{padding:1rem;text-align:left}.layout-choice h3{font-size:1rem;margin:.8rem 0 .4rem}.layout-choice .choice-diagram span{min-height:48px}
.layout-choice .btn{white-space:normal}.block-actions .icon-button{min-width:auto;width:auto}.block-actions form{flex-wrap:wrap}
.insertion-context{padding:.65rem .85rem;background:#eef4ff;border-radius:8px;font-weight:500}.editorial-publication{margin-top:2rem}
.block-picker,.block-editor,.section-picker,#page-builder{scroll-margin-top:1rem}.block-delete p{max-width:30rem}
@media(max-width:700px){.editor-heading{align-items:flex-start}.editorial-title{padding:1rem}.page-builder .page-head{flex-wrap:wrap}.block-actions{gap:.6rem}.builder-column{min-width:0}}

.compact-properties>.editorial-title{grid-column:1/-1}
