/* Shared visual rules, October 2026. Existing content and hero typography are retained. */
:root { --color-surface:#faf8fc; --color-primary-light:#f3ebf6; --color-pink:#fcf5f9; --color-text:#292332; --color-text-muted:#5e5569; --color-text-faint:#756b80; --color-border:#e8e2ec; }
body { font-size:15px; line-height:1.65; }
.text-sm { font-size:15px; line-height:1.55; }
.text-xs { font-size:13px; line-height:1.5; }
input,textarea,select { font-family:inherit; }
button.bg-brand-600,a.bg-brand-600,.community-write-link { min-height:42px; border-radius:12px; display:inline-flex; align-items:center; justify-content:center; gap:7px; box-sizing:border-box; max-width:100%; padding:10px 18px; line-height:1.6; text-align:center; overflow-wrap:anywhere; }
button.bg-brand-600.w-full,a.bg-brand-600.w-full,a.bg-brand-600.block { display:flex; width:100%; }
.ui-icon { display:inline-block; flex-shrink:0; vertical-align:middle; }
.ui-plum { display:inline-block; vertical-align:middle; flex-shrink:0; }
.mobile-nav-link-icon,.bottom-nav-icon { display:flex; align-items:center; justify-content:center; }
.mobile-nav-link-icon .ui-icon { width:21px; height:21px; }
.pixel-plum { mix-blend-mode:multiply; }
.plum-choice-icon { isolation:auto; }
.plum-color-option { border-color:var(--color-border); }
.plum-color-option:has(input:checked) { background:#f2e9f6; }
/* Keep the administrator's font choices; anchor the artboard at the safe edge. */
.hero-banner-bleed { margin-left:0; margin-right:0; }
.hero-banner-crop > .hero-banner { left:0; transform:none; width:100%!important; }
.hero-banner-crop { border-radius:20px; }
@media(min-width:1200px) { .hero-banner-crop[data-device="pc"],.hero-banner-crop[data-device="pc"] > .hero-banner { height:480px!important; } }
.home-dashboard-grid { align-items:stretch; gap:18px; }
.home-dashboard-card { padding:22px!important; border:1px solid var(--color-border)!important; background:white!important; box-shadow:none!important; border-radius:16px; }
.home-dashboard-card:first-child { background:#f9f5fb!important; }
.home-dashboard-card > .flex > .text-sm { font-size:15px; }
.home-my-exams-hint { font-size:12px; line-height:1.5; margin-bottom:12px; }
.home-community-intro { font-size:14px; line-height:1.7; color:var(--color-text-muted); margin:3px 0 16px; }
.home-community-actions { display:flex; flex-wrap:wrap; gap:10px; }
.home-community-actions a { display:block; padding:9px 12px; border:1px solid #e1d4e8; border-radius:10px; color:var(--color-primary); font-size:13px; font-weight:650; background:white; }
.msg-card { background:#faf7fc; border:1px solid var(--color-border); padding:22px; min-height:180px; }
.msg-card-quote { font-size:17px; line-height:1.65; font-weight:750; }
.msg-card-sign { display:flex; align-items:center; gap:6px; font-size:12px; }
@media(min-width:768px) { .home-dashboard-compact { grid-template-columns:1.15fr 1.15fr 1fr; } }
.home-preview-list { grid-template-rows:repeat(4,104px); box-shadow:none; }
.home-preview-list > .list-row,.home-preview-list > .home-post-row { padding:8px 0; }
.home-post-row { gap:3px; }
.home-post-label { font-size:12px; line-height:18px; }
.home-post-label .pass-proof-badge { font-size:11px; line-height:15px; padding:2px 6px; }
.home-post-title { font-size:15px; line-height:22px; }
.home-post-meta { font-size:12px; line-height:18px; gap:7px; }
.home-preview-list .list-row .font-semibold,.home-preview-list .list-row .font-bold { font-size:15px; line-height:1.5; }
.home-preview-list .list-row .text-xs { font-size:12px; }
.home-preview-list .list-row .inline-flex { font-size:11px; }
/* One primary classification, with optional detail filters. */
.cert-group-hint { font-size:13px; color:var(--color-text-muted); }
.cert-grade-picker { border:1px solid var(--color-border); border-radius:12px; margin:16px 0; background:white; }
.cert-grade-label { padding:14px 14px 0; color:var(--color-text-muted); font-size:13px; }
.cert-grade-picker .cert-grade-tabs { padding:14px; margin:0; }
.cert-kind-tabs a { border-radius:12px; }
.cert-kind-tabs a span,.cert-selection-heading span { color:var(--color-text-muted); font-size:12px; }
.cert-kind-tabs a[aria-current=page] span { color:#fff; }
.cert-field-group > summary { min-height:58px; }
.cert-pill { font-size:14px; min-height:44px; }
/* Information reads as sections, rather than boxes within colored boxes. */
.cert-core-panel { background:#fff; border-color:var(--color-border); box-shadow:none; }
.cert-core-fields { gap:0 28px; margin-top:20px; }
.cert-core-fields > div { padding:20px 0!important; background:transparent; border:0; border-top:1px solid var(--color-border); border-radius:0; }
.cert-core-fields > div > .text-xs { color:var(--color-text-muted); font-weight:650; }
.cert-core-fields .text-sm { font-size:15px; font-weight:500; line-height:1.8; }
.cert-detail-readable { line-height:1.8; }
.cert-detail-phase-label { background:#f3ebf6; }
.cert-request-update-entry { padding:12px 0; background:transparent; border-radius:0; border-top:1px solid var(--color-border); margin-top:18px; }
.cert-connect-prompt { display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; margin:22px 0; padding:20px 24px; border:1px solid var(--color-border); border-radius:14px; background:#faf8fc; }
.cert-connect-prompt strong { color:var(--color-primary); font-size:15px; }
.cert-connect-prompt p { color:var(--color-text-muted); margin:4px 0 0; font-size:13px; }
.cert-connect-prompt>div:last-child { display:flex; gap:18px; font-size:13px; font-weight:650; color:var(--color-primary); }
.cert-toc-panel { box-shadow:none; border-color:var(--color-border); }
.cert-toc-panel a { font-size:13px; }
/* Consistent text and icon rhythm in community and forms. */
main:has(.community-home-heading) { max-width:1160px; }
.board-chip-icon { width:30px; height:30px; color:var(--color-primary); }
.board-chip { border-radius:12px; }
.community-feed-section { min-width:0; }
.community-write-link { display:inline-flex; gap:8px; }
.studylog-leaderboard { background:#faf8fc; box-shadow:none; }
.studylog-leaderboard-heading p,.studylog-minute-presets button,.cert-search-picker-note { font-size:13px; }
.studylog-leaderboard-heading p,.studylog-leader-empty { color:var(--color-text-muted); }
#studylog-create-form { box-shadow:none; }
main:has(#studylog-create-form) > .grid > .bg-brand-50 { background:#f9f5fb; }
footer { color:var(--color-text-muted); }
@media(max-width:767px) {
 .home-dashboard-grid { grid-template-columns:1fr; gap:12px; }
 .home-dashboard-card,.msg-card { padding:18px!important; }
 .msg-card { min-height:130px; }
 .home-preview-list { grid-template-rows:repeat(4,104px); grid-auto-rows:104px; }
 .home-post-title { font-size:15px; }
 .home-post-meta { flex-wrap:wrap; gap:3px 8px; }
 .cert-core-panel { padding:20px!important; }
 .cert-core-fields { grid-template-columns:1fr; }
 .cert-search-zone-inner .text-2xl { font-size:24px; }
}

.cert-info-footer { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; flex-wrap:wrap; margin-top:12px; padding-top:16px; border-top:1px solid var(--color-border); font-size:13px; color:var(--color-text-muted); }
.cert-info-footer>details { flex:1; min-width:0; }
.cert-info-footer summary { cursor:pointer; color:var(--color-text-muted); }
.cert-info-footer>a { color:var(--color-primary); font-weight:650; white-space:nowrap; }
@media(max-width:767px) { .hero-banner-crop[data-device="mobile"],.hero-banner-crop[data-device="mobile"] > .hero-banner { height:470px!important; } .hero-banner:not(.hb-editor) .hb-el-abs:has(> .hero-banner-title),.hero-banner:not(.hb-editor) .hb-el-abs:has(> .hero-banner-subtitle) { max-width:calc(100% - 40px); } }

.schedule-interest-cta { width:100%; box-sizing:border-box; padding:12px 20px; line-height:1.6; white-space:normal; text-align:center; }

/* Keep composer dropdown arrows clear of the rounded edge. */
select[name="certSlug"], #post-board-select, #post-round-select {
  appearance:none;
  -webkit-appearance:none;
  padding-right:44px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23756b80' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 16px center;
  background-size:16px 16px;
}

.qualification-submit-card .cert-search-picker { margin-top:8px; }

/* Text actions retain breathing room at narrow widths. Icon controls stay compact. */
.inquiry-primary-button,.inquiry-secondary-button,.qualification-primary-button,.notification-page button { box-sizing:border-box; max-width:100%; min-height:44px; padding:11px 18px; line-height:1.6; text-align:center; overflow-wrap:anywhere; }
.studylog-minute-presets button { min-height:38px; padding:8px 10px; line-height:20px; }
.comment-like-button { padding:6px 12px; min-height:32px; }
.qualification-submit-card .cert-search-picker-control { min-height:46px; }
.proof-page .cert-search-picker-control>button { margin:0; padding:0; border-radius:0 9px 9px 0; background:transparent; color:#80648b; min-height:44px; }
@media(max-width:639px) {
 .home-community-actions a { padding:10px 14px; }
 .cert-kind-tabs a,.cert-grade-tabs a { padding:10px 14px; }
}

.home-dashboard-grid {grid-template-columns:repeat(4,minmax(0,1fr));}
.home-dashboard-grid.home-dashboard-compact {grid-template-columns:1.15fr 1.15fr 1fr;}
@media(max-width:767px){.home-dashboard-grid,.home-dashboard-grid.home-dashboard-compact{grid-template-columns:1fr;}}

/* Shared monochrome counters, matching the navigation line icons. */
.like-count {display:inline-flex;align-items:center;gap:5px;white-space:nowrap;line-height:1.4;}
.like-count .ui-icon {width:16px;height:16px;flex-shrink:0;}
.study-log-like-btn {display:inline-flex;align-items:center;justify-content:center;gap:6px;}

/* Four home cards with a centered, readable encouragement message. */
.home-dashboard-grid>.home-dashboard-card:first-child {background:#eadbef!important;}
.home-dashboard-grid>.home-dashboard-card:nth-child(2) {background:#f6edf5!important;}
.home-dashboard-grid>.msg-card {position:relative;display:grid;grid-template-rows:1fr auto;min-height:260px;padding:28px 24px;gap:20px;background:linear-gradient(145deg,#ecdef0,#f6eaf3);}
.home-dashboard-grid>.msg-card::before {content:"“";position:absolute;top:5px;left:20px;font-family:Georgia,serif;font-size:64px;line-height:1;color:#713678;opacity:.16;pointer-events:none;}
.home-dashboard-grid .msg-card-quote {align-self:center;justify-self:center;max-width:14ch;font-size:clamp(21px,1.8vw,28px);line-height:1.6;font-weight:800;text-align:center;word-break:keep-all;overflow-wrap:anywhere;text-wrap:balance;letter-spacing:-.035em;}
.home-dashboard-grid .msg-card-sign {justify-content:center;margin:0;}
@media(min-width:768px) and (max-width:1023px) {.home-dashboard-grid {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:767px) {.home-dashboard-grid>.msg-card {min-height:190px;padding:26px 22px;}.home-dashboard-grid .msg-card-quote {font-size:24px;}}

.home-my-exam-meta {display:flex;align-items:center;justify-content:space-between;gap:6px;flex-wrap:wrap;}
.home-my-exam-meta>a {display:inline-flex;align-items:center;min-height:32px;white-space:nowrap;}
.home-my-exams .progress-track {margin:3px 0 0;height:5px;}
.home-my-exam+.home-my-exam {margin-top:10px;padding-top:10px;}
@media(min-width:1024px) {
 .home-dashboard-card {padding:20px!important;}
 .home-my-exams-hint {margin-bottom:8px;}
}
@media(max-width:767px) {.home-my-exam-meta>a {min-height:44px;}}

/* Today's study card: a growing plum crowd and the two latest check-ins. */
.home-dashboard-card:has(.home-study-content) {display:flex;flex-direction:column;}
.home-dashboard-card:has(.home-study-content)>.flex {margin-bottom:2px;}
.home-study-content {display:flex;flex-direction:column;flex:1;min-width:0;}
.home-study-subtitle {font-size:11px;line-height:1.5;color:var(--color-text-faint);margin:0 0 8px;}
.home-study-gathering {border-radius:10px;background:#f8f0f8;text-align:center;padding:8px 10px 0;}
.home-study-count {display:block;font-size:27px;line-height:1.15;font-weight:850;color:var(--color-primary);letter-spacing:-.04em;}
.home-study-count-label {display:block;margin-top:2px;font-size:10px;color:var(--color-text-faint);}
.home-study-crowd {display:block;width:100%;height:55px;}
.home-study-crowd-empty {height:40px;display:grid;place-items:center;font-size:11px;color:var(--color-text-faint);}
.home-study-recent {margin-top:10px;margin-bottom:8px;}
.home-study-recent h3 {font-size:11px;line-height:1.4;font-weight:800;margin:0 0 3px;color:var(--color-text);}
.home-study-row {display:flex;align-items:center;gap:7px;min-height:41px;min-width:0;border-radius:7px;}
.home-study-row:hover {background:var(--color-surface);}
.home-study-row>.avatar {flex:0 0 29px;width:29px;height:29px;}
.home-study-person {min-width:0;flex:1;display:flex;flex-direction:column;gap:1px;}
.home-study-person strong {font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text);}
.home-study-person>span {font-size:10px;color:var(--color-text-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.home-study-row time {flex-shrink:0;font-size:9px;color:var(--color-text-faint);}
.home-study-empty {font-size:11px;line-height:1.6;color:var(--color-text-faint);margin:8px 0;}
.home-study-cta {margin-top:auto;display:flex;justify-content:center;align-items:center;gap:6px;min-height:35px;padding:7px 10px;border-radius:8px;background:#f2e5f4;color:var(--color-primary);font-size:11px;line-height:1.4;font-weight:800;}
.home-study-cta:hover {background:#ead7ee;}
@media(max-width:767px){.home-study-row{min-height:44px;}.home-study-cta{min-height:44px;}.home-study-crowd{height:65px;}}

/* Encouragement pinned to a warm paper note. */
.home-dashboard-grid>.msg-card {display:flex;align-items:stretch;padding:25px 24px 21px!important;gap:0;background:repeating-linear-gradient(0deg,transparent 0 33px,#deb98810 34px 35px),linear-gradient(135deg,#f4e4cc,#f8ead8 55%,#f2dfca);border:1px solid #eedfcf;overflow:hidden;box-shadow:none;}
.home-dashboard-grid>.msg-card::before {display:none;}
.msg-card-paper {position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;flex:1;min-width:0;min-height:210px;padding:36px 20px 18px;border-radius:3px 5px 15px 4px;background:linear-gradient(145deg,#fff4af,#fff7c9 70%,#f8e995);box-shadow:2px 5px 9px #80532e20,inset 0 0 0 1px #fff8d9;transform:rotate(-4deg);}
.msg-card-paper::before {content:'';position:absolute;top:-11px;left:50%;width:70px;height:27px;background:linear-gradient(105deg,#d8b4e8cc,#e1c2efdb,#cfa5e1c9);transform:translateX(-50%) rotate(-5deg);clip-path:polygon(0 4%,97% 0,100% 94%,3% 100%);}
.msg-card-paper::after {content:'“';position:absolute;top:12px;left:15px;font:700 72px/1 Georgia,serif;color:#ddba35;opacity:.8;pointer-events:none;}
.home-dashboard-grid .msg-card-paper .msg-card-quote::after {content:'”';position:absolute;bottom:-14px;right:14px;font:700 72px/1 Georgia,serif;color:#ddba35;opacity:.8;pointer-events:none;}
.msg-card-spark {position:absolute;right:-13px;top:6px;width:34px;height:38px;overflow:visible;}
.home-dashboard-grid .msg-card-paper .msg-card-quote {margin:auto 0;max-width:14ch;font-size:clamp(18px,1.7vw,24px);line-height:1.65;font-weight:850;color:#6b226f;}
.home-dashboard-grid .msg-card-paper .msg-card-sign {margin-top:15px;color:#8d5b83;font-size:11px;}
@media(max-width:767px){.home-dashboard-grid>.msg-card{padding:26px!important;}.msg-card-paper{min-height:200px;padding:36px 24px 18px;}.home-dashboard-grid .msg-card-paper .msg-card-quote{font-size:22px;}}

/* Keep the desktop dashboard compact as content and decoration change. */
@media(min-width:1024px){
 .home-dashboard-grid>.home-dashboard-card,.home-dashboard-grid>.msg-card {height:300px;min-height:0;box-sizing:border-box;}
 .home-dashboard-grid>.home-dashboard-card {padding:16px!important;}
 .home-dashboard-grid>.home-dashboard-card:nth-child(2)>a {padding-top:4px;padding-bottom:4px;}
 .home-study-subtitle {margin-bottom:4px;}
 .home-study-gathering {padding-top:6px;}
 .home-study-count {font-size:24px;}
 .home-study-crowd {height:30px;}
 .home-study-recent {margin-top:6px;margin-bottom:4px;}
 .home-study-row {min-height:34px;}
 .home-dashboard-grid>.msg-card {padding:22px 22px 18px!important;}
 .home-dashboard-grid .msg-card-paper {min-height:0;min-width:0;}
 .home-dashboard-grid .msg-card-paper .msg-card-quote {max-height:100%;overflow-y:auto;}
}

/* 2026-11-04 홈 카드 강조색(나의 시험 일정 진행 막대·상세보기, 오늘 인증 인원·공부 인증 보러 가기) */
.home-my-exams .home-my-exam-meta > a { color:#D978A8 !important; }
.home-my-exams .progress-fill { background:#D978A8; }
.home-my-exams .progress-track { background:rgba(217,120,168,.18); }
.home-study-count { color:#D978A8; }
.home-study-cta { color:#D978A8; }
