/* B6-04 CMS only. Modern padded, responsive, no shared global override. */
.cms-admin,.cms-public-main{--cms-ink:#173549;--cms-muted:#6e8494;--cms-line:#e1eaf0;--cms-accent:#087d70;max-width:1190px;margin:auto;color:var(--cms-ink)}
.cms-admin *,.cms-public-main *{box-sizing:border-box}
.cms-kicker{color:#0f876f;font-size:10px;font-weight:900;letter-spacing:.12em;line-height:1.6}
.cms-topline{display:flex;align-items:center;justify-content:space-between;gap:12px}
.cms-back,.cms-link{color:#107c70;text-decoration:none;font-size:12px;font-weight:800}
.cms-back{display:inline-flex;padding:6px 0;margin-bottom:17px}
.cms-page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:7px 0 25px}
.cms-admin .cms-page-head h1{font-size:clamp(28px,3.8vw,43px);margin:4px 0 7px;color:#163748;letter-spacing:-.035em}
.cms-page-head p{font-size:13px;line-height:1.7;color:var(--cms-muted);margin:0;max-width:680px}
.cms-btn{border:0;background:#087d70;color:#fff;display:inline-flex;align-items:center;justify-content:center;border-radius:11px;padding:13px 19px;min-height:43px;gap:6px;white-space:nowrap;text-decoration:none;font-size:12px;font-weight:850;cursor:pointer}
.cms-btn:hover{background:#056455;color:#fff}.cms-outline{border:1px solid #bcded7;background:#fff;color:#117c6d;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;min-height:39px;padding:10px 15px;border-radius:10px;font-size:12px;font-weight:850;white-space:nowrap}
.cms-outline:hover{background:#effaf6}
.cms-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:22px}
.cms-stats>div{border-radius:15px;background:#fff;border:1px solid var(--cms-line);padding:19px 22px;min-width:0}
.cms-stats small{color:#76909b;font-size:10px;font-weight:850;letter-spacing:.08em;display:block}
.cms-stats strong{color:#173549;font-size:28px;display:block;margin-top:7px;letter-spacing:-.035em}
.cms-panel{background:#fff;border:1px solid var(--cms-line);border-radius:18px;padding:25px 27px;min-width:0;box-shadow:0 7px 28px rgba(17,53,73,.025)}
.cms-panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:23px;min-width:0}
.cms-panel-head h2{font-size:20px;color:#183747;margin:4px 0 0;letter-spacing:-.025em}
.cms-muted{color:#8094a0;font-size:11px}
.cms-filter{display:flex;align-items:end;flex-wrap:wrap;gap:11px;padding:16px;background:#f6fafb;border:1px solid #e8eff2;border-radius:13px}
.cms-filter>label{flex:1 1 145px;min-width:0}
.cms-filter>label:first-child{flex:2 1 220px}
.cms-filter label>span,.cms-fields label>span{display:block;color:#547081;font-size:11px;font-weight:850;margin:0 0 8px}
.cms-fields label>span b{color:#0c9176}
.cms-filter input,.cms-filter select,.cms-fields input,.cms-fields select,.cms-fields textarea{font:inherit;width:100%;min-width:0;box-sizing:border-box;min-height:44px;border:1px solid #d4e2e8;background:#fff;border-radius:10px;padding:11px 13px;font-size:13px;color:#203e51;outline:none;line-height:1.45}
.cms-fields textarea{resize:vertical;min-height:93px}
.cms-fields textarea.cms-body-input{min-height:320px;line-height:1.75}
.cms-filter input:focus,.cms-filter select:focus,.cms-fields input:focus,.cms-fields select:focus,.cms-fields textarea:focus{border-color:#0a987e;box-shadow:0 0 0 3px rgba(9,151,126,.10)}
.cms-fields label>small{display:block;color:#8196a2;font-size:11px;line-height:1.6;margin-top:7px}
.cms-btn--filter{flex:0 0 auto}
.cms-entry-list{margin-top:17px}
.cms-entry{display:flex;align-items:center;gap:14px;min-width:0;padding:18px 2px;border-bottom:1px solid #edf1f3}
.cms-entry:last-child{border-bottom:0}
.cms-entry-icon{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border-radius:13px;color:#138875;background:#e8f8f1;font-size:19px;font-weight:850}
.cms-entry-info{min-width:0;flex:1}
.cms-entry-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;color:#7e939d;text-transform:uppercase;font-size:9px;font-weight:900;letter-spacing:.08em}
.cms-chip{display:inline-flex;padding:5px 8px;border-radius:7px;background:#edf3f5;color:#627d87;font-size:9px;font-weight:900;letter-spacing:.06em}
.cms-chip--published{color:#087a60;background:#e4f7ee}
.cms-chip--draft{color:#946e28;background:#fff4de}
.cms-chip--archived{color:#697e89;background:#eaf0f4}
.cms-entry h3{margin:8px 0 4px;font-size:14px;color:#17364a;overflow-wrap:anywhere}
.cms-entry h3 a{color:inherit;text-decoration:none}
.cms-entry h3 a:hover{color:#0b816d}
.cms-entry p{margin:0 0 4px;color:#6d8490;font-size:12px;line-height:1.65}
.cms-entry small{font-size:10px;color:#96a7ad;line-height:1.5}
.cms-paginate{margin-top:22px}
.cms-empty{text-align:center;padding:47px 20px;background:#f8fbfc;border-radius:12px}
.cms-empty>span{color:#3ca58b;font-size:33px}
.cms-empty h3{margin:10px 0;font-size:19px}
.cms-empty p{font-size:13px;color:#8196a0;margin:0 0 20px}
.cms-note{border:1px solid #cce8dd;background:#f1fbf5;padding:17px 19px;border-radius:13px;color:#527b70;font-size:12px;line-height:1.75;margin:18px 0}
.cms-edit-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.8fr);gap:20px;align-items:start}
.cms-edit-main,.cms-edit-side{display:grid;gap:19px;min-width:0;align-content:start}
.cms-fields{display:grid;gap:20px}
.cms-field-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px;min-width:0}
.cms-form-actions{display:flex;flex-wrap:wrap;gap:10px;border-top:1px solid #e9f0f2;padding-top:20px;margin-top:22px}
.cms-form-actions .cms-btn{flex:1}
.cms-editor-meta{border-top:1px solid #e9f0f2;margin-top:18px;padding-top:8px}
.cms-editor-meta p{color:#8aa0aa;font-size:11px}
.cms-public{background:#f7fafb;color:#18394d}
.cms-public-main{max-width:1080px;width:calc(100% - 40px);margin:50px auto 90px;min-height:40vh}
.cms-public-hero{background:linear-gradient(125deg,#fff,#eafbf3);border:1px solid #ddede6;border-radius:21px;padding:35px 38px}
.cms-public-hero h1{font-size:clamp(29px,5vw,46px);margin:8px 0;color:#16374b;letter-spacing:-.04em}
.cms-public-hero p{color:#77909a;font-size:14px;line-height:1.65;margin:0}
.cms-public-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:23px 0}
.cms-public-tabs a{border:1px solid #e0ebed;background:#fff;color:#587781;border-radius:10px;padding:10px 13px;font-size:11px;text-decoration:none;font-weight:800}
.cms-public-tabs a.active,.cms-public-tabs a:hover{border-color:#a8dcc8;background:#eaf9f0;color:#087562}
.cms-public-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.cms-public-card{background:#fff;border:1px solid #e1ebef;border-radius:17px;overflow:hidden;min-width:0}
.cms-public-card img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.cms-public-card-body{padding:23px}
.cms-public-card h2{font-size:19px;line-height:1.35;letter-spacing:-.02em;margin:8px 0 10px}
.cms-public-card h2 a{color:#1b3b4c;text-decoration:none;overflow-wrap:anywhere}
.cms-public-card p{font-size:12px;color:#728894;line-height:1.75}
.cms-public-read{color:#0d806a;font-size:12px;font-weight:850;text-decoration:none}
.cms-public-empty{padding:45px;border:1px dashed #cde4da;border-radius:15px;text-align:center;color:#6c8893;background:#fff}
.cms-public-article{max-width:900px}
.cms-public-page{background:#fff;border:1px solid #e2edf0;border-radius:19px;padding:40px 45px;margin:15px 0 25px}
.cms-public-page h1{font-size:clamp(28px,4vw,43px);letter-spacing:-.035em;line-height:1.2;color:#193c4d;margin:12px 0}
.cms-public-lead{color:#708896;font-size:16px;line-height:1.8}
.cms-public-cover{display:block;width:100%;border-radius:13px;max-height:400px;object-fit:cover;margin:23px 0}
.cms-public-text{font-size:14px;color:#335467;line-height:2;overflow-wrap:anywhere;margin:24px 0;white-space:normal}
.cms-public-action{margin-top:10px}
@media(max-width:1050px){.cms-edit-layout{grid-template-columns:minmax(0,1fr)}.cms-edit-side{grid-row:1}.cms-public-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.cms-page-head{align-items:stretch;flex-direction:column}.cms-page-head .cms-btn{align-self:flex-start}.cms-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cms-stats>div{padding:15px 17px}.cms-panel{padding:19px 17px;border-radius:15px}.cms-filter{padding:12px;gap:12px}.cms-filter>label,.cms-filter>label:first-child{flex-basis:100%}.cms-btn--filter{width:100%}.cms-entry{align-items:flex-start;gap:10px}.cms-entry-icon{width:34px;height:34px;flex-basis:34px}.cms-entry>.cms-outline{display:none}.cms-field-pair{grid-template-columns:1fr}.cms-public-main{width:calc(100% - 32px);margin:27px auto 65px}.cms-public-hero{padding:27px 22px}.cms-public-grid{grid-template-columns:1fr}.cms-public-page{padding:26px 20px}.cms-public-tabs{gap:6px}.cms-public-tabs a{padding:9px 10px}}

.cms-home-feed{margin:35px auto 85px;padding-block:18px}
.cms-home-feed h2{font-size:clamp(23px,3vw,35px);margin:12px 0 21px;letter-spacing:-.03em;color:#173c4c}
.cms-home-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.cms-home-item{display:grid;gap:9px;min-width:0;padding:22px;border:1px solid #daeae7;background:#fff;border-radius:15px;text-decoration:none;color:#173748}
.cms-home-item:hover{border-color:#84cbb5;background:#f3fbf6}
.cms-home-item--banner{background:#e8f9f1}
.cms-home-item span{font-size:9px;letter-spacing:.11em;font-weight:900;color:#0b826b}
.cms-home-item strong{font-size:16px;line-height:1.4;overflow-wrap:anywhere}
.cms-home-item small{font-size:12px;color:#748b94;line-height:1.7}
.cms-home-item b{font-size:12px;color:#077968}
.cms-home-more{display:inline-block;margin-top:19px;font-size:12px;font-weight:850;color:#0b846e;text-decoration:none}
@media(max-width:900px){.cms-home-items{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.cms-home-items{grid-template-columns:1fr}.cms-home-feed{margin:18px auto 55px}}

/* B6-04B first-party upload and crop-safe responsive cover preview. */
.cms-upload{min-width:0;padding:17px;background:#f4faf8;border:1px dashed #afd5c8;border-radius:15px}
.cms-upload>label>span{display:block;color:#194e44;font-size:12px;font-weight:850;margin-bottom:5px}
.cms-upload>label>small,.cms-upload>small{display:block;color:#708d84;font-size:11px;line-height:1.65;margin:7px 0}
.cms-upload-preview{display:grid;place-items:center;min-width:0;min-height:150px;border:1px solid #d8e9e3;border-radius:12px;background:#fff;overflow:hidden;margin:12px 0}
.cms-upload-preview img{display:block;max-width:100%;width:100%;height:auto;max-height:300px;object-fit:contain;background:#f9fcfa}
.cms-cover-empty{display:grid;place-items:center;color:#7ca99b;font-size:33px;gap:4px;text-align:center;padding:30px 12px}
.cms-cover-empty span{font-size:12px;color:#87a197}
.cms-fields .cms-upload input[type=file]{min-height:0;display:block;padding:12px;background:white;cursor:pointer;border:1px solid #c9e5da}
.cms-remove-cover{display:flex;align-items:center;gap:9px;color:#8d5a40;font-size:12px;font-weight:750;cursor:pointer;margin-top:14px}
.cms-fields .cms-remove-cover input[type=checkbox]{width:16px;min-height:16px;flex:0 0 16px;accent-color:#0b836f;margin:0}
.cms-home-cover{width:100%;height:auto;max-height:165px;aspect-ratio:16/9;object-fit:cover;border-radius:10px;display:block;margin-bottom:6px}
.cms-entry-thumb{flex:0 0 54px;width:54px;height:54px;object-fit:cover;border-radius:12px;border:1px solid #d8e6e0;background:#f1f9f5}
@media(max-width:680px){.cms-entry-thumb{flex-basis:40px;width:40px;height:40px;border-radius:9px}}
