.resource-section-head { display:flex; align-items:end; gap:30px; margin-bottom:22px; }
.resource-section-head>div { flex:1; }
.resource-section-head .eyebrow { font-size:calc(10px * var(--type-scale, 1)); margin:0 0 10px; }
.resource-section-head h3 { margin:0; }
.resource-section-head>p { max-width:280px; font-size:calc(14px * var(--type-scale, 1)); line-height:1.75; color:#617459; margin:0; }
.detail-resources .resource-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.resource-link.activity-resource { display:grid; grid-template-columns:20px minmax(0,1fr) 15px; align-items:start; gap:12px; width:100%; min-height:184px; padding:22px 18px; text-align:left; border:1px solid #cad5bf; background:#fffdf7; }
.activity-resource:hover { border-color:#6d8661; box-shadow:0 4px 14px #2845300d; }
.activity-resource-number { font-size:calc(11px * var(--type-scale, 1)); color:#768969; padding-top:4px; }
.activity-resource-copy { display:flex; flex-direction:column; height:100%; gap:9px; }
.activity-resource-copy strong { font-weight:500; font-size:calc(17px * var(--type-scale, 1)); line-height:1.45; }
.activity-resource-copy>span { font-size:calc(13px * var(--type-scale, 1)); line-height:1.65; color:#63765c; }
.activity-resource-copy small { font-size:calc(11px * var(--type-scale, 1)); margin-top:auto; padding-top:8px; line-height:1.6; }
.activity-resource-arrow { font-size:calc(21px * var(--type-scale, 1)); line-height:1.3; }
.writing-meta { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin:18px 0 22px; }
.writing-meta span { padding:6px 10px; border:1px solid #d2dbc9; border-radius:20px; font-size:calc(12px * var(--type-scale, 1)); color:#5a7150; }
.tool-status { line-height:1.8; }
.reflection-journey { display:flex; flex-wrap:wrap; gap:12px 24px; padding:0 0 25px; border-bottom:1px solid #d7dfcd; margin-bottom:25px; }
.reflection-journey span { display:flex; gap:8px; align-items:center; font-size:calc(13px * var(--type-scale, 1)); color:#5b7152; }
.reflection-journey b { font-size:calc(10px * var(--type-scale, 1)); font-weight:500; border:1px solid #c5d1b9; border-radius:50%; width:26px; height:26px; display:grid; place-items:center; }
.reflection-form .reflection-fields { display:grid; grid-template-columns:1fr; gap:20px; }
.reflection-question { display:grid; grid-template-columns:28px minmax(0,1fr); gap:16px; padding:24px; border:1px solid #d5dec9; border-radius:8px; background:#fffdf7; }
.question-number { font-size:calc(12px * var(--type-scale, 1)); color:#728568; padding-top:3px; line-height:1.7; }
.reflection-question label { font-size:calc(18px * var(--type-scale, 1)); line-height:1.55; }
.reflection-question label>span { min-height:0; font-size:calc(14px * var(--type-scale, 1)); margin:1px 0 5px; line-height:1.7; }
.reflection-question textarea { background:#fafaf4; min-height:108px; font-size:calc(16px * var(--type-scale, 1)); }
.reflection-question textarea::placeholder { color:#76836b; }
.private-save { display:flex; align-items:center; justify-content:space-between; gap:25px; margin:23px 0; padding:23px 0; border-block:1px solid #d9e0cf; }
.private-save strong { font-size:calc(16px * var(--type-scale, 1)); font-weight:500; }
.private-save p { font-size:calc(13px * var(--type-scale, 1)); line-height:1.8; color:#617657; margin:6px 0 0; max-width:450px; }
.private-save .button { flex:none; font-size:calc(13px * var(--type-scale, 1)); white-space:nowrap; }
.sharing-disclosure { border:1px solid #cbd6bf; border-radius:8px; background:#eef1e5; }
.sharing-disclosure>summary { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:20px 24px; cursor:pointer; list-style:none; }
.sharing-disclosure>summary::-webkit-details-marker { display:none; }
.sharing-disclosure>summary strong { display:block; font-size:calc(19px * var(--type-scale, 1)); font-weight:500; line-height:1.5; }
.sharing-disclosure>summary small { display:block; font-size:calc(13px * var(--type-scale, 1)); color:#5d7253; margin-top:4px; line-height:1.7; }
.sharing-disclosure>summary>span:last-child { font-size:calc(27px * var(--type-scale, 1)); transition:transform .2s; }
.sharing-disclosure[open]>summary>span:last-child { transform:rotate(45deg); }
.sharing-content { padding:0 24px 25px; border-top:1px solid #d0dac2; }
.sharing-intro { font-size:calc(14px * var(--type-scale, 1)); line-height:1.85; color:#556b4b; margin:23px 0; }
.answer-selection { border:0; padding:0; margin:0; min-width:0; }
.answer-selection legend { padding:0; font-size:calc(15px * var(--type-scale, 1)); font-weight:500; margin-bottom:12px; }
.answer-selection label { display:flex; gap:10px; align-items:start; font-size:calc(14px * var(--type-scale, 1)); line-height:1.7; padding:8px 0; cursor:pointer; }
.answer-selection input,.share-consent input { width:20px; height:20px; accent-color:var(--ink); margin-top:2px; flex:none; }
.answer-selection p { font-size:calc(12px * var(--type-scale, 1)); line-height:1.8; color:#627658; margin:9px 0 0; }
.sharing-content .reflection-share-options { grid-template-columns:1fr; background:#f9faf1; padding:21px; gap:22px; }
.sharing-content .name-field { font-size:calc(15px * var(--type-scale, 1)); }
.sharing-content .name-field>span,.sharing-content .share-consent small { font-size:calc(13px * var(--type-scale, 1)); line-height:1.8; }
.sharing-content .name-field input { min-height:47px; font-size:calc(16px * var(--type-scale, 1)); }
.sharing-content .share-consent { font-size:calc(15px * var(--type-scale, 1)); }
.sharing-content .reflection-actions { margin-top:22px; }
.sharing-content .reflection-footnote { margin-top:16px; }
.wall-status-row>.plain-button { font-size:calc(13px * var(--type-scale, 1)); min-height:44px; }
.own-wall { display:grid; gap:20px; margin:22px 0; }
.own-wall .reflection-card { padding:25px; }
.own-count,.own-loading { font-size:calc(14px * var(--type-scale, 1)); color:#586e4f; margin:22px 0; }
.own-browser-note { padding:15px 18px; border-left:3px solid #a8bb92; background:#f0f2e7; color:#5b7053; font-size:calc(13px * var(--type-scale, 1)); line-height:1.8; }
.submission-status { font-size:calc(12px * var(--type-scale, 1)); line-height:1.7; background:#f4efde; border:1px solid #e3d9b5; border-radius:4px; color:#6e6138; padding:9px 12px; }
.status-approved { background:#eef3e8; border-color:#cddcbf; color:#48643d; }
.status-rejected { background:#f1ede6; border-color:#ded2c5; color:#6d5b4c; }
.footer-actions { display:flex; flex-direction:column; align-items:end; gap:7px; }
.review-link { color:#66785b; font-size:calc(11px * var(--type-scale, 1)); line-height:1.6; padding:7px 0; }
@media(max-width:850px) {
  .resource-section-head { display:block; }.resource-section-head>p { max-width:100%; margin-top:13px; }
  .detail-resources .resource-links { grid-template-columns:1fr; }.resource-link.activity-resource { min-height:0; padding:22px; grid-template-columns:25px minmax(0,1fr) 18px; }
  .activity-resource-copy small { padding-top:0; }
}
@media(max-width:600px) {
  .reflection-question { padding:19px 15px; gap:10px; grid-template-columns:22px minmax(0,1fr); }.reflection-question label { font-size:calc(17px * var(--type-scale, 1)); }
  .reflection-question label>span { font-size:calc(14px * var(--type-scale, 1)); }.private-save { align-items:start; flex-direction:column; gap:17px; }
  .sharing-disclosure>summary { padding:19px 17px; }.sharing-content { padding:0 17px 22px; }.sharing-content .reflection-share-options { padding:16px; }
  .reflection-journey { gap:9px 20px; }.reflection-journey span { font-size:calc(12px * var(--type-scale, 1)); }
  .footer-actions { align-items:start; }.wall-status-row { gap:12px; }
}
@media(prefers-reduced-motion:reduce) { .sharing-disclosure>summary>span:last-child { transition:none; } }
@media print { .private-save,.sharing-disclosure,.reflection-journey,.writing-meta { display:none; }.reflection-question { display:block; border:0; padding:0; }.question-number { display:none; } }
