/* Da Esta — Corpo C1-A. Estilos isolados pelo prefixo c1. */
.c1-app {
  --c1-paper: #f5f4f0;
  --c1-card: #fffefd;
  --c1-ink: #202522;
  --c1-muted: #667069;
  --c1-green: #315f4d;
  --c1-green-pale: #e2ebe3;
  --c1-line: #dfe4dd;
  color: var(--c1-ink);
  background: var(--c1-paper);
  min-height: 100%;
  font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size: 15px;
  line-height: 1.58;
  -webkit-font-smoothing: antialiased;
}
.c1-app * { box-sizing: border-box; }
.c1-app button, .c1-app input, .c1-app select, .c1-app textarea { font: inherit; }
.c1-app button { cursor: pointer; }
.c1-app button:focus-visible, .c1-app input:focus-visible, .c1-app select:focus-visible, .c1-app textarea:focus-visible {
  outline: 3px solid #8eb6a0;
  outline-offset: 3px;
}
.c1-app .c1-icon { width: 22px; height: 22px; flex: none; }
.c1-app .c1-topline {
  max-width: 1100px;
  margin: 0 auto;
  padding: 23px 32px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}
.c1-app .c1-back {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: #334c3e;
  border: none;
  background: transparent;
  padding: 7px 2px;
  font-weight: 580;
  border-radius: 6px;
}
.c1-app .c1-back .c1-icon { width: 18px; height: 18px; }
.c1-app .c1-back:hover { color: #245c3e; }
.c1-app .c1-preview-title { cursor: default; }
.c1-app .c1-preview-pill {
  color: #64756b;
  border: 1px solid #d7e0d7;
  border-radius: 999px;
  background: #edf0e9;
  font-size: 11px;
  padding: 4px 10px;
  letter-spacing: .035em;
}
.c1-app .c1-content { max-width: 1100px; margin: 0 auto; padding: 27px 32px 65px; }
.c1-app .c1-brand { font-weight: 800; font-size: 12px; letter-spacing: .34em; margin-bottom: 27px; color: #1b3227; }
.c1-app .c1-eyebrow { margin: 0 0 9px; color: #657b6b; letter-spacing: .16em; font-weight: 700; font-size: 11px; }
.c1-app .c1-hero h1, .c1-app .c1-section-heading h1, .c1-app .c1-locked h1 { font-size: clamp(3.3rem, 7vw, 5.4rem); line-height: 1.03; letter-spacing: -.06em; margin: 0 0 21px; font-weight: 720; }
.c1-app .c1-hero { max-width: 760px; margin: 0 0 33px; }
.c1-app .c1-hero > p:last-child, .c1-app .c1-section-heading > p:last-child { color: #536159; font-size: 17px; line-height: 1.72; max-width: 760px; margin: 0; }
.c1-app .c1-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.c1-app .c1-area {
  display: flex;
  width: 100%;
  text-align: left;
  align-items: center;
  gap: 18px;
  min-height: 123px;
  padding: 24px 25px;
  border-radius: 19px;
  border: 1px solid #e7eae4;
  background: var(--c1-card);
  color: var(--c1-ink);
  box-shadow: 0 2px 7px rgba(32, 48, 37, .035);
  transition: background-color .16s, border-color .16s, transform .16s;
}
.c1-app .c1-area:hover { background: #fdfefa; border-color: #cbdccd; transform: translateY(-1px); }
.c1-app .c1-area-icon { display: grid; place-items: center; flex: none; height: 49px; width: 49px; border-radius: 15px; background: #eaf2eb; color: #3c7156; }
.c1-app .c1-area:nth-child(2) .c1-area-icon { background: #f0eeeb; color: #7c6b57; }
.c1-app .c1-area:nth-child(3) .c1-area-icon { background: #eff1f5; color: #667990; }
.c1-app .c1-area:nth-child(4) .c1-area-icon { background: #eaf0ed; color: #437464; }
.c1-app .c1-area-body { display: flex; flex: 1; flex-direction: column; gap: 3px; min-width: 0; }
.c1-app .c1-area-body strong { font-size: 18px; font-weight: 680; letter-spacing: -.018em; }
.c1-app .c1-area-body small { font-size: 13px; color: #63726a; line-height: 1.4; }
.c1-app .c1-chevron { width: 16px!important; height: 16px!important; color: #95a79b; }
.c1-app .c1-home-note { max-width: 760px; padding: 26px 0 0; color: #3c4c43; }
.c1-app .c1-home-note strong { font-family: Georgia, 'Times New Roman', serif; color: #3f654e; font-size: 22px; font-weight: 700; }
.c1-app .c1-home-note p { margin: 6px 0 0; color: #637067; font-size: 14px; }
.c1-app .c1-section-heading { margin: 0 0 26px; }
.c1-app .c1-section-heading h1 { font-size: clamp(2.75rem, 6vw, 4.7rem); }
.c1-app .c1-section-heading > p:last-child { font-size: 15px; max-width: 810px; }
.c1-app .c1-panel { background: #fffefd; border: 1px solid var(--c1-line); border-radius: 21px; padding: clamp(19px, 4vw, 34px); box-shadow: 0 2px 9px rgba(34, 52, 38, .025); }
.c1-app .c1-panel-top { display: flex; gap: 10px; flex-wrap: wrap; justify-content: space-between; align-items: baseline; margin-bottom: 25px; }
.c1-app .c1-panel h2, .c1-app .c1-history h2 { font-family: Georgia, 'Times New Roman', serif; color: #365f49; font-size: 27px; line-height: 1.25; margin: 0; }
.c1-app .c1-muted, .c1-app .c1-hint { color: var(--c1-muted); font-size: 12px; }
.c1-app .c1-field { display: flex; flex-direction: column; gap: 8px; margin: 0 0 25px; }
.c1-app .c1-field label, .c1-app .c1-fieldset legend { font-size: 13px; font-weight: 680; color: #324f3d; }
.c1-app .c1-field label span { font-weight: 450; color: var(--c1-muted); }
.c1-app .c1-field input, .c1-app .c1-field select, .c1-app .c1-field textarea {
  width: 100%; min-height: 47px; border-radius: 11px;
  color: #2d3c34; padding: 11px 14px; background: #fff;
  border: 1px solid #cfdad1; outline: none;
}
.c1-app .c1-field textarea { line-height: 1.6; resize: vertical; }
.c1-app .c1-field input:focus, .c1-app .c1-field select:focus, .c1-app .c1-field textarea:focus { border-color: #91b39a; }
.c1-app .c1-fieldset { border: 0; padding: 0; margin: 0 0 24px; min-width: 0; }
.c1-app .c1-fieldset legend { padding: 0; }
.c1-app .c1-fieldset .c1-hint { margin: 4px 0 13px; }
.c1-app .c1-movement { display: flex; gap: 15px; align-items: flex-start; border: 1px solid #e5eae4; background: #fcfdfa; padding: 15px 18px; border-radius: 12px; margin-bottom: 9px; cursor: pointer; }
.c1-app .c1-movement:has(input:checked) { background: #eef5ef; border-color: #acc7b0; }
.c1-app .c1-movement input { margin-top: 5px; width: 17px; height: 17px; accent-color: #517a5e; flex: none; }
.c1-app .c1-movement span { display: flex; flex-direction: column; gap: 2px; }
.c1-app .c1-movement strong { font-size: 14px; font-weight: 620; }
.c1-app .c1-movement small { font-size: 12px; color: #6f7b72; }
.c1-app .c1-pain-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.c1-app .c1-pain-grid .c1-field { min-width: 0; }
.c1-app .c1-form-actions { display: flex; gap: 11px; flex-wrap: wrap; }
.c1-app .c1-primary, .c1-app .c1-secondary {
  border: 1px solid #b6d1bb !important; color: #295a3b !important; background: #e1ecdf !important; font-weight: 650;
  border-radius: 12px; padding: 11px 20px; min-height: 46px;
  transition: background-color .14s;
}
.c1-app .c1-primary:hover { background: #d1e4d0; }
.c1-app .c1-secondary { background: #FFFFFF !important; border-color: #d8e1d9 !important; color: #426e4f !important; }
.c1-app .c1-secondary:hover { background: #f1f6f1; }
.c1-app .c1-disclaimer { color: #66746b; font-size: 12px; margin: 17px 4px 0; }
.c1-app .c1-form-feedback { min-height: 1.5em; color: #805b4b; font-size: 13px; margin: 10px 0 0; }
.c1-app .c1-status { margin: 0 0 19px; color: #3f654d; font-size: 14px; padding: 11px 15px; background: #e8f0e7; border: 1px solid #d4e3d4; border-radius: 12px; }
.c1-app .c1-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 620px; gap: 13px; margin: 0 0 29px; }
.c1-app .c1-metrics > div { background: #eef2ec; border-radius: 16px; padding: 18px 22px; display: flex; flex-direction: column; }
.c1-app .c1-metrics strong { color: #3b634a; font-size: 33px; line-height: 1.2; font-weight: 660; }
.c1-app .c1-metrics span { color: #63716a; font-size: 12px; }
.c1-app .c1-history { background: #fff; border: 1px solid var(--c1-line); padding: 25px 26px; border-radius: 20px; }
.c1-app .c1-history-head { display: flex; gap: 15px; align-items: center; justify-content: space-between; margin-bottom: 20px; }
.c1-app .c1-history-item { padding: 19px 0; border-top: 1px solid #e8ede6; }
.c1-app .c1-history-item-top { display: flex; justify-content: space-between; gap: 15px; align-items: baseline; }
.c1-app .c1-history-item-top strong { color: #3b5244; font-size: 17px; }
.c1-app .c1-text-button { border: none; background: transparent; color: #3d7652; padding: 4px 6px; font-size: 13px; text-decoration: none; }
.c1-app .c1-text-button:hover { color: #245a3a; background: #f0f6f0; border-radius: 5px; }
.c1-app .c1-detail { margin: 9px 0 0; color: #5d7061; font-size: 13px; }
.c1-app .c1-history-notes { white-space: pre-wrap; overflow-wrap: anywhere; margin: 10px 0 0; color: #3b433e; font-size: 14px; }
.c1-app .c1-empty { color: var(--c1-muted); margin: 0; padding: 18px 0; }
.c1-app .c1-later { max-width: 690px; }
.c1-app .c1-later h2 { margin: 19px 0 10px; }
.c1-app .c1-later p { color: #68756c; margin: 0 0 21px; }
.c1-app .c1-locked h1 { font-size: 3rem; }
.c1-app .c1-locked p { margin-bottom: 0; color: #68746b; }
.c1-app .c1-footnote { margin-top: 36px; color: #748178; font-size: 11px; }
@media (max-width: 700px) {
  .c1-app .c1-topline { padding: 14px 18px 0; }
  .c1-app .c1-content { padding: 28px 18px 52px; }
  .c1-app .c1-brand { margin-bottom: 22px; }
  .c1-app .c1-grid { grid-template-columns: 1fr; gap: 11px; }
  .c1-app .c1-area { min-height: 100px; padding: 17px 18px; gap: 14px; border-radius: 15px; }
  .c1-app .c1-area-icon { height: 44px; width: 44px; }
  .c1-app .c1-hero { margin-bottom: 25px; }
  .c1-app .c1-hero > p:last-child { font-size: 15px; }
  .c1-app .c1-preview-pill { font-size: 10px; }
  .c1-app .c1-pain-grid { gap: 11px; }
  .c1-app .c1-history { padding: 21px 18px; }
  .c1-app .c1-history-head { align-items: flex-start; flex-direction: column; }
  .c1-app .c1-panel h2, .c1-app .c1-history h2 { font-size: 25px; }
}
@media (prefers-reduced-motion: reduce) {
  .c1-app *, .c1-app *::before, .c1-app *::after { transition: none!important; animation: none!important; }
}

/* C1-B: additive styles; approved C1-A rules above remain unchanged. */
.c1-app .c1-knowledge-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; margin-bottom: 16px; }
.c1-app .c1-knowledge-card { background: #fffefd; border: 1px solid #e3e7df; border-radius: 19px; padding: clamp(20px, 3vw, 29px); }
.c1-app .c1-knowledge-card .c1-area-icon { margin-bottom: 22px; }
.c1-app .c1-knowledge-card h2 { margin: 0 0 10px; color: #305d46; font: bold 29px/1.2 Georgia, 'Times New Roman', serif; letter-spacing: -.025em; }
.c1-app .c1-knowledge-card > p:not(.c1-eyebrow) { margin: 0 0 18px; color: #58675d; font-size: 14px; line-height: 1.7; }
.c1-app .c1-knowledge-foot { font-size: 11px; color: #607d69; letter-spacing: .025em; }
.c1-app .c1-learning-note { margin: 0 0 28px; padding: 12px 3px; max-width: 770px; }
.c1-app .c1-learning-note strong { font: bold 22px/1.4 Georgia, 'Times New Roman', serif; color: #366b50; }
.c1-app .c1-learning-note p { margin: 5px 0 0; color: #657369; font-size: 14px; line-height: 1.7; }
.c1-app .c1-library { margin: 15px 0 29px; }
.c1-app .c1-library-heading { margin: 0 0 20px; max-width: 770px; }
.c1-app .c1-library-heading h2 { margin: 0 0 10px; color: #365f49; font: bold 28px/1.25 Georgia, 'Times New Roman', serif; }
.c1-app .c1-library-heading > p:last-child { font-size: 13px; color: #637168; line-height: 1.65; margin: 0; }
.c1-app .c1-exercise-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.c1-app .c1-exercise-card { border: 1px solid #e2e8df; border-radius: 15px; background: #fffefd; padding: 22px; display: flex; flex-direction: column; align-items: flex-start; }
.c1-app .c1-exercise-card .c1-eyebrow { font-size: 10px; }
.c1-app .c1-exercise-card h3 { margin: 0 0 10px; font-size: 18px; font-weight: 680; color: #24392d; line-height: 1.35; }
.c1-app .c1-exercise-card > p:not(.c1-eyebrow) { margin: 0 0 15px; color: #596b60; font-size: 13px; line-height: 1.6; }
.c1-app .c1-exercise-source { font-size: 11px; color: #768479; margin-top: auto; margin-bottom: 14px; }
.c1-app .c1-source-link { display: inline-flex; align-items: center; gap: 7px; border-radius: 9px; border: 1px solid #d2dfd1; background: #edf3ec; padding: 9px 13px; text-decoration: none!important; color: #396949; font-size: 12px; font-weight: 650; }
.c1-app .c1-source-link:hover { color: #285a38; background: #e0ede1; }
.c1-app .c1-source-link:focus-visible { outline: 3px solid #8eb6a0; outline-offset: 3px; }
.c1-app .c1-registration-intro { font-size: 13px; margin: -9px 0 25px; line-height: 1.7; }
.c1-app .c1-history-new { display: flex; gap: 9px; flex-wrap: wrap; }
.c1-app .c1-history-new .c1-secondary { font-size: 12px; min-height: 38px; padding: 8px 13px; }
.c1-app .c1-filter-group { display: flex; gap: 7px; flex-wrap: wrap; padding: 0 0 17px; }
.c1-app .c1-filter-button { border: 1px solid #dde7de; border-radius: 999px; background: transparent; color: #5d7566; padding: 6px 12px; font-size: 12px; }
.c1-app .c1-filter-button:hover { background: #eff4ef; }
.c1-app .c1-filter-button[aria-pressed="true"] { background: #e5efe5; color: #2f6644; border-color: #b6d1ba; }
.c1-app .c1-history-when { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.c1-app .c1-history-tag { background: #eff4ef; color: #64806c; font-size: 10px; border-radius: 99px; padding: 3px 9px; }
@media (max-width: 700px) {
.c1-app .c1-knowledge-grid { grid-template-columns: 1fr; gap: 11px; }
.c1-app .c1-exercise-grid { grid-template-columns: 1fr; gap: 10px; }
.c1-app .c1-exercise-card { padding: 19px; }
.c1-app .c1-knowledge-card h2 { font-size: 26px; }
}

/* DA ESTA — CORPO UPGRADE VISUAL AZUL PROFUNDO & BRANCO PEROLADO */
:root[data-daesta-theme="blue"] .c1-app,
body:not([data-daesta-theme="white"]) .c1-app {
  --c1-paper: transparent;
  --c1-card: rgba(248, 235, 210, 0.05);
  --c1-ink: #f3eee5;
  --c1-muted: #c6d0e1;
  --c1-green: #afd4bd;
  --c1-green-pale: rgba(175, 212, 189, 0.15);
  --c1-line: rgba(255, 245, 225, 0.42);
  background: transparent !important;
  color: var(--c1-ink) !important;
}

:root[data-daesta-theme="blue"] .c1-app .c1-panel,
:root[data-daesta-theme="blue"] .c1-app .c1-knowledge-card,
:root[data-daesta-theme="blue"] .c1-app .c1-exercise-card,
:root[data-daesta-theme="blue"] .c1-app .c1-history,
body:not([data-daesta-theme="white"]) .c1-app .c1-panel,
body:not([data-daesta-theme="white"]) .c1-app .c1-knowledge-card,
body:not([data-daesta-theme="white"]) .c1-app .c1-exercise-card,
body:not([data-daesta-theme="white"]) .c1-app .c1-history {
  background: rgba(248, 235, 210, 0.05) !important;
  border: 1px solid rgba(255, 245, 225, 0.42) !important;
  -webkit-backdrop-filter: blur(18px) saturate(110%) !important;
  backdrop-filter: blur(18px) saturate(110%) !important;
  box-shadow: inset 0 1px 0 rgba(255, 253, 246, 0.13), 0 8px 32px rgba(0, 0, 0, 0.37) !important;
  color: #f3eee5 !important;
}

:root[data-daesta-theme="blue"] .c1-app .c1-field input,
:root[data-daesta-theme="blue"] .c1-app .c1-field select,
:root[data-daesta-theme="blue"] .c1-app .c1-field textarea,
body:not([data-daesta-theme="white"]) .c1-app .c1-field input,
body:not([data-daesta-theme="white"]) .c1-app .c1-field select,
body:not([data-daesta-theme="white"]) .c1-app .c1-field textarea {
  background: rgba(248, 235, 210, 0.05) !important;
  border: 1px solid rgba(179, 203, 232, 0.50) !important;
  color: #f3eee5 !important;
  -webkit-backdrop-filter: blur(14px) !important;
  backdrop-filter: blur(14px) !important;
}

:root[data-daesta-theme="blue"] .c1-app .c1-secondary,
body:not([data-daesta-theme="white"]) .c1-app .c1-secondary {
  background: rgba(248, 235, 210, 0.06) !important;
  border: 1px solid rgba(255, 245, 225, 0.35) !important;
  color: #f5efe4 !important;
}
