
/* ============================================================
   BERANDA KECIL — ACCESSIBLE TYPOGRAPHY V1
   Readability target: comfortable for users including age 50–60+
   ============================================================ */

:root {
  --bk-type-xs: 13px;
  --bk-type-sm: 14px;
  --bk-type-base: 16px;
  --bk-type-md: 17px;
  --bk-type-lg: 18px;
  --bk-type-xl: 22px;
  --bk-type-2xl: 28px;
  --bk-type-3xl: 32px;

  --bk-line-tight: 1.3;
  --bk-line-normal: 1.55;
  --bk-line-relaxed: 1.7;
}

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  font-size: var(--bk-type-base) !important;
  line-height: var(--bk-line-normal) !important;
}

/* Base readable text */
p,
li,
dd,
dt,
label,
legend,
summary {
  font-size: var(--bk-type-base);
  line-height: var(--bk-line-relaxed);
}

small,
.small,
.tiny,
.helper,
.muted.tiny,
.field-error,
.form-status {
  font-size: var(--bk-type-sm) !important;
  line-height: var(--bk-line-normal) !important;
}

/* Headings */
h1 {
  font-size: clamp(28px, 2.4vw, 32px) !important;
  line-height: var(--bk-line-tight) !important;
}

h2 {
  font-size: clamp(22px, 1.9vw, 24px) !important;
  line-height: var(--bk-line-tight) !important;
}

h3 {
  font-size: var(--bk-type-lg) !important;
  line-height: 1.4 !important;
}

h4,
h5,
h6 {
  font-size: var(--bk-type-base) !important;
  line-height: 1.45 !important;
}

/* Navigation */
.navlinks a,
.account-pill,
.logout-btn,
.mobile-menu-toggle,
.nav-actions button,
.nav-actions a {
  font-size: var(--bk-type-base) !important;
}

/* Forms and buttons */
button,
.btn,
input,
select,
textarea,
.password-toggle,
.tab-btn {
  font-size: var(--bk-type-base) !important;
  line-height: 1.35 !important;
}

input,
select,
textarea {
  min-height: 44px;
}

textarea {
  line-height: var(--bk-line-normal) !important;
}

/* Small UI labels: never micro-sized */
.eyebrow,
.chip,
.badge,
.state,
.beta-pill,
.tool-summary-kicker,
.status-title,
.profile-handle,
.profile-meta,
.market-sub,
.live-published-time {
  font-size: var(--bk-type-xs) !important;
  line-height: 1.45 !important;
}

/* General card/helper text */
.card p,
.notice,
.notice p,
.live-bridge-card p,
.status-card .muted,
.tool-summary-body,
.tools-card-head p,
.section-head p,
.page-hero p,
.compact-hero p,
.bk-seo-context p {
  font-size: var(--bk-type-sm) !important;
  line-height: var(--bk-line-relaxed) !important;
}

/* Homepage / Live */
.market,
.market-copy .market {
  font-size: var(--bk-type-lg) !important;
  line-height: 1.35 !important;
}

.market-sub {
  font-size: var(--bk-type-sm) !important;
}

.countdown {
  font-size: clamp(30px, 3vw, 36px) !important;
  line-height: 1.2 !important;
}

.previous-result-strip span,
.previous-result-strip small,
.result-reference-row,
.waiting-result-box span,
.live-discuss-link,
.live-recap-link {
  font-size: var(--bk-type-sm) !important;
}

.previous-result-strip strong,
.waiting-result-box strong {
  font-size: var(--bk-type-base) !important;
}

/* Community */
.community-feed,
.community-feed p,
.post-card p,
.post-card .post-body,
.post-meta,
.post-actions,
.post-actions button,
.comment-item,
.comment-item p,
.reply-item,
.reply-item p,
.community-sidebar,
.community-sidebar li,
.notification-item,
.notification-item small {
  font-size: var(--bk-type-sm) !important;
  line-height: var(--bk-line-relaxed) !important;
}

.post-card h3,
.post-card h2 {
  font-size: var(--bk-type-lg) !important;
}

.post-author,
.post-author-name,
.comment-author,
.reply-author {
  font-size: var(--bk-type-sm) !important;
}

/* Tools */
.tool-summary-card,
.tool-summary-card p,
.tool-summary-body,
.tool-point-indicator,
.tools-progress-shell,
.tools-progress-shell p,
.tools-progress-shell span,
.tool-workspace,
.tool-workspace p,
.tool-workspace label,
.latest-reference-card,
.latest-reference-card p {
  font-size: var(--bk-type-sm) !important;
  line-height: var(--bk-line-relaxed) !important;
}

.tool-summary-card h3,
.tools-workspace-page h3 {
  font-size: var(--bk-type-lg) !important;
}

.tool-point-indicator strong,
.tools-progress-shell strong {
  font-size: var(--bk-type-sm) !important;
}

/* Paito */
.paito-summary-card span {
  font-size: var(--bk-type-sm) !important;
}

.paito-summary-card strong {
  font-size: var(--bk-type-base) !important;
}

.paito-table th {
  font-size: var(--bk-type-xs) !important;
  line-height: 1.45 !important;
}

