/* ../../../node_modules/@fontsource/space-grotesk/latin-400.css */
@font-face {
  font-family: "Space Grotesk";
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url("/assets/space-grotesk-latin-400-normal-LF3ZIHND.woff2") format("woff2"), url("/assets/space-grotesk-latin-400-normal-OMAEQ2EW.woff") format("woff");
}

/* ../../../node_modules/@fontsource/space-grotesk/latin-500.css */
@font-face {
  font-family: "Space Grotesk";
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url("/assets/space-grotesk-latin-500-normal-GESQWJQV.woff2") format("woff2"), url("/assets/space-grotesk-latin-500-normal-HV4TE4RA.woff") format("woff");
}

/* ../../../node_modules/@fontsource/space-grotesk/latin-600.css */
@font-face {
  font-family: "Space Grotesk";
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url("/assets/space-grotesk-latin-600-normal-27GH5ZT3.woff2") format("woff2"), url("/assets/space-grotesk-latin-600-normal-WYFP6PJR.woff") format("woff");
}

/* ../../../node_modules/@fontsource/space-grotesk/latin-700.css */
@font-face {
  font-family: "Space Grotesk";
  font-style: normal;
  font-display: swap;
  font-weight: 700;
  src: url("/assets/space-grotesk-latin-700-normal-I3MXRIUZ.woff2") format("woff2"), url("/assets/space-grotesk-latin-700-normal-6Z7GHSI6.woff") format("woff");
}

/* components/wordmark/style.module.css */
.style_wordmark {
  display: flex;
  align-items: center;
  min-height: 44px;
  font-size: 24px;
  font-weight: 700;
  letter-spacing: -0.03em;
  text-decoration: none;
}

/* components/centered/style.module.css */
.style_header {
  display: flex;
  align-items: center;
  max-width: calc(var(--column) + 2 * var(--gutter));
  margin: 0 auto;
  padding: 12px var(--gutter);
}
.style_card {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding: 16px var(--gutter) 40px;
}
@media (min-width: 720px) {
  .style_card {
    max-width: 520px;
    margin: 40px auto 0;
    padding: 32px 40px 40px;
    background: var(--surface);
    border: var(--outline);
    border-radius: var(--radius-card);
    box-shadow: var(--shadow-dialog);
  }
}

/* components/button/style.module.css */
.style_button2 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 52px;
  padding: 0 24px;
  border: var(--outline);
  border-radius: var(--radius-control);
  font-size: 17px;
  font-weight: 700;
  cursor: pointer;
}
.style_primary {
  background: var(--accent);
  color: var(--accent-ink);
  box-shadow: var(--shadow-button);
}
.style_primary:active {
  box-shadow: none;
  transform: translate(3px, 3px);
}
.style_secondary {
  background: var(--surface);
  color: var(--ink);
}
.style_button2:disabled {
  background: var(--sunk);
  color: var(--ink-3);
  box-shadow: none;
  cursor: default;
}

/* components/page-title/style.module.css */
.style_title2 {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.style_heading {
  font-size: 30px;
}
.style_intro {
  color: var(--ink-2);
  line-height: 1.55;
}

/* components/resend-code/style.module.css */
.style_resend {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.style_wait {
  display: flex;
  align-items: center;
  min-height: 44px;
  color: var(--ink-3);
  font-variant-numeric: tabular-nums;
}
.style_button4 {
  min-height: 44px;
  padding: 0;
  border: 0;
  background: none;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}
.style_notice {
  font-size: 14px;
  color: var(--ink-2);
}

/* components/text-field/style.module.css */
.style_field {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.style_label4 {
  font-size: 14px;
  font-weight: 700;
}
.style_input {
  width: 100%;
  min-height: 52px;
  padding: 0 14px;
  border: var(--outline);
  border-radius: var(--radius-control);
  background: var(--surface);
  font-size: 17px;
}
.style_input[aria-invalid=true] {
  border-color: var(--error);
  box-shadow: 0 0 0 1px var(--error);
}
.style_hint {
  font-size: 13px;
  color: var(--ink-3);
}
.style_error {
  font-size: 14px;
  font-weight: 600;
  color: var(--error);
}

/* components/check-code/style.module.css */
.style_form {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.style_form input {
  font-size: 24px;
  font-weight: 700;
  letter-spacing: 0.3em;
}
.style_links {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.style_link4 {
  display: flex;
  align-items: center;
  min-height: 44px;
  font-weight: 700;
  text-underline-offset: 3px;
}

/* components/record-rows/style.module.css */
.style_rows {
  display: flex;
  flex-direction: column;
}
.style_row5 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 52px;
  padding: 8px 18px;
  border-top: 1.5px solid var(--ink);
}
.style_link {
  color: inherit;
  text-decoration: none;
}
.style_link:hover .style_label2 {
  text-decoration: underline;
}
.style_label2 {
  color: var(--ink-2);
}
.style_value {
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: 700;
  text-align: right;
}
.style_skipped {
  color: var(--ink-3);
}
.style_swatch {
  width: 14px;
  height: 22px;
  flex: 0 0 auto;
  border: 1.5px solid var(--ink);
  border-radius: 3px;
  background: var(--swatch);
}

/* components/step-actions/style.module.css */
.style_actions {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding-top: 8px;
}
.style_row {
  display: flex;
  gap: 10px;
}
.style_row > button:last-child {
  flex: 1 1 auto;
}
.style_back {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 52px;
  height: 52px;
  padding: 0;
  border: var(--outline);
  border-radius: var(--radius-control);
  background: var(--surface);
  color: var(--ink);
  cursor: pointer;
}
.style_arrow2 {
  width: 20px;
  height: 20px;
  background-color: currentColor;
  -webkit-mask: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23000" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"><path d="M15 18l-6-6 6-6"/></svg>%0A') no-repeat center / contain;
  mask: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23000" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"><path d="M15 18l-6-6 6-6"/></svg>%0A') no-repeat center / contain;
}
.style_skipRow {
  display: flex;
  justify-content: flex-end;
}
.style_skip {
  min-height: 44px;
  padding: 0 4px;
  border: 0;
  background: none;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}

/* components/check-step/style.module.css */
.style_form5 {
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.style_summary {
  background: var(--surface);
  border: var(--outline);
  border-radius: var(--radius-card);
  overflow: hidden;
}
.style_summary > div > :first-child {
  border-top: 0;
}

/* components/choice-list/style.module.css */
.style_group {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0;
  padding: 0;
  border: 0;
}
.style_legend {
  margin-bottom: 8px;
  padding: 0;
  font-size: 30px;
  font-weight: 700;
  line-height: 1.15;
}
.style_intro2 {
  margin-bottom: 8px;
  color: var(--ink-2);
}
.style_option {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 52px;
  padding: 0 16px;
  border: var(--outline);
  border-radius: var(--radius-control);
  background: var(--surface);
  font-weight: 600;
  cursor: pointer;
}
.style_option:has(:checked) {
  background: var(--accent-soft);
  box-shadow: var(--shadow-button);
}
.style_radio {
  width: 20px;
  height: 20px;
  margin: 0;
  accent-color: var(--ink);
}
.style_error2 {
  font-size: 14px;
  font-weight: 600;
  color: var(--error);
}

/* components/level-step/style.module.css */
.style_form2 {
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.style_form2 legend {
  font-size: 28px;
}

/* components/load-failed/style.module.css */
.style_alert {
  display: flex;
  gap: 12px;
  padding: 20px;
  border: var(--outline);
  border-radius: var(--radius-card);
  background: var(--error-soft);
  color: var(--ink);
}
.style_icon {
  flex: 0 0 auto;
  width: 22px;
  height: 22px;
  background-color: var(--error);
  -webkit-mask: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23000" stroke-width="2" stroke-linecap="round"><circle cx="12" cy="12" r="10"/><path d="M12 8v4M12 16h.01"/></svg>%0A') no-repeat center / contain;
  mask: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23000" stroke-width="2" stroke-linecap="round"><circle cx="12" cy="12" r="10"/><path d="M12 8v4M12 16h.01"/></svg>%0A') no-repeat center / contain;
}
.style_lines {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.style_text {
  margin: 0;
  font-size: 15px;
  line-height: 1.5;
}
.style_retry {
  align-self: flex-start;
  min-height: 44px;
  padding: 0 18px;
  border: 2px solid var(--error);
  border-radius: var(--radius-control);
  background: var(--surface);
  color: var(--error);
  font: inherit;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
}

/* components/medication-step/style.module.css */
.style_form6 {
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.style_list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.style_medication {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 14px;
  border: var(--outline);
  border-radius: var(--radius-control);
  background: var(--surface);
}
.style_removeError {
  font-size: 14px;
  font-weight: 600;
  color: var(--error);
}
.style_remove {
  align-self: flex-start;
  min-height: 44px;
  padding: 0;
  border: 0;
  background: none;
  font-size: 14px;
  font-weight: 700;
  color: var(--ink-2);
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}
.style_remove:disabled {
  color: var(--line);
  cursor: default;
}
.style_none {
  color: var(--ink-2);
}
.style_add {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 0;
  padding: 14px;
  border: 2px dashed var(--ink-3);
  border-radius: var(--radius-control);
}
.style_addTitle {
  padding: 0 6px;
  font-weight: 700;
}
.style_addHint {
  margin: 0;
  font-size: 14px;
  color: var(--ink-2);
}
.style_addFields {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  gap: 10px;
}

/* components/mood-option/style.module.css */
.style_option2 {
  display: flex;
  align-items: stretch;
  gap: 12px;
  padding: 6px 0;
}
.style_swatch2 {
  width: 14px;
  flex: 0 0 auto;
  border: 1.5px solid var(--ink);
  border-radius: 3px;
  background: var(--swatch);
}
.style_text2 {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.style_name {
  font-weight: 700;
}
.style_anchor {
  font-size: 13px;
  font-weight: 400;
  color: var(--ink-2);
}

/* components/mood-step/style.module.css */
.style_form3 {
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.style_form3 legend {
  font-size: 28px;
}

/* components/record-date/style.module.css */
.style_field2 {
  display: flex;
  align-items: center;
  gap: 8px;
}
.style_label5 {
  font-size: 14px;
  font-weight: 700;
}
.style_input2 {
  min-height: 44px;
  padding: 0 10px;
  border: var(--outline);
  border-radius: var(--radius-control);
  background: var(--surface);
  font-size: 14px;
  font-weight: 700;
}

/* components/sleep-step/style.module.css */
.style_form7 {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

/* components/step-progress/style.module.css */
.style_progress {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(0, 1fr);
  gap: 6px;
}
.style_segment {
  height: 10px;
  border: var(--outline);
  border-radius: 999px;
  background: var(--surface);
}
.style_done {
  background: var(--accent);
}

/* components/daily-record/style.module.css */
.style_record2 {
  display: flex;
  flex-direction: column;
  gap: 18px;
  max-width: 640px;
  margin: 0 auto;
}
.style_top {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.style_close2 {
  display: flex;
  align-items: center;
  min-height: 44px;
  font-weight: 700;
  text-underline-offset: 3px;
}
.style_counter {
  font-size: 14px;
  font-weight: 700;
}

/* components/date-nav/style.module.css */
.style_nav {
  display: flex;
  align-items: center;
  gap: 8px;
}
.style_title {
  font-size: 24px;
}
.style_title::first-letter {
  text-transform: uppercase;
}
.style_phone .style_title {
  flex: 1 1 auto;
  text-align: center;
}
@media (min-width: 720px) {
  .style_phone {
    display: none;
  }
}
@media (max-width: 719px) {
  .style_desktop {
    display: none;
  }
}
.style_arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 44px;
  height: 44px;
  padding: 0;
  border: var(--outline);
  border-radius: var(--radius-control);
  background: var(--surface);
  color: var(--ink);
  cursor: pointer;
}
.style_arrow:disabled {
  color: var(--line);
  border-color: var(--line);
  cursor: default;
}
.style_previous,
.style_next {
  width: 18px;
  height: 18px;
  background-color: currentColor;
}
.style_previous {
  -webkit-mask: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23000" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"><path d="M15 18l-6-6 6-6"/></svg>%0A') no-repeat center / contain;
  mask: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23000" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"><path d="M15 18l-6-6 6-6"/></svg>%0A') no-repeat center / contain;
}
.style_next {
  -webkit-mask: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23000" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"><path d="M9 6l6 6-6 6"/></svg>%0A') no-repeat center / contain;
  mask: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23000" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"><path d="M9 6l6 6-6 6"/></svg>%0A') no-repeat center / contain;
}

/* components/completeness-chip/style.module.css */
.style_chip {
  padding: 4px 10px;
  border: 1.5px solid var(--ink);
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}
.style_COMPLETE {
  background: var(--done);
}
.style_PARTIAL {
  background: var(--accent);
}
.style_NONE {
  background: var(--surface);
}

/* components/day-card/style.module.css */
.style_card3 {
  display: flex;
  flex-direction: column;
  background: var(--surface);
  border: var(--outline);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-card);
}
.style_header2 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 16px 18px;
}
.style_title3 {
  font-size: 18px;
}
.style_empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 32px 18px;
  border-top: 1.5px solid var(--ink);
  text-align: center;
}
.style_emptyTitle {
  font-size: 17px;
  font-weight: 700;
}
.style_emptyIntro {
  padding: 0 18px 18px;
  color: var(--ink-2);
}
.style_empty .style_emptyIntro {
  padding: 0;
}
.style_footer {
  padding: 14px 18px 18px;
  border-top: 1.5px solid var(--ink);
}
.style_record,
.style_edit {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  border: var(--outline);
  border-radius: var(--radius-control);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
}
.style_record {
  background: var(--accent);
  color: var(--accent-ink);
  box-shadow: var(--shadow-button);
}
.style_edit {
  background: var(--surface);
  color: var(--ink);
}

/* components/month-chart/style.module.css */
.style_chart {
  margin: 0;
  padding: 12px 0;
  background: var(--surface);
  border: var(--outline);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-card);
}
@media (max-width: 719px) {
  .style_chart {
    display: none;
  }
}
.style_scroll {
  overflow-x: auto;
  padding: 0 16px;
}
.style_table {
  border-collapse: collapse;
  font-size: 12px;
}
.style_caption {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}
.style_corner,
.style_label {
  position: sticky;
  left: 0;
  background: var(--surface);
}
.style_label {
  min-width: 150px;
  padding: 0 10px 0 0;
  text-align: left;
  font-weight: 500;
  color: var(--ink-2);
  white-space: nowrap;
}
.style_values .style_label {
  font-weight: 700;
  color: var(--ink);
}
.style_row2 {
  height: 30px;
  border-top: 1px dashed var(--line);
}
.style_normal,
.style_values:first-of-type,
.style_normal + .style_row2 {
  border-top: 1.5px solid var(--ink);
}
.style_values {
  border-top: 1.5px solid var(--ink);
}
.style_cell {
  width: 28px;
  min-width: 28px;
  border-left: 1px solid var(--line);
  text-align: center;
  font-weight: 600;
}
.style_selected {
  background: var(--accent-soft);
}
.style_future {
  color: var(--ink-3);
  opacity: 0.6;
}
.style_day {
  width: 100%;
  min-height: 28px;
  padding: 0;
  border: 0;
  background: none;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
}
.style_day:disabled {
  cursor: default;
}
.style_mark {
  display: inline-block;
  width: 18px;
  height: 18px;
  border: 1.5px solid var(--ink);
  border-radius: 4px;
  background: var(--swatch);
  vertical-align: middle;
}
.style_key {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin-right: 8px;
  border: 1.5px solid var(--ink);
  border-radius: 2px;
  background: var(--swatch);
}
.style_note {
  padding: 10px 16px 0;
  font-size: 13px;
  color: var(--ink-3);
}

/* components/week-strip/style.module.css */
.style_strip {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 5px;
}
@media (min-width: 720px) {
  .style_strip {
    display: none;
  }
}
.style_day2 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  min-height: 52px;
  padding: 6px 0;
  border: var(--outline);
  border-radius: var(--radius-control);
  color: var(--ink);
  cursor: pointer;
}
.style_COMPLETE2 {
  background: var(--done);
}
.style_PARTIAL2 {
  background: var(--accent);
}
.style_NONE2 {
  background: var(--surface);
}
.style_future2 {
  border-style: dashed;
  border-color: var(--ink-3);
  background: var(--surface);
  opacity: 0.6;
  cursor: default;
}
.style_selected2 {
  box-shadow: var(--shadow-button);
}
.style_letter {
  font-size: 11px;
  font-weight: 600;
}
.style_number {
  font-size: 15px;
  font-weight: 700;
}

/* components/diary/style.module.css */
.style_diary {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
@media (min-width: 720px) {
  .style_diary > :last-child {
    max-width: 520px;
  }
}

/* components/current-section/style.module.css */
.style_label3 {
  flex: 1 1 auto;
  min-width: 0;
  margin-left: 4px;
  padding-left: 12px;
  border-left: var(--outline);
  font-weight: 700;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media (min-width: 720px) {
  .style_label3 {
    display: none;
  }
}

/* components/sign-out/style.module.css */
.style_button3 {
  display: flex;
  align-items: center;
  min-height: 44px;
  padding: 0 12px;
  border: 0;
  background: none;
  font-size: 15px;
  font-weight: 700;
  color: var(--ink-2);
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}
.style_button3:disabled {
  color: var(--line);
  cursor: default;
}
.style_signOut {
  position: relative;
  display: flex;
}
.style_error3 {
  position: absolute;
  top: 100%;
  right: 0;
  z-index: 1;
  width: max-content;
  max-width: 280px;
  padding: 8px 10px;
  border: var(--outline);
  border-radius: var(--radius-control);
  background: var(--error-soft);
  font-size: 14px;
  font-weight: 600;
  color: var(--ink);
}

/* components/menu/style.module.css */
.style_menu {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 10px;
  background: var(--surface);
  border-bottom: var(--outline);
  border-radius: 0 0 var(--radius-card) var(--radius-card);
  box-shadow: 0 6px 0 var(--ink);
}
@media (min-width: 720px) {
  .style_menu {
    display: none;
  }
}
.style_links2 {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.style_footer2 {
  margin-top: 6px;
  padding-top: 6px;
  border-top: var(--outline);
}
.style_link2 {
  display: flex;
  align-items: center;
  min-height: 52px;
  padding: 0 16px;
  border: 2px solid transparent;
  border-radius: var(--radius-control);
  font-size: 20px;
  font-weight: 700;
  text-decoration: none;
}
.style_link2[aria-current=page] {
  background: var(--accent);
  color: var(--accent-ink);
  border-color: var(--ink);
}

/* components/menu-button/style.module.css */
.style_button {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 48px;
  height: 48px;
  padding: 0;
  border: var(--outline);
  border-radius: var(--radius-control);
  background: var(--accent);
  color: var(--accent-ink);
  box-shadow: var(--shadow-button);
  cursor: pointer;
}
.style_button[aria-expanded=true] {
  background: var(--ink);
  color: var(--bg);
  box-shadow: none;
}
@media (min-width: 720px) {
  .style_button {
    display: none;
  }
}
.style_menu2,
.style_close {
  width: 22px;
  height: 22px;
  background-color: currentColor;
}
.style_menu2 {
  -webkit-mask: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23000" stroke-width="2.6" stroke-linecap="round"><path d="M4 7h16M4 12h16M4 17h16"/></svg>%0A') no-repeat center / contain;
  mask: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23000" stroke-width="2.6" stroke-linecap="round"><path d="M4 7h16M4 12h16M4 17h16"/></svg>%0A') no-repeat center / contain;
}
.style_close {
  -webkit-mask: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23000" stroke-width="2.6" stroke-linecap="round"><path d="M6 6l12 12M18 6 6 18"/></svg>%0A') no-repeat center / contain;
  mask: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23000" stroke-width="2.6" stroke-linecap="round"><path d="M6 6l12 12M18 6 6 18"/></svg>%0A') no-repeat center / contain;
}

/* components/nav-links/style.module.css */
.style_bar {
  display: none;
}
@media (min-width: 720px) {
  .style_bar {
    display: flex;
    align-items: center;
    flex: 1 1 auto;
    margin-left: 24px;
  }
}
.style_links3 {
  display: flex;
  flex: 1 1 auto;
  gap: 6px;
}
.style_link3 {
  display: flex;
  align-items: center;
  min-height: 44px;
  padding: 0 12px;
  border: 2px solid transparent;
  border-radius: var(--radius-control);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
}
.style_link3[aria-current=page] {
  background: var(--accent);
  color: var(--accent-ink);
  border-color: var(--ink);
  box-shadow: 2px 2px 0 var(--ink);
}

/* components/top-bar/style.module.css */
.style_bar2 {
  position: sticky;
  top: 0;
  z-index: 5;
  background: var(--surface);
  border-bottom: var(--outline);
}
.style_bar2 * {
  scroll-margin-top: calc(-1 * (var(--bar-height) + 16px));
}
.style_inner {
  display: flex;
  align-items: center;
  gap: 8px;
  height: var(--bar-height);
  max-width: calc(var(--column) + 2 * var(--gutter));
  margin: 0 auto;
  padding: 0 12px 0 var(--gutter);
}
@media (min-width: 720px) {
  .style_inner {
    padding: 0 var(--gutter);
  }
}

/* components/frame/style.module.css */
.style_main {
  max-width: calc(var(--column) + 2 * var(--gutter));
  margin: 0 auto;
  padding: 24px var(--gutter) 48px;
}

/* components/birth-date-step/style.module.css */
.style_form8 {
  display: flex;
  flex-direction: column;
  gap: 22px;
}

/* components/fiscal-code-step/style.module.css */
.style_form4 {
  display: flex;
  flex-direction: column;
  gap: 22px;
}
.style_form4 input {
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

/* components/gender-step/style.module.css */
.style_form9 {
  display: flex;
  flex-direction: column;
  gap: 22px;
}

/* components/name-step/style.module.css */
.style_form10 {
  display: flex;
  flex-direction: column;
  gap: 22px;
}

/* components/onboarding/style.module.css */
.style_counter2 {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  font-size: 14px;
  font-weight: 700;
}

/* components/sign-in/style.module.css */
.style_form11 {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

/* components/test-check/style.module.css */
.style_check {
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-width: 720px;
  margin: 0 auto;
}
.style_back2 {
  align-self: flex-start;
  display: flex;
  align-items: center;
  min-height: 44px;
  font-weight: 700;
  text-underline-offset: 3px;
}
.style_heading2 {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.style_title4 {
  font-size: 28px;
}
.style_subtitle,
.style_kept {
  font-size: 15px;
  color: var(--ink-2);
}
.style_notice2 {
  padding: 14px 16px;
  border: var(--outline);
  border-radius: var(--radius-card);
  background: var(--private);
  color: var(--private-ink);
  line-height: 1.45;
}
.style_list2 {
  display: flex;
  flex-direction: column;
  background: var(--surface);
  border: var(--outline);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-card);
}
.style_row3 {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 14px 20px;
  border-top: 1.5px solid var(--ink);
  color: var(--ink);
  text-decoration: none;
}
.style_row3:first-child {
  border-top: 0;
}
.style_number2 {
  flex: 0 0 28px;
  font-size: 14px;
  font-weight: 600;
  color: var(--ink-3);
  font-variant-numeric: tabular-nums;
}
.style_item {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  font-size: 15px;
}
.style_answer {
  font-size: 14px;
  color: var(--ink-2);
}
.style_missing {
  font-size: 14px;
  font-weight: 700;
  color: var(--private-ink);
}
.style_edit2 {
  font-size: 14px;
  font-weight: 700;
}
.style_send {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 18px;
  border-radius: var(--radius-card);
  background: var(--sunk);
  line-height: 1.5;
}
.style_error4 {
  font-size: 14px;
  font-weight: 600;
  color: var(--error);
}

/* components/test-item/style.module.css */
.style_form12 {
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.style_card2 {
  display: flex;
  flex-direction: column;
  gap: 18px;
  padding: 24px;
  background: var(--surface);
  border: var(--outline);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-card);
}
.style_instructions {
  font-size: 14px;
  line-height: 1.5;
  color: var(--ink-2);
  white-space: pre-line;
}
.style_card2 legend {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.4;
}

/* components/test-attempt/style.module.css */
.style_attempt {
  display: flex;
  flex-direction: column;
  gap: 18px;
  max-width: 720px;
  margin: 0 auto;
}
.style_top2 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.style_exit {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 44px;
  color: var(--ink-2);
  font-weight: 600;
  text-decoration: none;
}
.style_arrow3 {
  width: 18px;
  height: 18px;
  background-color: currentColor;
  -webkit-mask: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23000" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"><path d="M15 18l-6-6 6-6"/></svg>%0A') no-repeat center / contain;
  mask: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23000" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"><path d="M15 18l-6-6 6-6"/></svg>%0A') no-repeat center / contain;
}
.style_saved {
  font-size: 13px;
  color: var(--ink-3);
}
.style_status {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.style_name2 {
  font-size: 15px;
  font-weight: 600;
  color: var(--ink-2);
}
.style_counter3 {
  display: flex;
  justify-content: space-between;
  font-size: 14px;
  color: var(--ink-2);
}
.style_bar3 {
  height: 10px;
  border: var(--outline);
  border-radius: 999px;
  background: var(--surface);
  overflow: hidden;
}
.style_fill {
  width: var(--progress);
  height: 100%;
  background: var(--accent);
}
.style_note2 {
  font-size: 13px;
  color: var(--ink-3);
  text-align: center;
}

/* components/assignment-card/style.module.css */
.style_card4 {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 20px;
  background: var(--surface);
  border: var(--outline);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-card);
}
.style_header3 {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}
.style_name3 {
  font-size: 18px;
  font-weight: 600;
}
.style_chip2 {
  padding: 4px 10px;
  border: 1.5px solid var(--ink);
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}
.style_new {
  background: var(--sunk);
  color: var(--ink-2);
}
.style_draft {
  background: var(--private);
  color: var(--private-ink);
}
.style_meta {
  font-size: 14px;
  color: var(--ink-2);
}
.style_instructions2 {
  padding: 12px 14px;
  border-radius: var(--radius-control);
  background: var(--sunk);
  font-size: 14px;
  line-height: 1.5;
}
.style_footer3 {
  display: flex;
  margin-top: auto;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.style_progress2 {
  font-size: 13px;
  color: var(--ink-3);
}
.style_error5 {
  font-size: 14px;
  font-weight: 600;
  color: var(--error);
}

/* components/tests/style.module.css */
.style_tests {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.style_title5 {
  font-size: 28px;
}
.style_group2 {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.style_heading3 {
  font-size: 17px;
}
.style_empty2 {
  color: var(--ink-2);
}
.style_grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 16px;
}
@media (min-width: 720px) {
  .style_grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.style_list3 {
  display: flex;
  flex-direction: column;
  background: var(--surface);
  border: var(--outline);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-card);
}
.style_row4 {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 20px;
  border-top: 1.5px solid var(--ink);
  color: var(--ink);
  text-decoration: none;
}
.style_row4:first-child {
  border-top: 0;
}
.style_what {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.style_name4 {
  font-size: 16px;
  font-weight: 600;
}
.style_when {
  font-size: 14px;
  color: var(--ink-2);
}
.style_chip3 {
  padding: 4px 10px;
  border: 1.5px solid var(--ink);
  border-radius: 999px;
  background: var(--accent-soft);
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}
.style_chevron {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  background-color: var(--ink-3);
  -webkit-mask: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23000" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 6l6 6-6 6"/></svg>%0A') no-repeat center / contain;
  mask: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23000" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 6l6 6-6 6"/></svg>%0A') no-repeat center / contain;
}

/* components/new-note/style.module.css */
.style_card5 {
  display: flex;
  flex-direction: column;
  background: var(--surface);
  border: var(--outline);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-card);
}
.style_head {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 18px 20px;
  border: 0;
  border-radius: var(--radius-card);
  background: none;
  color: var(--ink);
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.style_dot {
  flex: 0 0 auto;
  width: 10px;
  height: 10px;
  margin-top: 7px;
  border: 1.5px solid var(--ink);
  border-radius: 999px;
  background: var(--accent);
}
.style_lines2 {
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.style_title6 {
  font-size: 16px;
  font-weight: 600;
}
.style_session {
  font-size: 14px;
  color: var(--ink-2);
}
.style_body {
  padding: 16px 20px 20px;
  border-top: 1.5px solid var(--ink);
  line-height: 1.55;
  white-space: pre-line;
}

/* components/next-appointment/style.module.css */
.style_pane {
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
  padding: 20px;
}
.style_label6 {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--ink-3);
}
.style_when2 {
  display: flex;
  align-items: center;
  gap: 14px;
}
.style_tile {
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 60px;
  border: var(--outline);
  border-radius: var(--radius-control);
  background: var(--accent-soft);
}
.style_month {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
}
.style_number3 {
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
}
.style_lines3 {
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.style_time {
  font-size: 17px;
  font-weight: 700;
}
.style_details {
  font-size: 14px;
  color: var(--ink-2);
}
.style_row6 {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  padding-top: 4px;
  font-size: 15px;
}
.style_before {
  font-weight: 600;
}
.style_count {
  color: var(--ink-2);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

/* components/questionnaire-row/style.module.css */
.style_row7 {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 14px 20px;
  border: 0;
  border-top: 1.5px solid var(--ink);
  background: none;
  color: var(--ink);
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.style_tile2 {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: var(--radius-control);
}
.style_new2 {
  background: var(--sunk);
  color: var(--ink-2);
}
.style_draft2 {
  background: var(--private);
  color: var(--private-ink);
}
.style_icon2 {
  width: 20px;
  height: 20px;
  background-color: currentColor;
  -webkit-mask: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23000" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 4h6l1 2h3v15H5V6h3z"/><path d="M9 12h6M9 16h4"/></svg>%0A') no-repeat center / contain;
  mask: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23000" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 4h6l1 2h3v15H5V6h3z"/><path d="M9 12h6M9 16h4"/></svg>%0A') no-repeat center / contain;
}
.style_lines4 {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.style_name5 {
  font-size: 16px;
  font-weight: 600;
}
.style_details2 {
  font-size: 14px;
  color: var(--ink-2);
}
.style_action {
  font-size: 15px;
  font-weight: 700;
}
.style_error6 {
  padding: 0 20px 14px;
  font-size: 14px;
  font-weight: 600;
  color: var(--error);
}

/* components/open-questionnaires/style.module.css */
.style_card6 {
  display: flex;
  flex-direction: column;
  padding: 8px 0;
  background: var(--surface);
  border: var(--outline);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-card);
}
.style_title7 {
  padding: 14px 20px 6px;
  font-size: 17px;
}
.style_empty3 {
  padding: 14px 20px;
  border-top: 1.5px solid var(--ink);
  color: var(--ink-2);
}

/* components/today-record/style.module.css */
.style_card7 {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 22px;
  background: var(--accent);
  color: var(--accent-ink);
  border: var(--outline);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-button);
}
.style_heading4 {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.style_title8 {
  font-size: 20px;
}
.style_status2 {
  font-size: 15px;
}
.style_action2 {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 12px;
  border: var(--outline);
  border-radius: var(--radius-control);
  background: var(--surface);
  color: var(--ink);
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
}

/* components/week-records/style.module.css */
.style_pane2 {
  display: flex;
  flex-direction: column;
  gap: 14px;
  min-width: 0;
  padding: 20px;
}
.style_label7 {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--ink-3);
}
.style_row8 {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  font-size: 15px;
}
.style_week {
  font-weight: 600;
}
.style_counts {
  color: var(--ink-2);
  font-variant-numeric: tabular-nums;
}
.style_days {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 5px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.style_day3 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}
.style_bar4 {
  width: 100%;
  height: 14px;
  border: 1.5px solid var(--ink);
  border-radius: 999px;
  background: var(--surface);
}
.style_COMPLETE3 {
  background: var(--done);
}
.style_PARTIAL3 {
  background: var(--accent);
}
.style_future3 {
  border: 1.5px dashed var(--ink-3);
}
.style_letter2 {
  font-size: 11px;
  font-weight: 500;
  color: var(--ink-3);
}
.style_current {
  font-weight: 700;
  color: var(--ink);
}
.style_hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

/* components/today/style.module.css */
.style_today {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (min-width: 720px) {
  .style_today {
    gap: 28px;
  }
}
.style_heading5 {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.style_date {
  font-size: 15px;
  color: var(--ink-2);
}
.style_title9 {
  font-size: 30px;
  line-height: 1.15;
}
.style_summary2 {
  display: flex;
  flex-direction: column;
  background: var(--surface);
  border: var(--outline);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-card);
}
.style_rule {
  margin: 0 20px;
  border-top: 1.5px solid var(--ink);
}
.style_columns {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 16px;
  align-items: start;
}
@media (min-width: 720px) {
  .style_columns {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr);
  }
}
/*# sourceMappingURL=/assets/client.css.map */