.paito-table td,
.paito-date,
.paito-day,
.paito-reference {
  font-size: var(--bk-type-sm) !important;
  line-height: 1.55 !important;
}

.paito-mobile-hint,
.paito-period-control label,
.paito-market-tab,
.paito-live-indicator {
  font-size: var(--bk-type-sm) !important;
}

/* Profile */
.profile-social-info,
.profile-description-block,
.profile-description-block p,
.profile-meta,
.profile-handle,
.profile-social-stats span,
.rank-progress-head,
.profile-content-tabs,
.profile-tab-panel,
.profile-tab-panel p {
  font-size: var(--bk-type-sm) !important;
  line-height: var(--bk-line-relaxed) !important;
}

.profile-identity h1 {
  font-size: var(--bk-type-2xl) !important;
}

.profile-social-stats strong {
  font-size: var(--bk-type-lg) !important;
}

/* Buku Mimpi */
.dream-book-page,
.dream-book-page p,
.book-search-help,
.book-page-meta,
.book-modal,
.book-modal p {
  font-size: var(--bk-type-sm) !important;
  line-height: var(--bk-line-relaxed) !important;
}

/* SEO context */
.bk-seo-context h2 {
  font-size: var(--bk-type-xl) !important;
}

.bk-seo-context p,
.bk-seo-parent-link {
  font-size: var(--bk-type-sm) !important;
}

.bk-seo-context .btn {
  font-size: var(--bk-type-base) !important;
}

/* Tables */
table th {
  font-size: var(--bk-type-xs) !important;
  line-height: 1.45 !important;
}

table td {
  font-size: var(--bk-type-sm) !important;
  line-height: 1.55 !important;
}

/* Footer */
footer,
.footer-wrap,
.footer-wrap span,
.footer-wrap a {
  font-size: var(--bk-type-sm) !important;
  line-height: 1.55 !important;
}

/* ============================================================
   ADMIN PANEL
   ============================================================ */

.admin-console-shell,
.admin-console-main,
.admin-console-workspace,
.admin-console-card,
.admin-panel-card {
  font-size: var(--bk-type-base) !important;
}

.admin-console-sidebar,
.admin-console-sidebar a,
.admin-side-link,
.admin-side-group-toggle,
.admin-console-topbar,
.admin-console-topbar button,
.admin-console-topbar a {
  font-size: var(--bk-type-sm) !important;
  line-height: 1.5 !important;
}

.admin-console-heading,
.admin-console-heading p,
.admin-workspace-head p,
.admin-section-head p,
.admin-console-card p,
.admin-panel-card p,
.admin-result-list,
.admin-result-list p,
.admin-publish-message,
.admin-market-today-status {
  font-size: var(--bk-type-sm) !important;
  line-height: var(--bk-line-relaxed) !important;
}

.admin-console-heading h1,
.admin-workspace-head h1 {
  font-size: var(--bk-type-2xl) !important;
}

.admin-section-head h2,
.admin-console-card h2,
.admin-panel-card h2 {
  font-size: var(--bk-type-xl) !important;
}

.admin-console-card h3,
.admin-panel-card h3 {
  font-size: var(--bk-type-lg) !important;
}

.admin-console-workspace label,
.admin-console-workspace .field label,
.admin-market-day-option,
.admin-market-schedule-state,
.admin-market-today-status,
.admin-achievement-meta,
.admin-report-meta,
.admin-recap-meta {
  font-size: var(--bk-type-sm) !important;
  line-height: 1.55 !important;
}

.admin-console-workspace input,
.admin-console-workspace select,
.admin-console-workspace textarea,
.admin-console-workspace button,
.admin-console-workspace .btn {
  font-size: var(--bk-type-base) !important;
}

.admin-console-workspace table th {
  font-size: var(--bk-type-xs) !important;
}

.admin-console-workspace table td {
  font-size: var(--bk-type-sm) !important;
}

.admin-moderation-list,
.admin-moderation-item,
.admin-moderation-item p,
.admin-report-list,
.admin-report-item,
.admin-report-item p,
.admin-achievement-list,
.admin-achievement-card,
.admin-achievement-card p,
.admin-recap-grid,
.admin-recap-grid p {
  font-size: var(--bk-type-sm) !important;
  line-height: var(--bk-line-relaxed) !important;
}

.admin-console-workspace .chip,
.admin-console-workspace .badge,
.admin-console-workspace .eyebrow,
.admin-console-workspace .state {
  font-size: var(--bk-type-xs) !important;
}

/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 760px) {
  :root {
    --bk-type-xs: 13px;
    --bk-type-sm: 15px;
    --bk-type-base: 16px;
    --bk-type-md: 17px;
  }

  body {
    line-height: 1.6 !important;
  }

  .navlinks a {
    font-size: var(--bk-type-md) !important;
  }

  .btn,
  button {
    min-height: 44px;
  }

  .admin-console-sidebar,
  .admin-console-sidebar a,
  .admin-side-link,
  .admin-side-group-toggle {
    font-size: var(--bk-type-base) !important;
  }
}
