/* ============================================================================
   v2 시안 CSS — scripts/v2_build_mock_css.py 가 v2/design/parts 에서 생성한다. 직접 편집 금지.
   포함 화면: common, home, library, study, achievement, daily, materials / 파트 87개 / 앱 보정: v2/design/app-fix.css / 마지막 자동 블록 = 디자인 가이드 원칙 4·7
   ============================================================================ */
/* ---- 001-common.css ---- */
#merciUX {margin:0;background:var(--color-primary-50);color:var(--text-primary);font:14px/1.65 'Pretendard','Malgun Gothic',sans-serif;letter-spacing:-.035em;--blue:var(--color-primary-600);--muted:var(--text-secondary);--line:var(--color-primary-50);--soft:var(--color-gray-100);}
#merciUX * {box-sizing:border-box;}
#merciUX button,#merciUX input,#merciUX select,#merciUX textarea {font:inherit;letter-spacing:inherit;}
#merciUX button {cursor:pointer;border:0;color:inherit;}
#merciUX button:disabled {opacity:.45;cursor:default;}
#merciUX button:focus-visible,#merciUX a:focus-visible,#merciUX input:focus-visible,#merciUX select:focus-visible,#merciUX textarea:focus-visible {outline:3px solid #6bb6ff;outline-offset:3px;}
#merciUX .layout {max-width:1160px;margin:auto;padding:40px 28px;display:grid;grid-template-columns:1fr 430px;gap:84px;align-items:start;}
#merciUX .editorial {padding:24px 0;position:sticky;top:20px;}
#merciUX .eyebrow {font-size:11px;letter-spacing:.17em;font-weight:800;color:var(--blue);}
#merciUX h1 {font-size:42px;line-height:1.3;letter-spacing:-.07em;margin:24px 0 20px;}
#merciUX h2 {font-size:23px;line-height:1.4;margin:8px 0 12px;letter-spacing:-.055em;}
#merciUX h3 {font-size:16px;line-height:1.5;margin:0 0 8px;}
#merciUX p {margin:7px 0 14px;}
#merciUX .intro {color:var(--text-secondary);font-size:15px;max-width:400px;}
#merciUX .principle {display:flex;gap:17px;padding:17px 0;border-bottom:1px solid var(--color-primary-100);}
#merciUX .principle strong {font-size:12px;color:var(--blue);padding-top:3px;}
#merciUX .principle p {margin:3px 0 0;color:var(--text-secondary);font-size:13px;}
#merciUX .journey {display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:24px 0;color:var(--text-secondary);font-size:12px;}
#merciUX .journey span {padding:5px 9px;background:var(--bg-card);border-radius:7px;}
#merciUX .reviewbox {margin-top:28px;background:var(--bg-card);border:1px solid var(--color-primary-50);border-radius:18px;padding:20px;}
#merciUX .row {display:flex;align-items:center;justify-content:space-between;gap:12px;}
#merciUX .wrap {flex-wrap:wrap;}
#merciUX .muted {color:var(--muted);font-size:12px;}
#merciUX .note {color:var(--text-secondary);background:var(--color-primary-50);border-radius:12px;padding:12px;font-size:12px;margin:14px 0;}
#merciUX .warn {background:var(--color-error-light);color:var(--color-warning-dark);}
#merciUX label {display:block;font-size:12px;color:var(--text-secondary);margin:10px 0 5px;font-weight:700;}
#merciUX input,#merciUX select,#merciUX textarea {width:100%;background:white;border:1px solid var(--color-primary-100);border-radius:10px;padding:11px;color:var(--text-primary);}
#merciUX textarea {min-height:120px;resize:vertical;}
#merciUX .phone {width:430px;height:890px;border:1px solid #d7e0eb;border-radius:32px;background:white;box-shadow:0 25px 65px #24416a20;overflow:hidden;display:flex;flex-direction:column;position:relative;}
#merciUX .status {padding:10px 24px 0;display:flex;justify-content:space-between;font-size:11px;font-weight:800;flex-shrink:0;}
#merciUX .header-actions {display:flex;align-items:center;gap:5px;}
#merciUX .header-actions .iconbtn {width:40px;height:44px;background:transparent;}
#merciUX .header-actions svg {width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
#merciUX .apphead {height:62px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;flex-shrink:0;}
#merciUX .logo {font-size:22px;font-weight:900;letter-spacing:-.07em;}
#merciUX .logo b {color:var(--blue);}
#merciUX .badge {background:var(--color-primary-50);color:var(--color-primary-800);border-radius:7px;padding:4px 8px;font-size:10px;font-weight:800;white-space:nowrap;letter-spacing:.015em;}
#merciUX .badge.green {background:var(--color-gray-100);color:var(--color-success-dark);}
#merciUX .badge.gray {background:var(--color-gray-100);color:var(--text-secondary);}
#merciUX .iconbtn {width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:var(--color-gray-100);font-size:18px;}
#merciUX main {flex:1;min-height:0;overflow:auto;scrollbar-width:thin;padding:0 22px 28px;}
#merciUX .pagebar {display:flex;align-items:center;gap:10px;padding:4px 0 15px;}
#merciUX .pagebar h2 {font-size:20px;margin:0;}
#merciUX .tabs {display:flex;gap:22px;border-bottom:1px solid var(--line);margin-bottom:21px;}
#merciUX .tabs button {background:none;color:var(--text-muted);padding:9px 0 12px;font-weight:800;border-bottom:3px solid transparent;}
#merciUX .tabs button.active {color:var(--color-navy-700);border-bottom-color:var(--blue);}
#merciUX .hero {padding:24px;border-radius:22px;background:linear-gradient(125deg,var(--color-primary-700),var(--color-primary-500));color:white;position:relative;overflow:hidden;margin:15px 0 20px;}
#merciUX .hero:after {content:'';position:absolute;right:-43px;top:-30px;width:170px;height:170px;border:27px solid #ffffff0e;border-radius:50%;pointer-events:none;}
#merciUX .hero .muted {color:var(--color-primary-50);}
#merciUX .hero h2 {font-size:28px;line-height:1.4;margin:8px 0 10px;}
#merciUX .hero .btn {background:white;color:var(--color-primary-800);}
#merciUX .hero .subtle {font-size:11px;color:var(--color-primary-50);margin-top:12px;}
#merciUX .btn {display:block;width:100%;padding:13px 15px;background:var(--blue);color:white;font-weight:800;border-radius:12px;text-align:center;min-height:46px;margin-top:10px;}
#merciUX .btn.secondary {background:var(--color-primary-50);color:var(--color-primary-800);}
#merciUX .btn.ghost {background:white;border:1px solid var(--color-primary-50);color:var(--text-secondary);}
#merciUX .textbtn {background:none;padding:8px 0;color:var(--blue);font-size:12px;font-weight:700;}
#merciUX .section {margin:24px 0 12px;display:flex;align-items:center;justify-content:space-between;gap:8px;}
#merciUX .section h3 {margin:0;}
#merciUX .card {border:1px solid var(--line);border-radius:16px;padding:17px;margin:12px 0;background:white;}
#merciUX .card.soft {background:var(--soft);border-color:var(--soft);}
#merciUX .listrow {display:flex;align-items:center;gap:13px;text-align:left;background:white;width:100%;padding:15px 0;border-bottom:1px solid var(--line);}
#merciUX .listrow .copy {flex:1;min-width:0;}
#merciUX .listrow b {font-size:13px;display:block;}
#merciUX .listrow small {display:block;color:var(--muted);font-size:11px;margin-top:3px;}
#merciUX .tileicon {width:43px;height:48px;background:var(--color-primary-50);color:var(--color-primary-700);border-radius:10px;display:grid;place-items:center;flex-shrink:0;font-size:18px;}
#merciUX .arrow {color:var(--text-secondary);}
#merciUX .grid2 {display:grid;grid-template-columns:1fr 1fr;gap:11px;}
#merciUX .quick {background:var(--color-gray-100);border-radius:14px;padding:15px;text-align:left;min-height:84px;}
#merciUX .quick b {display:block;font-size:13px;margin:5px 0;}
#merciUX .quick small {color:var(--muted);font-size:11px;}
#merciUX .progress {height:5px;background:var(--color-primary-50);border-radius:10px;overflow:hidden;margin:11px 0 5px;}
#merciUX .progress i {display:block;height:100%;background:var(--color-primary-500);border-radius:10px;}
#merciUX .chips {display:flex;gap:7px;overflow:auto;padding:3px 0 8px;scrollbar-width:none;}
#merciUX .chip {background:var(--color-gray-100);border-radius:20px;white-space:nowrap;padding:8px 13px;font-size:12px;}
#merciUX .chip.on {background:var(--text-primary);color:white;}
#merciUX .carousel {display:flex;gap:12px;overflow:auto;scroll-snap-type:x mandatory;padding:5px 0 10px;scrollbar-width:none;}
#merciUX .poster {width:215px;flex-shrink:0;min-height:235px;padding:21px;border-radius:19px;color:white;background:#2466c8;text-align:left;scroll-snap-align:start;position:relative;overflow:hidden;}
#merciUX .poster:nth-child(2) {background:#304778;}
#merciUX .poster:nth-child(3) {background:#377369;}
#merciUX .poster:nth-child(4) {background:#837054;}
#merciUX .poster:nth-child(5) {background:#555786;}
#merciUX .poster .orb {position:absolute;width:95px;height:95px;border:18px solid #ffffff18;border-radius:50%;right:-12px;top:42px;}
#merciUX .poster h3 {font-size:32px;margin:22px 0 4px;}
#merciUX .poster small {color:#ffffffcd;font-size:11px;}
#merciUX .poster .posterfoot {border-top:1px solid #ffffff30;margin-top:24px;padding-top:12px;font-size:12px;}
#merciUX nav {display:grid;grid-template-columns:repeat(5,1fr);padding:10px 9px 14px;border-top:1px solid var(--line);background:white;flex-shrink:0;}
#merciUX nav button {display:flex;flex-direction:column;align-items:center;gap:3px;background:none;color:var(--text-muted);font-size:10px;font-weight:700;min-height:43px;}
#merciUX nav button.active {color:var(--blue);}
#merciUX svg {width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
#merciUX .jobbar {padding:10px 20px;background:var(--color-primary-50);color:var(--color-primary-800);font-size:11px;display:flex;justify-content:space-between;align-items:center;gap:8px;flex-shrink:0;}
#merciUX .jobbar[hidden] {display:none;}
#merciUX .jobbar button {font-size:11px;color:var(--color-primary-800);background:none;font-weight:800;}
#merciUX .toast {position:absolute;bottom:84px;left:20px;right:20px;z-index:10;background:var(--text-primary);color:white;padding:13px;border-radius:12px;font-size:12px;text-align:center;box-shadow:0 5px 20px #0002;}
#merciUX .toast:empty {display:none;}
#merciUX .option {width:100%;padding:15px;border:1px solid var(--color-primary-50);background:white;border-radius:12px;text-align:left;margin:6px 0;}
#merciUX .option.selected {background:var(--color-primary-50);border-color:var(--color-primary-500);color:var(--color-primary-800);}
#merciUX .steps {display:flex;justify-content:space-between;font-size:10px;color:var(--text-secondary);padding:10px 0;gap:5px;}
#merciUX .steps .done {color:var(--color-success-dark);}
#merciUX .flash {border-radius:22px;background:var(--color-primary-50);border:1px solid var(--color-primary-100);min-height:255px;padding:28px 22px;display:flex;flex-direction:column;justify-content:center;text-align:center;margin:20px 0;}
#merciUX .flash h3 {font-size:22px;line-height:1.6;}
#merciUX .numbers {font-size:22px;font-weight:900;letter-spacing:-.055em;}
#merciUX .ledger {font-size:12px;display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:12px 0;}
#merciUX .tablewrap {overflow:auto;}
#merciUX table {border-collapse:collapse;width:100%;font-size:11px;}
#merciUX td,#merciUX th {padding:10px 7px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;}
#merciUX th {background:var(--color-gray-100);}
#merciUX details {margin:13px 0;}
#merciUX summary {cursor:pointer;color:#325f98;font-size:12px;font-weight:700;padding:8px 0;}
#merciUX .reviewbox textarea {font:11px/1.5 Consolas,monospace;min-height:240px;letter-spacing:0;}
#merciUX .footer {color:var(--text-muted);font-size:11px;margin-top:20px;}
#merciUX a {color:var(--color-primary-700);}
/* 홈: 구독 발견과 썸네일 전시. 보유·가격 판정은 공통 콘텐츠 정보 사용. */
/* ---- 002-home.css ---- */
#merciUX .home-ad {display:block;position:relative;width:calc(100% + 44px);aspect-ratio:4/1;min-height:76px;max-height:110px;margin:0 -22px 16px;overflow:hidden;border-radius:0;text-decoration:none;color:var(--text-secondary);background:var(--color-primary-50);}
#merciUX .home-ad.after-pass {margin:0 -22px 24px;}
#merciUX .home-ad img {position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;}
#merciUX .home-ad-placeholder {height:100%;min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;background:linear-gradient(110deg,var(--color-primary-50),var(--color-primary-50));border:0;border-radius:0;}
#merciUX .home-ad-placeholder b {display:block;font-size:14px;font-weight:700;}
#merciUX .home-ad-placeholder small {display:block;margin-top:5px;font-size:11px;color:var(--text-secondary);}
#merciUX .home-ad-label {position:absolute;right:7px;top:5px;font-size:9px;line-height:1.4;color:var(--text-secondary);background:#ffffffd9;padding:1px 4px;border-radius:3px;}
#merciUX .home-resume {display:flex;align-items:center;gap:12px;width:100%;padding:14px 15px;border:1px solid var(--color-primary-50);background:var(--bg-body);border-radius:16px;text-align:left;}
#merciUX .home-resume .copy {flex:1;min-width:0;}
#merciUX .home-resume b {display:block;font-size:13px;}
#merciUX .home-resume small {display:block;color:var(--muted);font-size:11px;margin-top:3px;}
/* ---- 003-common.css ---- */
#merciUX .resume-play {display:grid;place-items:center;width:37px;height:37px;flex-shrink:0;border-radius:50%;background:var(--blue);color:white;font-size:13px;}
/* ---- 004-home.css ---- */
#merciUX .home-class {display:flex;flex-direction:column;min-height:0;width:calc((100% - 24px)/2.15);aspect-ratio:4/5;padding:14px 12px;}
#merciUX .home-class h3 {font-size:26px;margin:10px 0 5px;}
#merciUX .home-class[data-id="nclex"] h3 {font-size:21px;}
#merciUX .home-class[data-id="nclex"] small {font-size:10px;}
#merciUX .home-class .posterfoot {margin-top:auto;padding-top:6px;font-size:9px;line-height:1.5;}
#merciUX .home-pass {background:var(--color-primary-50);border:1px solid var(--color-primary-100);border-radius:16px;padding:15px 17px;margin:17px 0 24px;}
#merciUX .home-pass h3 {font-size:19px;letter-spacing:-.055em;margin:0 0 10px;line-height:1.4;}
/* ---- 005-common.css ---- */
#merciUX .pass-lines {display:grid;grid-template-columns:57px 1fr;gap:5px 10px;align-items:center;font-size:12px;color:var(--text-secondary);}
#merciUX .pass-lines strong {font-size:10px;color:var(--color-primary-800);letter-spacing:.04em;}
/* ---- 006-home.css ---- */
#merciUX .home-pass .btn {margin-top:14px;}
#merciUX .home-pass .pass-foot {margin:9px 0 0;font-size:10px;color:var(--text-secondary);}
/* ---- 007-common.css ---- */
#merciUX .shelf-section {margin:29px 0 0;}
#merciUX .shelf-heading {display:flex;align-items:center;justify-content:space-between;gap:8px;}
#merciUX .shelf-heading h3 {font-size:17px;margin:0;}
#merciUX .shelf-heading .textbtn {white-space:nowrap;min-height:44px;}
#merciUX .shelf-desc {margin:0 0 14px;font-size:12px;color:var(--muted);}
/* ---- 008-home.css ---- */
#merciUX .home-shelf {display:flex;gap:13px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 0 9px;scrollbar-width:none;}
#merciUX .showcase-card {display:flex;flex-direction:column;flex:0 0 272px;max-width:88%;background:transparent;border:0;border-radius:0;padding:0;text-align:left;scroll-snap-align:start;}
#merciUX .showcase-image {position:relative;display:block;width:100%;aspect-ratio:16/9;background:var(--color-gray-100);border-radius:12px;overflow:hidden;flex-shrink:0;}
#merciUX .showcase-image img {position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;}
#merciUX .showcase-placeholder {height:100%;display:flex;flex-direction:column;justify-content:space-between;padding:16px;background:linear-gradient(135deg,#327dd9,#87bdfb);color:white;}
#merciUX .showcase-placeholder b {font-size:21px;line-height:1.4;}
#merciUX .showcase-placeholder small {font-size:10px;}
#merciUX .showcase-body {display:flex;flex:1;flex-direction:column;padding:9px 1px 0;}
#merciUX .showcase-title {font-size:14px;line-height:1.5;min-height:42px;font-weight:800;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
#merciUX .showcase-bottom {display:block;margin-top:5px;font-size:12px;line-height:1.5;font-weight:700;color:var(--blue);}
/* ---- 009-library.css ---- */
#merciUX .library-product {display:flex;align-items:center;gap:13px;width:100%;padding:15px 0;background:transparent;border:0;border-bottom:1px solid var(--color-primary-50);text-align:left;}
#merciUX .library-thumb {position:relative;display:block;flex:0 0 34%;aspect-ratio:16/9;border-radius:8px;overflow:hidden;background:var(--color-primary-50);}
#merciUX .library-thumb img {position:absolute;inset:0;width:100%;height:100%;object-fit:contain;}
#merciUX .library-thumb-fallback {position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:8px;font-size:10px;line-height:1.5;color:var(--text-secondary);}
#merciUX .library-product-info {display:flex;flex:1;min-width:0;flex-direction:column;gap:5px;}
#merciUX .library-product-title {font-size:14px;line-height:1.45;font-weight:800;overflow-wrap:anywhere;}
#merciUX .library-product-meta {font-size:11px;line-height:1.45;color:var(--text-secondary);}
#merciUX .library-product-action {font-size:12px;line-height:1.45;font-weight:700;color:var(--blue);}
#merciUX .library-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 14px;margin-top:18px;}
#merciUX .library-grid .library-product {display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:8px;padding:0;border:0;min-width:0;}
#merciUX .library-grid .library-thumb {width:100%;flex:none;}
#merciUX .library-grid .library-product-info {flex:1;gap:4px;}
#merciUX .library-grid .library-product-title {font-size:14px;font-weight:600;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
#merciUX .library-grid .library-product-meta {display:none;}
#merciUX .library-grid .library-product-action {font-size:11px;font-weight:600;color:var(--text-secondary);margin-top:0;}
#merciUX .library-rating {display:block;font-size:11px;line-height:1.5;color:var(--text-secondary);}
/* ---- 010-common.css ---- */
#merciUX .rating-star {color:var(--color-warning);}
/* ---- 011-study.css ---- */
#merciUX .review-count {margin-left:4px;color:var(--text-secondary);}
/* ---- 012-library.css ---- */
#merciUX .library-grid > .note {grid-column:1/-1;}
#merciUX .class-offer {padding:16px;margin:15px 0 18px;border:1px solid var(--color-primary-100);border-radius:14px;background:var(--color-primary-50);}
#merciUX .class-offer b {font-size:16px;}
#merciUX .class-offer p {font-size:12px;color:var(--text-secondary);margin:7px 0 12px;}
/* ---- 013-common.css ---- */
#merciUX .owned-offer {background:var(--color-gray-100);border-color:var(--border-light);}
/* ---- 014-home.css ---- */
#merciUX .home-bottom {margin:26px 0 0;border-radius:15px;background:var(--bg-body);padding:15px;}
/* ---- 015-common.css ---- */
#merciUX .search-count {font-size:12px;color:var(--muted);margin-top:16px;}
/* 공부하기: 이어서 학습·오답 복습·암기카드와 원본별 기록을 연결한다. */
/* ---- 016-study.css ---- */
#merciUX .study-lead {margin:15px 0 18px;padding:18px;background:linear-gradient(135deg,var(--color-primary-700),var(--color-primary-500));border-radius:18px;color:white;text-align:left;width:100%;}
#merciUX .study-lead small {display:block;color:var(--color-primary-50);font-size:11px;}
#merciUX .study-lead b {display:block;margin:7px 0 5px;font-size:20px;line-height:1.4;}
#merciUX .study-lead span {display:block;font-size:12px;color:var(--color-primary-50);}
#merciUX .study-duo {display:grid;grid-template-columns:1fr 1fr;gap:10px;}
#merciUX .study-axis {min-height:116px;padding:15px;border:1px solid var(--color-primary-50);border-radius:15px;background:white;text-align:left;}
#merciUX .study-axis .axis-icon {display:grid;width:34px;height:34px;place-items:center;border-radius:10px;background:var(--color-primary-50);color:var(--color-primary-700);font-weight:900;}
#merciUX .study-axis b {display:block;margin:10px 0 4px;font-size:14px;}
#merciUX .study-axis small {display:block;color:var(--muted);font-size:10px;line-height:1.5;}
/* ---- 017-materials.css ---- */
#merciUX .record-strip {display:grid;grid-template-columns:repeat(4,1fr);gap:7px;}
#merciUX .record-chip {padding:12px 4px;background:var(--color-gray-100);border-radius:12px;text-align:center;}
#merciUX .record-chip b {display:block;font-size:14px;color:var(--color-primary-800);}
#merciUX .record-chip small {display:block;margin-top:3px;color:var(--text-secondary);font-size:9px;}
/* ---- 018-common.css ---- */
#merciUX .question-tools {display:flex;gap:7px;margin:12px 0;overflow:auto;scrollbar-width:none;}
#merciUX .question-tool {flex:0 0 auto;padding:9px 11px;border:1px solid var(--color-primary-50);border-radius:18px;background:white;color:var(--text-secondary);font-size:11px;}
#merciUX .question-tool.on {border-color:#81b4ef;background:var(--color-primary-50);color:var(--color-primary-700);font-weight:800;}
#merciUX .result-actions {display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:12px 0;}
#merciUX .result-action {min-height:82px;padding:13px;border:1px solid var(--color-primary-50);border-radius:13px;background:white;text-align:left;}
#merciUX .result-action b {display:block;font-size:12px;}
#merciUX .result-action small {display:block;margin-top:5px;color:var(--muted);font-size:10px;line-height:1.4;}
#merciUX .reader-copy {font-size:15px;line-height:1.9;user-select:text;cursor:text;}
#merciUX .reader-copy::selection {background:var(--color-warning-light);color:var(--text-primary);}
#merciUX .selection-bar {position:sticky;bottom:8px;z-index:2;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:14px 0;padding:8px;background:var(--text-primary);border-radius:13px;box-shadow:0 6px 20px #1a2f4a33;}
#merciUX .selection-bar button {min-height:40px;border-radius:9px;background:white;color:var(--color-navy-500);font-size:10px;font-weight:800;}
/* ---- 019-materials.css ---- */
#merciUX .record-group {margin:18px 0 7px;color:var(--text-secondary);font-size:11px;font-weight:800;}
/* ---- 020-common.css ---- */
#merciUX .empty-compact {padding:15px;border-radius:13px;background:var(--color-gray-100);color:var(--text-secondary);font-size:11px;line-height:1.6;}
#merciUX .source-tag {display:inline-block;margin-bottom:8px;color:#2e6fbf;font-size:11px;font-weight:800;}
@media (max-width:900px) {
#merciUX .layout {gap:30px;padding:25px 18px;grid-template-columns:1fr 410px;}
#merciUX .phone {width:410px;}
#merciUX h1 {font-size:33px;}
}
@media (max-width:740px) {
#merciUX .layout {display:flex;flex-direction:column;padding:0;gap:0;}
#merciUX .phone {order:0;width:100%;height:100dvh;border:0;border-radius:0;box-shadow:none;}
#merciUX .editorial {order:1;position:static;padding:28px 22px;width:100%;}
#merciUX .status {padding-top:max(8px,env(safe-area-inset-top));}
#merciUX nav {padding-bottom:max(12px,env(safe-area-inset-bottom));}
}
#merciUX .acc {border:1px solid var(--color-primary-50);border-radius:15px;background:white;margin-bottom:10px;overflow:hidden;}
#merciUX .acc.open {border-color:var(--color-primary-100);box-shadow:0 8px 20px #2a58921a;}
#merciUX .acc-head {display:flex;align-items:center;gap:12px;width:100%;padding:15px 16px;background:none;text-align:left;}
#merciUX .acc-copy {flex:1;min-width:0;}
#merciUX .acc-copy b {display:block;font-size:14px;color:var(--text-primary);}
#merciUX .acc-copy small {display:block;margin-top:3px;color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#merciUX .acc-caret {flex:0 0 auto;color:var(--text-muted);font-size:12px;}
#merciUX .acc-body {padding:12px 14px 14px;border-top:1px solid var(--line);}
/* ---- 021-materials.css ---- */
#merciUX .acc-body .record-strip {margin:0 0 8px;}
/* ---- 022-common.css ---- */
#merciUX .acc-foot {display:flex;justify-content:flex-end;padding-top:6px;}
#merciUX .acc-hint {margin:8px 2px 0;color:var(--muted);font-size:11.5px;line-height:1.65;}
#merciUX .today-guide {padding:20px;margin:12px 0 16px;border-radius:22px;background:linear-gradient(125deg,#3264ef,#2844c9);color:white;}
#merciUX .today-guide h2 {color:white;margin:18px 0 10px;font-size:25px;}
#merciUX .today-guide p {font-size:13px;line-height:1.6;}
#merciUX .today-guide .ghost {color:white;background:#ffffff18;border-color:#ffffff55;font-size:11px;padding:8px 10px;min-height:36px;}
#merciUX .today-guide .progress {background:#ffffff40;margin:14px 0;}
#merciUX .today-guide .progress i {background:white;}
#merciUX .today-guide > .btn {background:white;color:#2850ce;width:100%;}
/* ---- 023-study.css ---- */
#merciUX .study-review-hero {margin:18px 0 26px;padding:22px;border-radius:22px;background:linear-gradient(135deg,var(--color-primary-600),#304cca);}
#merciUX .study-kicker {display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:700;}
#merciUX .study-kicker span:last-child {padding:5px 9px;border-radius:20px;background:#ffffff1f;font-size:11px;}
#merciUX .study-review-hero h2 {margin:19px 0 10px;font-size:26px;line-height:1.4;letter-spacing:-.055em;}
#merciUX .study-review-hero > p {color:var(--color-primary-50);margin:0 0 18px;font-size:12px;}
#merciUX .study-review-source {padding:15px 16px;margin:0 0 18px;border:1px solid #ffffff26;border-radius:13px;background:#ffffff12;}
#merciUX .study-review-source > span {display:block;font-size:11px;color:var(--color-primary-50);margin-bottom:6px;}
#merciUX .study-review-source b {display:block;font-size:14px;line-height:1.5;}
#merciUX .study-review-source > div {font-size:12px;margin-top:6px;}
#merciUX .study-review-source strong {font-size:26px;margin-right:4px;}
#merciUX .study-memory {display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:15px;padding-top:14px;border-top:1px solid #ffffff30;}
#merciUX .study-memory > span {font-size:11px;color:var(--color-primary-50);line-height:1.5;}
#merciUX .study-memory .btn {flex-shrink:0;margin:0;}
#merciUX .study-material-foot {margin:22px 0 8px;padding:18px 0;border-top:1px solid var(--color-primary-50);display:flex;flex-direction:column;align-items:flex-start;gap:7px;}
#merciUX .study-material-foot b {font-size:12px;color:var(--text-secondary);}
/* ---- 024-common.css ---- */
/* 복원본 암기모드 행: 공용 버튼 width:100%로 인한 텍스트 압축 방지 */
/* ---- 025-study.css ---- */
#merciUX .study-memory > span {flex:1 1 auto;min-width:0;word-break:keep-all;}
#merciUX .study-memory .btn {flex:0 0 auto;width:auto;min-width:104px;max-width:55%;margin:0;white-space:nowrap;}
#merciUX .study-content-list {border:1px solid var(--color-primary-50);border-radius:16px;background:var(--bg-card);overflow:hidden;margin-bottom:8px;}
#merciUX .study-content-row {display:flex;align-items:center;gap:12px;width:100%;padding:17px 14px;border:0;border-bottom:1px solid var(--color-primary-50);background:transparent;text-align:left;font:inherit;cursor:pointer;color:inherit;}
#merciUX .study-content-row:last-child {border-bottom:0;}
#merciUX .study-content-row .copy {flex:1;min-width:0;}
#merciUX .study-content-row .copy b {display:block;font-size:14px;line-height:1.5;word-break:keep-all;}
#merciUX .study-content-row .copy small {display:block;font-size:12px;color:var(--text-secondary);margin-top:5px;}
#merciUX .study-action {flex-shrink:0;padding:7px 9px;border-radius:9px;background:var(--color-primary-50);color:#315ce5;font-size:11px;font-weight:700;white-space:nowrap;}
#merciUX .study-review-list {padding:0 12px 12px;background:var(--color-primary-50);border-radius:16px;}
#merciUX .study-review-list .listrow {background:transparent;}
#merciUX .study-review-list > .muted {padding-top:14px;}
/* ---- 026-materials.css ---- */
#merciUX .record-preview {display:flex;align-items:center;gap:12px;width:100%;padding:14px;margin:8px 0;border:0;border-radius:12px;background:var(--color-gray-100);text-align:left;color:inherit;cursor:pointer;}
#merciUX .record-preview-body {display:block;min-width:0;flex:1;}
#merciUX .record-source {display:block;font-size:11px;color:var(--text-secondary);line-height:1.5;margin-bottom:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
#merciUX .record-excerpt {display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;font-size:13px;line-height:1.6;margin:4px 0;}
#merciUX .record-highlight {background:var(--color-warning-light);border-radius:3px;padding:2px 4px;}
#merciUX .record-photo {display:block;width:100%;height:86px;object-fit:cover;object-position:top;border-radius:6px;margin-top:8px;}
#merciUX .record-date {font-size:13px;font-weight:700;margin:24px 0 9px;color:var(--text-secondary);}
#merciUX .record-full {white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7;}
#merciUX .record-full-photo {display:block;max-width:100%;height:auto;margin:12px 0;}
/* ---- 027-study.css ---- */
#merciUX .study-pair {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;border-top:1px solid var(--color-primary-50);border-bottom:1px solid var(--color-primary-50);padding:20px 0;margin:20px 0;}
#merciUX .study-pair h3 {font-size:15px;margin:0 0 8px;}
#merciUX .study-pair .btn {width:100%;padding:10px 6px;}
#merciUX .study-pair .textbtn {font-size:12px;text-align:left;}
#merciUX .study-heading {display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:22px;}
#merciUX .study-heading h3 {margin:0;}
/* ---- 028-common.css ---- */
/* 공부하기 · 자료 · 기록: 기존 동선 유지, 화면별 시각 위계 통일 */
/* ---- 029-study.css ---- */
#merciUX .study-design {color:var(--text-primary);padding-bottom:20px;}
#merciUX .study-design > h2 {font-size:23px;letter-spacing:-.7px;margin:4px 0 20px;}
#merciUX .study-design .tabs {margin-bottom:26px;}
#merciUX .study-design .tabs button {font-size:15px;padding:13px 8px;}
#merciUX .study-design .study-heading {margin:26px 0 16px;gap:12px;}
#merciUX .study-design .study-heading h3 {flex:0 0 auto;white-space:nowrap;font-size:14px;font-weight:700;color:var(--text-secondary);letter-spacing:-.2px;}
#merciUX .study-select-link {flex:0 0 auto;width:auto;min-height:40px;padding:6px 0 6px 12px;margin:0;background:transparent;border:0;border-radius:0;color:var(--text-secondary);font-size:12px;font-weight:600;white-space:nowrap;}
#merciUX .study-select-link span {margin-left:4px;font-size:17px;color:var(--text-muted);}
#merciUX .study-design .study-content-name {font-size:20px;font-weight:750;line-height:1.5;letter-spacing:-.6px;margin:0 0 7px;word-break:keep-all;overflow-wrap:anywhere;}
#merciUX .study-design .study-progress-label {font-size:12px;line-height:1.6;color:var(--text-muted);margin:0 0 22px;}
#merciUX .study-design > .btn {min-height:48px;border-radius:12px;font-size:14px;font-weight:700;margin-top:12px;}
#merciUX .study-design .study-pair {gap:0;padding:24px 0;margin:28px 0 22px;border-color:var(--color-gray-100);}
#merciUX .study-design .study-pair > div {min-width:0;padding:0 16px;display:flex;flex-direction:column;align-items:stretch;}
#merciUX .study-design .study-pair > div:first-child {padding-left:0;border-right:1px solid var(--color-gray-100);}
#merciUX .study-design .study-pair > div:last-child {padding-right:0;}
#merciUX .study-design .study-pair h3 {font-size:13px;color:var(--text-secondary);font-weight:650;line-height:1.5;}
#merciUX .study-design .study-count {display:flex;align-items:baseline;gap:5px;margin:4px 0 14px;min-height:39px;}
#merciUX .study-design .study-count strong {font-size:30px;line-height:1.3;font-weight:750;letter-spacing:-1px;color:var(--text-primary);}
#merciUX .study-design .study-count span {font-size:12px;color:var(--text-muted);}
#merciUX .study-design .study-pair .btn {margin:0;min-height:40px;padding:10px 4px;border-radius:9px;background:var(--color-primary-50);color:#3768a8;font-size:12px;font-weight:650;}
#merciUX .study-design .study-pair .textbtn {margin-top:8px;min-height:36px;font-size:11px;color:var(--text-muted);padding:6px 0;}
#merciUX .study-design .review-empty {font-size:11px;color:var(--text-muted);min-height:40px;margin:0;display:flex;align-items:center;}
#merciUX .study-design .study-book-resume .study-content-row {padding:0;gap:12px;align-items:center;}
#merciUX .study-design .study-book-resume .tileicon {display:none;}
#merciUX .study-design .study-book-resume .copy b {font-size:17px;line-height:1.5;letter-spacing:-.4px;}
#merciUX .study-design .study-book-resume .copy small {font-size:12px;margin-top:7px;color:var(--text-muted);}
#merciUX .study-design .study-action {flex-shrink:0;background:var(--color-primary-50);color:#3768a8;border-radius:9px;padding:11px 12px;font-size:12px;font-weight:650;}
#merciUX .study-design-study > .textbtn:last-child {display:block;margin:30px auto 0;color:var(--text-muted);font-size:12px;}
#merciUX .study-design .section {margin:28px 0 10px;}
#merciUX .study-design .section h3 {font-size:14px;letter-spacing:-.3px;color:var(--text-secondary);}
#merciUX .study-design .section .textbtn {font-size:12px;color:var(--text-muted);}
#merciUX .study-design .listrow {padding:17px 0;gap:12px;border-color:var(--color-gray-100);}
#merciUX .study-design .listrow b {font-size:14px;font-weight:650;line-height:1.5;}
#merciUX .study-design .listrow small {font-size:11px;line-height:1.6;color:var(--text-muted);}
#merciUX .study-design .listrow small:empty {display:none;}
#merciUX .study-design .tileicon {width:34px;height:36px;flex:0 0 34px;border-radius:9px;background:var(--color-gray-100);color:var(--text-secondary);font-size:15px;}
#merciUX .study-design .material-tools {gap:9px;margin:15px 0 18px;}
#merciUX .study-design .material-tools .btn {margin:0;min-height:49px;padding:13px 8px;background:var(--color-gray-100);border:0;border-radius:10px;color:var(--text-secondary);font-size:12px;font-weight:600;}
#merciUX .study-design .acc {border:0;border-bottom:1px solid var(--color-gray-100);border-radius:0;margin:0;background:transparent;}
#merciUX .study-design .acc.open {box-shadow:none;}
#merciUX .study-design .acc-head {padding:18px 0;min-height:58px;}
#merciUX .study-design .acc-copy b {font-size:14px;font-weight:650;color:var(--text-primary);}
#merciUX .study-design .acc-copy small:empty {display:none;}
#merciUX .study-design .acc-body {padding:0 0 14px;border:0;}
#merciUX .study-design .acc-body > .textbtn {display:block;width:100%;padding:12px 0;text-align:center;color:var(--text-secondary);font-size:12px;}
#merciUX .study-design .record-preview {padding:15px 14px;margin:9px 0;background:var(--bg-body);border-radius:11px;gap:12px;}
#merciUX .study-design .record-preview > span:last-child {font-size:18px;color:var(--text-muted);}
#merciUX .study-design .record-source {font-size:10px;color:var(--text-muted);margin-bottom:7px;}
#merciUX .study-design .record-excerpt {font-size:12px;line-height:1.7;}
#merciUX .study-design .record-highlight {background:var(--color-warning-light);}
#merciUX .study-design .record-date {font-size:12px;font-weight:650;margin:23px 0 10px;color:var(--text-secondary);}
#merciUX .study-design .record-photo {height:82px;margin-top:10px;border-radius:7px;}
#merciUX .study-design .pagebar h2 {font-size:19px;letter-spacing:-.5px;}
#merciUX .study-design .chips {gap:6px;flex-wrap:wrap;}
#merciUX .study-design .chip {font-size:12px;padding:8px 12px;border-radius:20px;}
#merciUX .study-design .empty-compact {font-size:12px;color:var(--text-muted);background:var(--bg-body);padding:22px 14px;border-radius:10px;}
#merciUX .study-design button:focus-visible {outline:2px solid var(--color-primary-700);outline-offset:3px;}
@media (max-width:360px) {
#merciUX .study-design .study-content-name {font-size:18px;}
#merciUX .study-design .study-pair > div {padding-left:11px;padding-right:11px;}
#merciUX .study-design .study-book-resume .study-content-row {flex-wrap:wrap;}
#merciUX .study-design .study-book-resume .copy {flex-basis:70%;}
}
/* ---- 030-common.css ---- */
#merciUX #button-flow-guide {margin:16px 0;padding:12px;border:1px solid var(--color-primary-50);border-radius:10px;background:var(--bg-card);}
#merciUX #button-flow-guide summary {font-weight:700;line-height:1.6;cursor:pointer;}
#merciUX #button-flow-guide p {font-size:12px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere;}
#merciUX #button-flow-guide h3 {font-size:14px;margin:22px 0 10px;}
#merciUX #button-flow-guide .flow-table-wrap {overflow-x:auto;}
#merciUX #button-flow-guide table {border-collapse:collapse;width:100%;font-size:11px;}
#merciUX #button-flow-guide td {padding:9px;border:1px solid var(--color-primary-50);vertical-align:top;min-width:105px;line-height:1.6;}
#merciUX #button-flow-guide tr:first-child {font-weight:700;background:var(--color-gray-100);}
/* 대표 화면: 문제 공부 + 독립적인 전체 오답/카드 복습을 한 영역으로 구성 */
/* ---- 031-study.css ---- */
#merciUX .study-design-study {--focus-navy:var(--color-navy-700);--focus-mint:var(--color-success-light);}
#merciUX .study-design-study > h2 {margin-bottom:10px;font-size:25px;}
#merciUX .study-design-study .tabs {margin-bottom:20px;}
#merciUX .focus-panel {overflow:hidden;background:var(--focus-navy);color:white;border-radius:24px;margin-bottom:26px;box-shadow:0 14px 28px #1539691a;}
#merciUX .focus-primary {padding:20px 22px 22px;}
#merciUX .focus-top {display:flex;align-items:center;justify-content:space-between;gap:10px;}
#merciUX .focus-label {font-size:13px;font-weight:800;color:var(--focus-mint);}
#merciUX .focus-label > span {margin-right:5px;}
#merciUX .focus-top button {background:transparent;color:var(--color-gray-300);font-size:11px;padding:8px 0;min-height:36px;}
#merciUX .focus-content {position:relative;min-height:123px;padding:18px 72px 18px 0;}
#merciUX .focus-kicker {font-size:11px;color:var(--color-gray-300);}
#merciUX .focus-content h3 {font-size:24px;line-height:1.35;letter-spacing:-1px;margin:8px 0 0;color:white;word-break:keep-all;overflow-wrap:anywhere;}
#merciUX .focus-visual {position:absolute;right:2px;top:34px;width:62px;height:78px;transform:rotate(9deg);}
#merciUX .focus-sheet {position:absolute;width:52px;height:66px;border-radius:9px;}
#merciUX .focus-sheet.back {background:#3672bb;transform:rotate(-22deg);left:-8px;top:-5px;}
#merciUX .focus-sheet.front {background:var(--color-primary-50);padding:13px 10px;box-shadow:0 8px 16px #081d3c33;}
#merciUX .focus-sheet i {display:block;height:3px;background:var(--color-gray-300);margin-bottom:5px;border-radius:3px;}
#merciUX .focus-sheet i:nth-child(2) {width:65%;}
#merciUX .focus-sheet b {display:block;color:var(--color-primary-600);font-size:25px;line-height:1;text-align:right;}
#merciUX .focus-stats {display:flex;justify-content:space-between;align-items:baseline;margin-top:6px;}
#merciUX .focus-stats strong {font-size:35px;line-height:1.2;letter-spacing:-1.5px;font-weight:750;}
#merciUX .focus-stats span span {font-size:12px;color:var(--color-gray-300);}
#merciUX .focus-percent {font-size:24px;font-weight:750;color:var(--focus-mint);}
#merciUX .focus-percent small {font-size:13px;margin-left:2px;}
#merciUX .focus-progress {height:7px;border-radius:9px;background:#ffffff20;margin:12px 0 8px;overflow:hidden;}
#merciUX .focus-progress i {display:block;height:100%;background:var(--focus-mint);border-radius:9px;}
#merciUX .focus-caption {display:flex;justify-content:space-between;color:var(--color-gray-300);font-size:10px;}
#merciUX .focus-cta {display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;margin-top:19px;padding:16px 18px;border-radius:12px;background:var(--focus-mint);color:var(--text-primary);font-size:15px;font-weight:800;min-height:54px;}
#merciUX .focus-cta:hover {background:var(--color-primary-50);}
#merciUX .focus-cta > span {font-size:23px;line-height:1;}
#merciUX .study-design-study .study-heading {margin:18px 0 12px;}
#merciUX .study-design-study .study-heading h3 {font-size:15px;color:var(--text-primary);}
#merciUX .study-design-study .study-book-resume {border-bottom:1px solid var(--color-primary-50);padding-bottom:18px;}
#merciUX .study-design-study .study-book-resume .copy b {font-size:15px;}
@media (max-width:380px) {
#merciUX .focus-primary {padding:18px;}
#merciUX .focus-content h3 {font-size:22px;}
}
/* ---- 032-common.css ---- */
/* 이론집과 내 자료: 공부하기와 같은 색, 곡률, 행동 위계 */
/* ---- 033-study.css ---- */
#merciUX .study-design-study .focus-panel {margin-bottom:14px;}
#merciUX .reading-panel {background:var(--color-primary-50);border-radius:24px;padding:19px 22px 22px;border:1px solid var(--color-primary-50);}
#merciUX .reading-top {display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;}
#merciUX .reading-label {font-size:13px;font-weight:800;color:var(--color-navy-500);}
#merciUX .reading-top button {background:transparent;color:var(--text-secondary);font-size:11px;min-height:32px;padding:5px 0;}
#merciUX .reading-content {display:flex;gap:17px;align-items:center;width:100%;text-align:left;background:transparent;padding:0;}
#merciUX .reading-cover {width:58px;height:79px;flex:0 0 58px;background:var(--color-navy-500);border-radius:3px 9px 9px 3px;box-shadow:inset 5px 0 #ffffff20,4px 5px 0 var(--color-primary-100);padding:15px 11px;color:var(--color-success-light);transform:rotate(-5deg);}
#merciUX .reading-cover i {display:block;height:3px;background:var(--color-gray-300);margin-bottom:6px;width:30px;}
#merciUX .reading-cover i:nth-child(2) {width:20px;}
#merciUX .reading-cover b {display:block;margin-top:16px;font-size:9px;letter-spacing:1px;}
#merciUX .reading-copy {min-width:0;flex:1;}
#merciUX .reading-copy > strong {display:block;font-size:17px;line-height:1.45;color:var(--color-navy-500);word-break:keep-all;overflow-wrap:anywhere;}
#merciUX .reading-copy small {display:block;font-size:11px;color:var(--text-secondary);margin:5px 0 12px;}
#merciUX .reading-action {display:flex;align-items:center;justify-content:space-between;color:var(--color-navy-500);font-size:12px;font-weight:800;min-height:28px;}
#merciUX .reading-action > span {font-size:20px;}
#merciUX .study-design-materials > h2 {margin-bottom:10px;font-size:25px;}
#merciUX .study-design-materials .tabs {margin-bottom:20px;}
/* ---- 034-common.css ---- */
#merciUX .materials-heading {display:flex;align-items:center;justify-content:space-between;gap:8px;margin:25px 0 12px;}
#merciUX .materials-heading h3 {font-size:15px;margin:0;color:var(--color-navy-500);}
#merciUX .materials-heading > span {font-size:10px;color:var(--text-secondary);}
/* ---- 035-study.css ---- */
#merciUX .study-design-materials .materials-imports .acc {background:var(--color-primary-50);border-radius:14px;border:0;padding:0 16px;}
#merciUX .study-design-materials .materials-imports .acc-head {padding:15px 0;}
#merciUX .study-design-materials .materials-imports .acc-copy {display:flex;align-items:center;gap:10px;}
#merciUX .study-design-materials .materials-imports .acc-copy small {margin:0;padding:2px 8px;border-radius:20px;background:var(--color-primary-50);color:#356292;font-size:11px;}
/* ---- 036-common.css ---- */
#merciUX .materials-saved {display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px;}
#merciUX .materials-saved button {position:relative;display:flex;flex-direction:column;align-items:flex-start;text-align:left;min-width:0;padding:16px 14px;border:1px solid var(--color-primary-50);background:white;border-radius:15px;}
#merciUX .saved-icon {font-size:23px;line-height:1;color:#3a6ba2;margin-bottom:15px;}
#merciUX .materials-saved button:last-child .saved-icon {color:var(--text-secondary);}
#merciUX .materials-saved strong {font-size:14px;color:var(--color-navy-500);}
#merciUX .materials-saved small {font-size:10px;color:var(--text-secondary);margin-top:4px;}
#merciUX .saved-arrow {position:absolute;right:14px;top:16px;color:var(--text-muted);}
/* ---- 037-study.css ---- */
#merciUX .study-design-materials .materials-memos .acc {border-top:1px solid var(--color-primary-50);border-bottom:1px solid var(--color-primary-50);}
#merciUX .study-design-materials .materials-memos .acc-copy small {color:var(--text-muted);font-size:11px;margin-top:4px;}
#merciUX .study-design-materials .materials-memos .record-strip {border:1px solid var(--color-primary-50);border-radius:12px;padding:14px;margin-bottom:10px;background:var(--bg-body);}
/* ---- 038-common.css ---- */
#merciUX .materials-history {display:flex;align-items:center;gap:12px;width:100%;padding:19px 0;background:transparent;text-align:left;}
#merciUX .history-icon {display:grid;place-items:center;flex:0 0 38px;height:38px;background:var(--color-primary-50);color:var(--text-secondary);border-radius:12px;font-size:23px;}
#merciUX .materials-history > span:nth-child(2) {flex:1;min-width:0;}
#merciUX .materials-history strong {display:block;font-size:14px;color:var(--color-navy-500);}
#merciUX .materials-history small {display:block;font-size:10px;color:var(--text-secondary);margin-top:3px;}
#merciUX .materials-history > b {color:var(--text-secondary);}
/* ---- 039-study.css ---- */
@media (max-width:360px) {
#merciUX .reading-panel {padding:16px 18px;}
#merciUX .materials-saved button {padding:14px 11px;}
}
/* ---- 040-common.css ---- */
/* 홈 클래스의 블루·네이비·그린·샌드 컬러를 네 주요 진입에 동일하게 적용 */
/* ---- 041-materials.css ---- */
#merciUX .material-launch-heading {margin:2px 0 17px;}
#merciUX .material-launch-heading h3 {font-size:20px;line-height:1.4;margin:0 0 5px;letter-spacing:-.6px;color:var(--text-primary);}
#merciUX .material-launch-heading p {font-size:12px;line-height:1.6;color:var(--text-secondary);margin:0;}
#merciUX .material-launch-list {display:grid;gap:11px;}
/* ---- 042-common.css ---- */
#merciUX .launch-card {display:flex;position:relative;align-items:center;gap:12px;width:100%;min-height:105px;padding:22px 20px;border-radius:17px;overflow:hidden;text-align:left;color:white;}
#merciUX .launch-pdf {background:var(--color-primary-700);}
#merciUX .launch-explain {background:var(--color-navy-500);}
#merciUX .launch-archive {background:#377369;}
#merciUX .launch-code {background:#837054;}
#merciUX .launch-card:after {content:'';position:absolute;width:84px;height:84px;border:17px solid #ffffff12;border-radius:50%;right:4px;top:-18px;pointer-events:none;}
#merciUX .launch-copy {flex:1;min-width:0;position:relative;z-index:1;}
#merciUX .launch-copy strong {display:block;font-size:18px;line-height:1.4;letter-spacing:-.5px;color:white;}
#merciUX .launch-copy small {display:block;font-size:10px;line-height:1.6;color:#ffffffd9;margin-top:6px;}
#merciUX .launch-art {display:grid;place-items:center;flex:0 0 35px;width:35px;height:43px;border:1px solid #ffffff80;border-radius:5px;background:#ffffff12;color:white;font-size:19px;font-weight:750;transform:rotate(9deg);position:relative;z-index:1;margin-right:8px;}
#merciUX .launch-pdf .launch-art {font-size:10px;letter-spacing:.5px;}
#merciUX .launch-arrow {position:absolute;right:14px;bottom:10px;color:#ffffffb3;font-size:14px;}
#merciUX .launch-card:hover {filter:brightness(1.07);}
#merciUX .materials-saved {display:flex;flex-direction:column;gap:0;border-bottom:1px solid var(--color-primary-50);}
#merciUX .materials-saved button {display:grid;grid-template-columns:38px 1fr 18px;column-gap:12px;row-gap:3px;border:0;border-radius:0;padding:17px 2px;border-bottom:1px solid var(--color-primary-50);align-items:center;}
#merciUX .materials-saved button:last-child {border-bottom:0;}
#merciUX .materials-saved .saved-icon {grid-row:1/3;margin:0;width:38px;height:42px;border-radius:10px;display:grid;place-items:center;background:var(--color-primary-50);}
#merciUX .materials-saved button:last-child .saved-icon {background:var(--color-gray-100);}
#merciUX .materials-saved strong {grid-column:2;grid-row:1;}
#merciUX .materials-saved small {grid-column:2;grid-row:2;margin:0;}
#merciUX .materials-saved .saved-arrow {grid-column:3;grid-row:1/3;position:static;}
@media (max-width:360px) {
#merciUX .launch-card {padding:19px 16px;min-height:100px;gap:7px;}
#merciUX .launch-copy strong {font-size:16px;}
#merciUX .launch-copy small {font-size:9px;}
}
/* 오늘도 홈 클래스 색상과 버튼 표현으로 통일 */
/* ---- 043-study.css ---- */
#merciUX .study-design-study {--focus-navy:var(--color-primary-700);--focus-mint:var(--bg-card);}
#merciUX .focus-panel {border-radius:19px;box-shadow:none;}
#merciUX .focus-primary {position:relative;padding:18px 22px 22px;overflow:hidden;}
#merciUX .focus-primary:before {content:'';position:absolute;right:-30px;top:-40px;width:160px;height:160px;border:26px solid #ffffff0c;border-radius:50%;pointer-events:none;}
#merciUX .focus-top {position:relative;z-index:1;}
#merciUX .focus-label {color:white;}
#merciUX .focus-top button {color:var(--color-primary-50);}
#merciUX .focus-kicker {color:var(--color-primary-50);}
#merciUX .focus-content {min-height:115px;padding-top:17px;}
#merciUX .focus-sheet.back {background:#8cbaee;}
#merciUX .focus-stats span span,#merciUX .focus-caption {color:var(--color-primary-50);}
#merciUX .focus-progress {background:#ffffff30;}
#merciUX .focus-cta {background:white;color:var(--color-primary-800);border-radius:11px;margin-top:17px;}
#merciUX .focus-cta:hover {background:var(--color-primary-50);}
#merciUX .reading-panel {background:var(--color-gray-100);border:1px solid var(--border-light);border-radius:19px;}
#merciUX .reading-label {color:#377369;}
#merciUX .reading-top button {color:var(--text-secondary);}
#merciUX .reading-cover {background:#377369;box-shadow:inset 5px 0 #ffffff20,4px 5px 0 var(--color-gray-300);}
#merciUX .reading-cover i {background:var(--color-primary-100);}
#merciUX .reading-cover b {color:white;}
#merciUX .reading-copy > strong {color:var(--text-primary);}
#merciUX .reading-copy small {color:var(--text-secondary);}
#merciUX .reading-action {color:#377369;}
/* ---- 044-common.css ---- */
/* 균형안: 문제 공부는 압축하고 복습은 두 줄, 이론집은 독립 학습 카드로 강조 */
/* ---- 045-study.css ---- */
#merciUX .focus-primary {padding:16px 22px 19px;}
#merciUX .focus-content {min-height:0;padding:10px 68px 15px 0;}
#merciUX .focus-content h3 {font-size:22px;margin-top:5px;}
#merciUX .focus-kicker {font-size:10px;}
#merciUX .focus-visual {top:16px;transform:scale(.85) rotate(9deg);transform-origin:right top;}
#merciUX .focus-stats {margin-top:3px;}
#merciUX .focus-stats strong {font-size:28px;}
#merciUX .focus-percent {font-size:21px;}
#merciUX .focus-progress {margin-top:9px;height:6px;}
#merciUX .focus-cta {min-height:48px;padding:12px 16px;margin-top:14px;}
#merciUX .study-design-study .focus-panel {margin-bottom:16px;}
#merciUX .reading-panel {background:#377369;color:white;border:0;padding:18px 22px 22px;position:relative;overflow:hidden;}
#merciUX .reading-panel:before {content:'';position:absolute;width:112px;height:112px;border:22px solid #ffffff0c;border-radius:50%;right:-35px;top:-42px;pointer-events:none;}
#merciUX .reading-top {position:relative;margin-bottom:16px;}
#merciUX .reading-label {color:white;font-size:13px;}
#merciUX .reading-top button {color:var(--color-primary-50);}
#merciUX .reading-content {gap:17px;align-items:flex-start;position:relative;}
#merciUX .reading-cover {width:51px;flex-basis:51px;height:74px;background:var(--border-light);box-shadow:inset 5px 0 var(--color-gray-300),3px 4px 0 #234f4940;color:#377369;padding:15px 10px;margin-top:5px;}
#merciUX .reading-cover i {background:var(--text-secondary);width:26px;}
#merciUX .reading-cover b {color:#377369;margin-top:12px;}
#merciUX .reading-copy > strong {font-size:21px;line-height:1.4;color:white;letter-spacing:-.6px;}
#merciUX .reading-copy small {color:var(--color-primary-100);font-size:11px;margin-top:7px;margin-bottom:18px;}
#merciUX .reading-action {background:white;color:#326b60;min-height:43px;padding:9px 13px;border-radius:10px;font-size:13px;}
@media (max-width:360px) {
#merciUX .focus-primary {padding:15px 18px 18px;}
#merciUX .reading-panel {padding:17px 18px 20px;}
#merciUX .reading-copy > strong {font-size:19px;}
}
/* ---- 046-common.css ---- */
/* 문제·오답·카드·이론집 독립 구성, 보조 선택은 모두 우측 상단 */
/* ---- 047-study.css ---- */
#merciUX .review-independent {border-radius:19px;padding:17px 22px 19px;margin-bottom:16px;}
#merciUX .review-wrong {background:var(--color-primary-50);color:var(--color-navy-500);}
#merciUX .review-memory {background:var(--color-gray-100);color:#786447;}
#merciUX .independent-top {display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;}
#merciUX .independent-top h3 {font-size:13px;line-height:1.5;margin:0;font-weight:800;color:inherit;}
#merciUX .independent-top > button {background:transparent;color:inherit;font-size:11px;min-height:32px;padding:5px 0;}
#merciUX .independent-body {display:flex;align-items:center;justify-content:space-between;gap:14px;}
#merciUX .independent-body p {font-size:11px;margin:0 0 3px;}
#merciUX .independent-body p strong {font-size:28px;line-height:1.2;letter-spacing:-.8px;margin-right:4px;}
#merciUX .independent-body small {display:block;font-size:10px;opacity:.8;}
#merciUX .independent-action {flex-shrink:0;min-height:43px;padding:10px 15px;border-radius:10px;background:white;font-size:12px;font-weight:800;color:inherit;}
#merciUX .independent-empty {font-size:11px;max-width:120px;text-align:right;}
@media (max-width:360px) {
#merciUX .review-independent {padding:15px 18px 17px;}
#merciUX .independent-action {padding:10px 12px;}
}
/* ---- 048-common.css ---- */
/* 동일한 블루 색상군과 정사각형 2×2 자료 진입 */
/* ---- 049-study.css ---- */
#merciUX .study-design-study {--focus-navy:var(--color-primary-800);}
#merciUX .review-wrong,#merciUX .review-memory {background:var(--color-primary-50);color:#315c94;}
#merciUX .reading-panel {background:var(--color-primary-800);color:white;}
#merciUX .reading-label {color:white;}
#merciUX .reading-top button {color:var(--color-primary-50);}
#merciUX .reading-copy small {color:var(--color-primary-50);}
#merciUX .reading-cover {background:var(--color-primary-50);box-shadow:inset 5px 0 var(--color-gray-300),3px 4px 0 #194a8a40;color:#315c94;}
#merciUX .reading-cover i {background:var(--text-muted);}
#merciUX .reading-cover b {color:#315c94;}
#merciUX .reading-action {color:var(--color-primary-800);}
/* ---- 050-materials.css ---- */
#merciUX .material-launch-list {grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
/* ---- 051-common.css ---- */
#merciUX .launch-card {aspect-ratio:1;min-height:0;padding:18px 16px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:0;border-radius:17px;}
#merciUX .launch-pdf {background:var(--color-primary-800);}
#merciUX .launch-explain {background:#355f9d;}
#merciUX .launch-archive {background:#396cab;}
#merciUX .launch-code {background:var(--text-secondary);}
#merciUX .launch-copy {flex:0 0 auto;width:100%;}
#merciUX .launch-copy strong {font-size:16px;line-height:1.4;letter-spacing:-.6px;word-break:keep-all;}
#merciUX .launch-copy small {font-size:10px;line-height:1.5;margin-top:7px;padding-right:3px;word-break:keep-all;}
#merciUX .launch-art {position:absolute;left:17px;top:17px;width:28px;height:34px;min-height:34px;margin:0;font-size:17px;transform:rotate(-7deg);}
#merciUX .launch-pdf .launch-art {font-size:9px;}
#merciUX .launch-arrow {top:15px;right:16px;bottom:auto;font-size:18px;}
#merciUX .launch-card:after {width:77px;height:77px;right:-20px;top:-23px;border-width:15px;}
#merciUX .materials-saved button:last-child .saved-icon {background:var(--color-primary-50);color:#3a6ba2;}
/* ---- 052-materials.css ---- */
@media (max-width:360px) {
#merciUX .material-launch-list {gap:10px;}
#merciUX .launch-card {padding:12px;min-height:0;}
#merciUX .launch-copy strong {font-size:14px;letter-spacing:-.7px;}
#merciUX .launch-copy small {font-size:9px;margin-top:5px;}
#merciUX .launch-art {left:13px;top:12px;width:23px;height:27px;min-height:27px;font-size:14px;}
#merciUX .launch-arrow {top:10px;right:12px;font-size:16px;}
}
/* ---- 053-common.css ---- */
/* 복습은 나란히, 주 학습 카드 버튼은 같은 전체 폭 */
/* ---- 054-study.css ---- */
#merciUX .reading-content {display:grid;grid-template-columns:51px minmax(0,1fr);gap:0 17px;}
#merciUX .reading-copy {display:contents;}
#merciUX .reading-cover {grid-column:1;grid-row:1/3;}
#merciUX .reading-copy > strong {grid-column:2;grid-row:1;align-self:end;}
#merciUX .reading-copy > small {grid-column:2;grid-row:2;margin-bottom:0;min-height:34px;}
#merciUX .reading-action {grid-column:1/3;margin-top:20px;min-height:48px;padding:12px 16px;}
/* ---- 055-common.css ---- */
@media (max-width:360px) {
}
/* 이론집 → 오늘 오답 → 암기카드: 동일 크기·색·정렬 */
/* ---- 056-study.css ---- */
#merciUX .study-design-study > .review-independent {height:146px;min-height:146px;margin-bottom:14px;padding:16px 20px 18px;background:var(--color-primary-50);color:#315c94;border-radius:19px;display:flex;flex-direction:column;}
#merciUX .study-design-study > .review-independent .independent-top {flex:0 0 32px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;margin:0 0 10px;gap:8px;}
#merciUX .study-design-study > .review-independent .independent-top h3 {font-size:13px;}
#merciUX .study-design-study > .review-independent .independent-top > button {font-size:10px;min-height:32px;}
#merciUX .study-design-study > .review-independent .independent-body {display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;flex:1;min-height:0;}
#merciUX .study-design-study > .review-independent .independent-body > div {min-width:0;flex:1;}
#merciUX .study-design-study > .review-independent .independent-action {min-width:92px;min-height:43px;padding:10px 12px;font-size:12px;border-radius:10px;}
#merciUX .reading-unified-copy > strong {display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:15px;line-height:1.4;letter-spacing:-.5px;word-break:keep-all;}
#merciUX .reading-unified-copy > small {margin-top:5px;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
@media (max-width:360px) {
#merciUX .study-design-study > .review-independent {padding:14px 16px 16px;}
#merciUX .study-design-study > .review-independent .independent-body {gap:9px;}
#merciUX .study-design-study > .review-independent .independent-action {min-width:82px;padding:10px 9px;font-size:11px;}
#merciUX .reading-unified-copy > strong {font-size:14px;}
}
/* ---- 057-common.css ---- */
#merciUX .materials-saved .saved-icon svg {width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
/* 기능 설명 핀: 원래 버튼 동작을 막지 않는 별도 검토 레이어 */
#merciUX .status {align-items:center;gap:8px;}
/* ---- 059-common.css ---- */
/* 학습기록: 저장 자료와 같은 하위 목록 행, 펼침 기능 유지 */
/* ---- 060-study.css ---- */
#merciUX .study-design-materials .materials-memos .acc {border-top:0;border-bottom:1px solid var(--color-primary-50);}
#merciUX .study-design-materials .materials-memos .acc-head {display:flex;align-items:center;gap:12px;padding:17px 2px;min-height:77px;}
/* ---- 061-common.css ---- */
#merciUX .history-row-icon {width:38px;height:42px;flex:0 0 38px;display:grid;place-items:center;border-radius:10px;background:var(--color-primary-50);color:#3a6ba2;}
#merciUX .history-row-icon svg {width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
/* ---- 062-study.css ---- */
#merciUX .study-design-materials .materials-memos .acc-copy {flex:1;min-width:0;}
#merciUX .study-design-materials .materials-memos .acc-copy b {font-size:14px;font-weight:700;color:var(--color-navy-500);}
#merciUX .study-design-materials .materials-memos .acc-copy small {font-size:10px;color:var(--text-secondary);margin-top:3px;}
#merciUX .study-design-materials .materials-memos .acc-caret {width:18px;text-align:center;color:var(--text-muted);}
/* ---- 063-library.css ---- */
#merciUX .library-title-row {display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 0 12px;}
#merciUX .library-title-row h2 {min-width:0;margin:0;line-height:1.4;word-break:keep-all;}
#merciUX .library-tools-shortcut {display:flex;align-items:center;justify-content:center;gap:5px;flex-shrink:0;min-height:36px;padding:7px 10px;border:1px solid var(--color-primary-50);background:var(--color-primary-50);color:#386397;border-radius:10px;font-size:11px;font-weight:700;}
#merciUX .library-tools-shortcut svg {width:16px;height:16px;stroke-width:1.6;}
#merciUX .library-tools-shortcut:hover {background:var(--color-primary-50);}
@media (max-width:360px) {
#merciUX .library-title-row {gap:8px;}
#merciUX .library-title-row h2 {font-size:21px;}
#merciUX .library-tools-shortcut {padding:7px 8px;font-size:10px;}
}
#merciUX .library-recent {margin:20px 0 21px;}
#merciUX .library-recent-title {display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;}
#merciUX .library-recent-title h3 {margin:0;font-size:14px;color:var(--color-navy-500);}
#merciUX .library-recent-title > span {font-size:10px;color:var(--text-muted);}
#merciUX .library-recent-track {display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding:3px 0 6px;scrollbar-width:thin;}
#merciUX .library-recent-card {display:flex;align-items:center;gap:12px;flex:0 0 272px;max-width:90%;padding:15px;border-radius:14px;border:1px solid var(--color-primary-50);background:var(--color-primary-50);text-align:left;scroll-snap-align:start;}
#merciUX .library-recent-icon {display:grid;place-items:center;flex:0 0 36px;height:44px;border-radius:8px;background:var(--color-primary-50);color:#3264a4;font-size:20px;font-weight:800;}
#merciUX .library-recent-copy {min-width:0;}
#merciUX .library-recent-copy strong {display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--color-navy-500);font-size:13px;line-height:1.5;}
#merciUX .library-recent-copy small {display:block;color:var(--text-muted);font-size:10px;margin:4px 0;}
#merciUX .library-recent-copy b {display:block;color:var(--color-primary-800);font-size:11px;}
/* ---- 064-common.css ---- */
/* 홈 클래스와 동일한 터치 가로 탐색, 기존 서재 썸네일 재사용 */
/* ---- 065-library.css ---- */
#merciUX .library-recent-track {gap:12px;scroll-snap-type:x mandatory;scroll-padding-inline:0;overscroll-behavior-x:contain;scrollbar-width:none;padding:3px 0 8px;}
#merciUX .library-recent-track::-webkit-scrollbar {display:none;}
#merciUX .library-recent-card {flex:0 0 82%;max-width:310px;gap:12px;padding:12px;scroll-snap-align:start;}
#merciUX .library-recent-thumb {position:relative;display:block;flex:0 0 78px;width:78px;height:78px;border-radius:9px;overflow:hidden;background:var(--color-primary-50);}
#merciUX .library-recent-thumb img {display:block;width:100%;height:100%;object-fit:contain;}
#merciUX .library-recent-placeholder {display:grid;place-items:center;width:100%;height:100%;padding:7px;color:var(--text-muted);font-size:9px;text-align:center;}
#merciUX .library-recent-copy {flex:1;}
@media (max-width:360px) {
#merciUX .library-recent-card {gap:10px;padding:10px;}
#merciUX .library-recent-thumb {flex-basis:62px;width:62px;height:70px;}
#merciUX .library-recent-copy strong {font-size:12px;}
}
/* ---- 066-common.css ---- */
/* 수강권 목록과 동일하게 외곽 카드 없이 썸네일과 제목을 배치 */
/* ---- 067-library.css ---- */
#merciUX .library-recent-track {gap:13px;}
#merciUX .library-recent-card {display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;flex:0 0 145px;max-width:none;padding:0;border:0;border-radius:0;background:transparent;}
#merciUX .library-recent-thumb {flex:none;width:100%;height:auto;aspect-ratio:16/10;border-radius:10px;background:var(--color-primary-50);}
#merciUX .library-recent-copy {flex:1;padding:9px 1px 0;}
#merciUX .library-recent-copy strong {font-size:12px;line-height:1.5;min-height:36px;}
#merciUX .library-recent-copy small {font-size:10px;margin-top:5px;}
#merciUX .library-recent-copy b {font-size:11px;margin-top:4px;}
@media (max-width:360px) {
#merciUX .library-recent-card {flex-basis:132px;padding:0;gap:0;}
#merciUX .library-recent-thumb {flex:none;width:100%;height:auto;}
}
#merciUX .class-access-line {display:flex;align-items:center;gap:8px;width:100%;min-height:46px;padding:11px 13px;margin:15px 0 18px;background:var(--color-primary-50);border:0;border-radius:10px;text-align:left;color:#365c86;}
/* ---- 068-common.css ---- */
#merciUX .access-check {display:grid;place-items:center;flex:0 0 18px;width:18px;height:18px;border-radius:50%;background:var(--color-primary-50);color:#37679e;font-size:11px;font-weight:800;}
/* ---- 069-library.css ---- */
#merciUX .class-access-line strong {flex:1;min-width:0;font-size:12px;line-height:1.5;font-weight:650;}
/* ---- 070-common.css ---- */
#merciUX .access-link {flex-shrink:0;font-size:10px;color:var(--text-secondary);}
/* ---- 071-library.css ---- */
@media (max-width:360px) {
#merciUX .class-access-line {gap:6px;padding:10px;}
#merciUX .class-access-line strong {font-size:11px;}
#merciUX .access-link {font-size:9px;}
}
#merciUX .library-plan-guide {margin:15px 0 18px;padding:18px;border-radius:14px;background:var(--color-primary-50);border:1px solid var(--color-primary-50);}
/* ---- 072-common.css ---- */
#merciUX .plan-guide-kicker {font-size:10px;font-weight:750;color:var(--text-secondary);}
/* ---- 073-library.css ---- */
#merciUX .library-plan-guide h3 {font-size:17px;line-height:1.4;color:var(--color-navy-500);margin:6px 0 8px;letter-spacing:-.5px;}
#merciUX .library-plan-guide p {font-size:12px;line-height:1.8;color:var(--text-secondary);margin:0 0 13px;}
/* ---- 074-common.css ---- */
#merciUX .plan-guide-cta {display:flex;align-items:center;justify-content:space-between;width:100%;min-height:43px;padding:10px 13px;border-radius:10px;background:var(--color-primary-800);color:white;font-size:12px;font-weight:750;}
/* ---- 075-library.css ---- */
#merciUX .library-plan-active {padding:15px 17px;}
#merciUX .library-plan-active h3 {font-size:14px;margin:5px 0 9px;}
/* ---- 076-common.css ---- */
#merciUX .plan-guide-links {display:flex;align-items:center;justify-content:space-between;gap:12px;}
#merciUX .plan-guide-links button {background:transparent;color:#35669d;padding:7px 0;min-height:34px;font-size:11px;font-weight:700;}
/* ---- 077-library.css ---- */
#merciUX .library-plan-active {display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px;padding:7px 13px;margin:12px 0 14px;border:0;border-radius:10px;}
/* ---- 078-common.css ---- */
#merciUX .plan-active-status {font-size:12px;font-weight:650;color:#365c86;}
#merciUX .plan-active-status > span {margin-right:5px;color:#4679b1;}
/* ---- 079-library.css ---- */
#merciUX .library-plan-active > button {flex-shrink:0;background:transparent;color:#35669d;font-size:11px;font-weight:700;min-height:30px;padding:5px 0;}
/* ---- 080-common.css ---- */
/* 보조 학습 카드는 흰색 표면과 부드러운 그림자로 분리 */
/* ---- 081-study.css ---- */
#merciUX .study-design-study > .review-independent {background:var(--bg-card);border:1px solid var(--color-primary-50);box-shadow:0 5px 18px rgba(33,67,111,.07);}
/* ---- 082-common.css ---- */
/* 의료 편집숍 분위기의 하단 내비게이션: 둥근 선과 은은한 이중 색상 */
#merciUX nav {padding-top:8px;border-top:1px solid var(--color-primary-50);background:var(--bg-card);}
#merciUX nav button {position:relative;gap:5px;padding:6px 2px 3px;color:var(--text-muted);font-size:10px;letter-spacing:-.3px;min-height:52px;}
#merciUX nav button svg {width:25px;height:25px;stroke-width:1.55;overflow:visible;}
#merciUX nav .nav-icon-wash {fill:var(--color-primary-50);stroke:none;}
#merciUX nav .nav-icon-accent {stroke:var(--text-muted);stroke-width:1.8;}
#merciUX nav button.active {color:var(--color-primary-700);}
#merciUX nav button.active .nav-icon-wash {fill:var(--color-primary-50);}
#merciUX nav button.active .nav-icon-accent {stroke:#298995;}
#merciUX nav button.active::after {content:'';position:absolute;top:-8px;width:16px;height:3px;border-radius:0 0 3px 3px;background:var(--color-primary-700);}
/* ---- 083-study.css ---- */
#merciUX .study-design-materials .material-launch {margin-top:30px;padding-top:24px;border-top:1px solid var(--color-primary-50);}
/* ---- 085-achievement.css ---- */
#merciUX .achievement-dashboard {padding-bottom:18px;}
#merciUX .achievement-hero {padding:20px 2px 25px;}
#merciUX .achievement-eyebrow {font-size:11px;font-weight:700;color:var(--text-secondary);}
#merciUX .achievement-hero h2 {margin:12px 0 20px;font-size:27px;line-height:1.4;color:var(--color-navy-500);}
#merciUX .achievement-total {display:flex;align-items:baseline;gap:9px;color:var(--color-primary-700);}
#merciUX .achievement-total strong {font-size:64px;font-weight:800;line-height:1.1;letter-spacing:-3px;}
#merciUX .achievement-total span {font-size:14px;font-weight:700;}
#merciUX .achievement-hero > p {font-size:11px;color:var(--text-muted);margin:9px 0 0;}
#merciUX .achievement-recovery {display:flex;align-items:center;justify-content:space-between;gap:10px;padding:20px 18px;background:var(--color-gray-100);border-radius:17px;color:var(--color-navy-500);}
#merciUX .achievement-recovery span {font-size:11px;}
#merciUX .achievement-recovery strong {display:block;font-size:16px;line-height:1.5;margin-top:6px;font-weight:600;}
#merciUX .achievement-recovery strong b {font-weight:800;color:#267680;}
#merciUX .achievement-recovery p {margin:7px 0 0;font-size:10px;color:var(--text-secondary);}
#merciUX .achievement-recovery .achievement-spark {font-size:34px;color:#65a6ad;}
#merciUX .achievement-section {padding:27px 0 20px;border-bottom:1px solid var(--color-primary-50);}
#merciUX .achievement-section-head {display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:20px;}
#merciUX .achievement-section-head h3 {font-size:15px;margin:0;}
#merciUX .achievement-section-head span {font-size:10px;color:var(--text-muted);}
#merciUX .achievement-week {display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;}
#merciUX .achievement-day {display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--text-muted);}
#merciUX .achievement-day > span, #merciUX .achievement-day small {font-size:10px;}
#merciUX .achievement-day i {display:grid;place-items:center;width:32px;height:32px;border-radius:12px;background:var(--color-gray-100);font-size:16px;font-style:normal;}
#merciUX .achievement-day.is-active i {background:var(--color-primary-50);color:#3476cc;}
#merciUX .achievement-day.is-today small {color:#3476cc;font-weight:800;}
#merciUX .achievement-day.is-today i {box-shadow:0 0 0 1px var(--text-muted);}
#merciUX .achievement-footnote {font-size:10px;color:var(--text-muted);line-height:1.7;margin:14px 0 0;}
#merciUX .achievement-progress {margin-top:18px;}
#merciUX .achievement-progress > div:first-child {display:flex;align-items:baseline;gap:12px;justify-content:space-between;}
#merciUX .achievement-progress strong {font-size:12px;font-weight:600;line-height:1.5;}
#merciUX .achievement-progress span {white-space:nowrap;font-size:10px;color:var(--text-secondary);}
#merciUX .achievement-track {height:5px;border-radius:8px;background:var(--color-primary-50);margin-top:10px;overflow:hidden;}
#merciUX .achievement-track i {display:block;height:100%;background:#73a0db;border-radius:8px;}
#merciUX .achievement-empty {font-size:12px;color:var(--text-muted);margin:0;}
/* ---- 086-study.css ---- */
#merciUX .study-picker-guide {font-size:12px;color:var(--text-secondary);margin:0 0 20px;}
/* ---- 087-library.css ---- */
#merciUX .study-picker-item.is-selected .library-thumb {outline:2px solid #3b80dc;outline-offset:2px;}
#merciUX .study-picker-item.is-selected .library-product-action {color:var(--color-primary-700);font-weight:800;}
/* ---- 088-achievement.css ---- */
#merciUX .achievement-mini {display:block;width:100%;padding:1px 6px 15px;margin:0 0 18px;background:transparent;text-align:left;border-bottom:1px solid var(--color-primary-50);}
#merciUX .achievement-mini-head {display:flex;align-items:center;justify-content:space-between;gap:10px;}
#merciUX .achievement-mini-head > span:first-child {display:flex;align-items:center;gap:8px;}
#merciUX .achievement-mini-head small {font-size:10px;color:var(--text-muted);}
#merciUX .achievement-mini-head strong {font-size:12px;font-weight:700;color:var(--text-secondary);}
#merciUX .achievement-mini-today {font-size:10px;color:var(--text-secondary);white-space:nowrap;}
#merciUX .achievement-mini-today b {color:#3479ce;font-size:13px;}
#merciUX .achievement-mini-today i {font-style:normal;font-size:15px;margin-left:6px;}
#merciUX .achievement-mini-chart {display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px;margin-top:9px;}
#merciUX .achievement-mini-day {display:flex;align-items:center;flex-direction:column;gap:4px;}
#merciUX .achievement-mini-bar {display:flex;align-items:flex-end;justify-content:center;height:26px;width:100%;}
#merciUX .achievement-mini-bar i {display:block;width:100%;max-width:24px;border-radius:4px 4px 2px 2px;background:var(--color-primary-50);}
#merciUX .achievement-mini-bar i.has-study {background:var(--color-gray-300);}
#merciUX .achievement-mini-day.is-today .has-study {background:#3e82d6;}
#merciUX .achievement-mini-day small {font-size:9px;color:var(--text-muted);}
#merciUX .achievement-mini-day.is-today small {color:#397acb;font-weight:700;}
#merciUX .achievement-mini-caption {display:block;font-size:9px;color:var(--text-muted);margin-top:8px;}
/* ---- 089-daily.css ---- */
#merciUX .daily-badge-page {text-align:center;padding:24px 6px;}
#merciUX .daily-badge-date {font-size:12px;color:var(--text-muted);}
#merciUX .daily-medal {position:relative;width:160px;height:174px;margin:24px auto 16px;}
#merciUX .daily-medal svg {width:160px;height:160px;fill:var(--color-primary-50);stroke:#699add;stroke-width:1.5;}
#merciUX .daily-medal svg path {fill:var(--color-gray-300);}
#merciUX .daily-medal strong {position:absolute;top:34px;left:0;right:0;font-size:42px;color:#3476cd;line-height:1;}
#merciUX .daily-medal small {position:absolute;top:82px;left:0;right:0;font-size:8px;letter-spacing:1.6px;color:var(--text-secondary);}
#merciUX .daily-badge-page h2 {font-size:25px;line-height:1.5;margin-bottom:14px;}
#merciUX .daily-badge-page p {font-size:13px;line-height:1.9;color:var(--text-secondary);margin-bottom:30px;}
#merciUX .daily-extra {display:inline-block;padding:8px 14px;border-radius:20px;background:var(--color-gray-100);color:var(--text-secondary);font-size:12px;margin-bottom:22px;}
#merciUX .daily-rest-icon {display:grid;place-items:center;width:76px;height:76px;border-radius:50%;margin:35px auto 26px;background:var(--color-primary-50);color:#4a8ad8;font-size:32px;}
#merciUX .daily-title-group {display:inline-flex;align-items:center;gap:7px;height:28px;}
#merciUX .focus-top .daily-badge-icon {display:inline-grid;place-items:center;width:28px;height:28px;padding:0;border-radius:50%;background:#ffffff20;color:var(--bg-card);}
#merciUX .daily-badge-icon svg {width:21px;height:21px;stroke-width:1.6;}
#merciUX .daily-achieved {font-size:17px;line-height:1.2;}
/* ============================================================================
   앱 보정 — 시안은 430×890 '폰 프레임(.phone)' 안에 그렸지만 실제 앱은 화면 전체가 프레임이다.
   프레임·고정 높이·내부 스크롤만 풀고, 하단 앱바(v2/pages/appbar.php)가 시안의 nav 를 대신한다.
   ============================================================================ */
body.v2 {background:#fff;}
/* 공통 layout.css의 overflow-x:hidden이 body를 스크롤 조상으로 만들어 sticky를 막는다. 가로 넘침만 자르고 세로는 문서 스크롤을 사용한다. */
html:has(body.v2),body.v2 {overflow-x:clip;overflow-y:visible;}
#merciUX {background:#fff;} /* 시안의 폰 프레임 바깥 회색(#edf1f6)은 실제 앱에 없다 */
#merciUX .phone {width:100%;max-width:var(--frame-max,100%);height:auto;min-height:100vh;border:0;border-radius:0;box-shadow:none;overflow:visible;margin:0 auto;} /* 프레임 폭은 tokens.css --frame-max: 모바일 100% / 768 720 / 1024 960 / 1440 1200 */
#merciUX main {overflow:visible;padding-bottom:calc(var(--ab-h, 56px) + env(safe-area-inset-bottom, 0px) + 16px);}
#merciUX .apphead {position:sticky;top:0;z-index:20;background:#fff;}
#merciUX .home-ad {width:100%;margin-left:0;margin-right:0;}
#merciUX .home-ad.after-shelf {margin:var(--space-8) 0;}
/* 홈 할인 배너: 반드시 빌드 원본에 유지한다. mock.css에만 추가하면 다음 빌드에서 사라진다. */
/* 프로모 배너는 라이브(pages/header.php #admin_promo_banner) 와 똑같이 보이게 한다 — 사용자 지적 2026-09-15 ("글자·아이콘·간격이 다르다").
   배경 #0B71F0 · 알약 배지 #E94B4B · 취소선 #D0D8E0(600 이상 왼쪽 12px 여백이 제목과 가격을 떼어 놓는다) · 새 가격 #FFE066 · 흰 원 안 '›' 화살표는 라이브 고정값이라 토큰이 없어 hex 그대로 쓴다.
   가로 여백만 v2 프레임(.phone-home 의 --home-page-inset)을 따르고, 나머지 치수는 라이브 3단계(≤425 / 426~599 / 600 이상 — 원본 라이브는 767·768)를 그대로 옮겼다. */
#merciUX .home-ad.home-ad-promo {display:block;width:100%;height:auto;aspect-ratio:auto;min-height:0;max-height:none;padding:0;background:#0B71F0;color:var(--color-white);text-decoration:none;}
#merciUX .home-ad-promo .promo-inner {display:flex;align-items:center;justify-content:center;gap:clamp(10px,2.5vw,15px);width:100%;min-width:0;padding:8px 0;font-size:15px;font-weight:500;line-height:normal;letter-spacing:-0.3px;} /* line-height:normal — 라이브 배너는 body 기본 줄높이라, #merciUX 의 1.65 를 물려받으면 모바일 두 줄 라벨이 라이브보다 벌어진다 (사용자 지적 2026-09-15) */
#merciUX .home-ad-promo .promo-break {display:inline;}
#merciUX .home-ad-promo .promo-badge {display:inline-flex;align-items:center;gap:4px;padding:8px 10px;border-radius:999px;background:#E94B4B;color:var(--color-white);font-size:12px;font-weight:400;line-height:1;letter-spacing:-0.3px;white-space:nowrap;}
#merciUX .home-ad-promo .promo-label {text-align:left;font-weight:400;color:var(--color-white);}
#merciUX .home-ad-promo .promo-price {white-space:nowrap;font-size:14px;}
#merciUX .home-ad-promo .promo-price s {margin-left:0;margin-right:2px;color:#D0D8E0;font-weight:500;}
#merciUX .home-ad-promo .promo-price i {display:inline-block;margin:0;font-style:normal;font-weight:700;color:#FFE066;}
#merciUX .home-ad-promo .promo-price b {color:#FFE066;font-weight:700;text-shadow:0 1px 0 rgba(60,40,0,0.30);}
#merciUX .home-ad-promo .promo-timer {min-width:64px;text-align:center;font-size:14px;font-weight:400;color:var(--color-white);font-variant-numeric:tabular-nums;white-space:nowrap;line-height:1;} /* 14px·400, 초 단위 HH:MM:SS (사용자 결정 2026-09-15 — 09-14의 1/100초 표시 폐기). 숫자가 바뀌어도 폭이 흔들리지 않도록 tabular-nums 는 유지한다 */
/* 화살표: 라이브의 반투명 흰 원 배경을 빼고 흰 '›' 글자만, 크기는 라이브(14/15px)보다 한 단계 크게 — 사용자 결정 2026-09-15 */
#merciUX .home-ad-promo .promo-arrow {display:inline-flex;align-items:center;justify-content:center;flex:0 0 20px;width:20px;height:20px;box-sizing:border-box;border:none;border-radius:0;background:transparent;color:var(--color-white);font-size:24px;font-weight:500;line-height:1;}
@media (min-width:426px) {:where(body:not(.v2-side-nav)) #merciUX .home-ad-promo .promo-badge {padding:8px 12px;font-size:14px;} :where(body:not(.v2-side-nav)) #merciUX .home-ad-promo .promo-price {font-size:19px;} :where(body:not(.v2-side-nav)) #merciUX .home-ad-promo .promo-arrow {flex-basis:26px;width:26px;height:26px;font-size:28px;}}
@media (max-width:599px) and (min-width:426px) {:where(body.v2-side-nav) #merciUX .home-ad-promo .promo-badge {padding:8px 12px;font-size:14px;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-price {font-size:19px;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-arrow {flex-basis:26px;width:26px;height:26px;font-size:28px;}} /* 왼쪽 메뉴 사본 (+0px) */
@media (min-width:600px) and (max-width:767px) and (min-width:498px) {:where(body.v2-side-nav) #merciUX .home-ad-promo .promo-badge {padding:8px 12px;font-size:14px;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-price {font-size:19px;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-arrow {flex-basis:26px;width:26px;height:26px;font-size:28px;}} /* 왼쪽 메뉴 사본 (+72px) */
@media (min-width:768px) and (max-width:1023px) and (min-width:626px) {:where(body.v2-side-nav) #merciUX .home-ad-promo .promo-badge {padding:8px 12px;font-size:14px;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-price {font-size:19px;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-arrow {flex-basis:26px;width:26px;height:26px;font-size:28px;}} /* 왼쪽 메뉴 사본 (+200px) */
@media (min-width:1024px) and (min-width:666px) {:where(body.v2-side-nav) #merciUX .home-ad-promo .promo-badge {padding:8px 12px;font-size:14px;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-price {font-size:19px;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-arrow {flex-basis:26px;width:26px;height:26px;font-size:28px;}} /* 왼쪽 메뉴 사본 (+240px) */
/* 600 이상은 라이브와 같은 4열(배지·라벨·타이머·화살표) 한 줄 48px 그리드 — 가격은 제목 옆에 붙고(취소선 왼쪽 12px) 줄바꿈하지 않는다 */
@media (min-width:600px) {:where(body:not(.v2-side-nav)) #merciUX .home-ad-promo .promo-inner {display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;height:48px;padding:0;font-size:18px;} :where(body:not(.v2-side-nav)) #merciUX .home-ad-promo .promo-badge {padding:10px 14px;font-size:15px;} :where(body:not(.v2-side-nav)) #merciUX .home-ad-promo .promo-label {justify-self:center;text-align:center;} :where(body:not(.v2-side-nav)) #merciUX .home-ad-promo .promo-break {display:none;} :where(body:not(.v2-side-nav)) #merciUX .home-ad-promo .promo-price {font-size:inherit;} :where(body:not(.v2-side-nav)) #merciUX .home-ad-promo .promo-price s {margin-left:12px;} :where(body:not(.v2-side-nav)) #merciUX .home-ad-promo .promo-price i {margin:0 4px;}}
@media (max-width:767px) and (min-width:672px) {:where(body.v2-side-nav) #merciUX .home-ad-promo .promo-inner {display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;height:48px;padding:0;font-size:18px;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-badge {padding:10px 14px;font-size:15px;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-label {justify-self:center;text-align:center;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-break {display:none;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-price {font-size:inherit;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-price s {margin-left:12px;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-price i {margin:0 4px;}} /* 왼쪽 메뉴 사본 (+72px) */
@media (max-width:1023px) and (min-width:800px) {:where(body.v2-side-nav) #merciUX .home-ad-promo .promo-inner {display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;height:48px;padding:0;font-size:18px;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-badge {padding:10px 14px;font-size:15px;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-label {justify-self:center;text-align:center;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-break {display:none;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-price {font-size:inherit;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-price s {margin-left:12px;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-price i {margin:0 4px;}} /* 왼쪽 메뉴 사본 (+200px) */
@media (min-width:1024px) and (min-width:840px) {:where(body.v2-side-nav) #merciUX .home-ad-promo .promo-inner {display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;height:48px;padding:0;font-size:18px;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-badge {padding:10px 14px;font-size:15px;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-label {justify-self:center;text-align:center;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-break {display:none;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-price {font-size:inherit;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-price s {margin-left:12px;} :where(body.v2-side-nav) #merciUX .home-ad-promo .promo-price i {margin:0 4px;}} /* 왼쪽 메뉴 사본 (+240px) */
#merciUX a.home-class,#merciUX a.showcase-card,#merciUX a.home-resume,#merciUX a.btn,#merciUX a.textbtn {text-decoration:none;color:inherit;}
#merciUX a.btn {color:white;}
#merciUX a.home-class {color:white;} /* .poster color:white 보다 a.home-class(color:inherit) 우선순위가 높아 h3·posterfoot 이 어두워지던 것 보정 */
#merciUX .poster h3 {color:white;} /* components.css 의 body.v2 h3 {color:var(--color-gray-900)} 가 h3 에 직접 색을 박아 상속을 끊으므로 명시 */
#merciUX a.btn.secondary {color:#2b5c9c;}
#merciUX a.textbtn {color:var(--blue);}
@media (min-width:1024px) {:where(body:not(.v2-side-nav)) #merciUX main,:where(body:not(.v2-side-nav)) #merciUX .apphead {padding-left:32px;padding-right:32px;}}
@media (min-width:1264px) {:where(body.v2-side-nav) #merciUX main,:where(body.v2-side-nav) #merciUX .apphead {padding-left:32px;padding-right:32px;}} /* 왼쪽 메뉴 사본 (+240px) */
/* 로고: Seedance 스튜디오에 올린 로고(data/seedance/asset/logo.png → resources/img/logo_v2.png 복사, 4096×780). 원본 색 그대로, 필터 없음 */
#merciUX .apphead .logo {display:flex;align-items:center;}
#merciUX .apphead .logo img {height:26px;width:auto;display:block;}
@media (max-width:1023px) {:where(body:not(.v2-side-nav)) #merciUX .apphead .logo img {height:15px;}}
@media (max-width:599px) and (max-width:1023px) {:where(body.v2-side-nav) #merciUX .apphead .logo img {height:15px;}} /* 왼쪽 메뉴 사본 (+0px) */
@media (min-width:600px) and (max-width:767px) and (max-width:1095px) {:where(body.v2-side-nav) #merciUX .apphead .logo img {height:15px;}} /* 왼쪽 메뉴 사본 (+72px) */
@media (min-width:768px) and (max-width:1023px) and (max-width:1223px) {:where(body.v2-side-nav) #merciUX .apphead .logo img {height:15px;}} /* 왼쪽 메뉴 사본 (+200px) */
@media (min-width:1024px) and (max-width:1263px) {:where(body.v2-side-nav) #merciUX .apphead .logo img {height:15px;}} /* 왼쪽 메뉴 사본 (+240px) */
/* 홈 외 페이지 헤더: 뒤로가기와 페이지 제목을 공통 정렬한다. */
#merciUX .page-apphead {justify-content:flex-start;gap:var(--space-2);}
#merciUX .page-apphead .page-back {display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;margin-left:-17px;color:var(--text-secondary);border-radius:var(--space-2);text-decoration:none;} /* 44px 박스 안 20px 아이콘 여백(12px)+화살표 path 여백(≈5px) 만큼 당겨 화살표 끝을 본문 패딩 선에 맞춘다 */
#merciUX .page-back svg {width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;}
#merciUX .page-apphead .page-apphead-title {min-width:0;margin:0;font-size:18px;font-weight:500;line-height:1.4;color:var(--text-primary);}
#merciUX .page-back:focus-visible {outline:2px solid var(--color-primary-500);outline-offset:2px;}
#merciUX .library-title-row {justify-content:flex-end;}
#merciUX .poster:nth-child(6) {background:#5b6b7c;} /* 6번째 클래스(기타) — 시안엔 5개까지만 색이 있다 */
/* 이어서 학습 바: 재생 버튼을 오른쪽 끝으로(화살표 대신 행동 지점 하나) — 사용자 결정 2026-09-11 */
#merciUX .home-resume .resume-play {margin-left:auto;}
/* 홈 구독 안내: 작은 버튼과 플랜 비교·별도 구매 안내를 함께 유지한다. */
#merciUX .phone-home {--home-page-inset:22px;}
@media (min-width:1024px) {:where(body:not(.v2-side-nav)) #merciUX .phone-home {--home-page-inset:32px;}}
@media (min-width:1264px) {:where(body.v2-side-nav) #merciUX .phone-home {--home-page-inset:32px;}} /* 왼쪽 메뉴 사본 (+240px) */
#merciUX .phone-home main {padding-left:var(--home-page-inset);padding-right:var(--home-page-inset);}
#merciUX .home-sticky-head {position:sticky;top:0;z-index:20;display:flex;flex-direction:column;flex-shrink:0;margin-bottom:var(--space-4);background:var(--bg-card);}
#merciUX .home-sticky-head .apphead {position:static;}
#merciUX .apphead .header-actions .iconbtn {color:var(--color-gray-600);}
#merciUX .apphead .header-actions .iconbtn:hover,#merciUX .apphead .header-actions .iconbtn:focus-visible {color:var(--color-primary-500);}
/* 데스크톱은 기존 앱바 DOM을 헤더로 이동한다. 모바일·JS 미실행 시 하단 앱바를 유지한다. */
#appbar .desktop-menu-label {display:none;}
#merciUX .desktop-apphead {display:none;}
#merciUX.desktop-nav-shell,#merciUX .desktop-nav-shell {display:none;}
@media (min-width:1024px) {
body.v2-desktop-nav:where(:not(.v2-side-nav)) {--ab-h:0px;}
body.v2-desktop-nav#wrap:where(:not(.v2-side-nav)) {overflow-x:visible;}
body.v2-desktop-nav:where(:not(.v2-side-nav)) #merciUX.desktop-nav-shell,body.v2-desktop-nav:where(:not(.v2-side-nav)) #merciUX .desktop-nav-shell {display:block;position:sticky;top:0;z-index:20;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);background:var(--bg-card);}
body.v2-desktop-nav:where(:not(.v2-side-nav)) .desktop-nav-shell .desktop-apphead {position:static;width:100%;max-width:var(--frame-max);margin:0 auto;}
body.v2-desktop-nav:where(:not(.v2-side-nav)) #hp-predict > #header,body.v2-desktop-nav:where(:not(.v2-side-nav)) #hp-predict > #headerSpace,body.v2-desktop-nav:where(:not(.v2-side-nav)) #resume > #header {display:none;}
body.v2-desktop-nav:where(:not(.v2-side-nav)) #appbarSpace {display:none;}
body.v2-desktop-nav:where(:not(.v2-side-nav)) #merciUX main {padding-bottom:var(--space-4);}
body.v2-desktop-nav:where(:not(.v2-side-nav)) #merciUX .page-apphead {display:none;}
body.v2-desktop-nav:where(:not(.v2-side-nav)) #merciUX .desktop-nav-shell ~ main {padding-top:var(--space-5);}
body.v2-desktop-nav:where(:not(.v2-side-nav)) #merciUX .page-apphead:has(.library-tools-shortcut) {position:static;z-index:auto;display:flex;justify-content:flex-end;height:auto;min-height:0;padding-top:var(--space-4);padding-bottom:0;}
body.v2-desktop-nav:where(:not(.v2-side-nav)) #merciUX .page-apphead .page-back,body.v2-desktop-nav:where(:not(.v2-side-nav)) #merciUX .page-apphead .page-apphead-title {display:none;}
:where(body:not(.v2-side-nav)) #merciUX .apphead.has-desktop-nav {display:flex;height:84px;min-height:84px;justify-content:flex-start;gap:var(--space-6);border-bottom:1px solid var(--border-light);}
:where(body:not(.v2-side-nav)) #merciUX .apphead.has-desktop-nav .logo {flex-shrink:0;}
:where(body:not(.v2-side-nav)) #merciUX .apphead.has-desktop-nav .logo img {height:26px;}
:where(body:not(.v2-side-nav)) #merciUX .apphead.has-desktop-nav .header-actions {margin-left:auto;flex-shrink:0;}
:where(body:not(.v2-side-nav)) #merciUX .apphead .header-actions .badge {font-size:18px;font-weight:600;}
:where(body:not(.v2-side-nav)) #merciUX #appbar {position:static;inset:auto;display:block;width:auto;flex:0 1 auto;min-width:0;padding:0;border:0;background:transparent;z-index:auto;}
:where(body:not(.v2-side-nav)) #merciUX #appbar .appbar {width:auto;max-width:none;border:0;background:transparent;}
:where(body:not(.v2-side-nav)) #merciUX #appbar .appbar ul {height:84px;justify-content:flex-start;gap:var(--space-1);}
:where(body:not(.v2-side-nav)) #merciUX #appbar .appbar li {flex:0 0 auto;}
:where(body:not(.v2-side-nav)) #merciUX #appbar .appbar ul li a {position:relative;flex-direction:row;padding:0 var(--space-3);gap:0;color:var(--color-gray-600);white-space:nowrap;}
:where(body:not(.v2-side-nav)) #merciUX #appbar .app_icon,:where(body:not(.v2-side-nav)) #merciUX #appbar .appbar ul li a p {display:none;}
:where(body:not(.v2-side-nav)) #merciUX #appbar .desktop-menu-label {display:block;font-size:18px;font-weight:600;line-height:1.4;}
:where(body:not(.v2-side-nav)) #merciUX #appbar .appbar ul li a:hover,:where(body:not(.v2-side-nav)) #merciUX #appbar .appbar ul li a.on {color:var(--color-primary-500);}
:where(body:not(.v2-side-nav)) #merciUX #appbar .appbar ul li a:focus-visible {outline:2px solid var(--color-primary-500);outline-offset:-4px;}
}
@media (min-width:1264px) {















:where(body.v2-side-nav) #merciUX .apphead .header-actions .badge {font-size:18px;font-weight:600;}
:where(body.v2-side-nav) #merciUX #appbar {position:static;inset:auto;display:block;width:auto;flex:0 1 auto;min-width:0;padding:0;border:0;background:transparent;z-index:auto;}
:where(body.v2-side-nav) #merciUX #appbar .appbar {width:auto;max-width:none;border:0;background:transparent;}
:where(body.v2-side-nav) #merciUX #appbar .appbar ul {height:84px;justify-content:flex-start;gap:var(--space-1);}
:where(body.v2-side-nav) #merciUX #appbar .appbar li {flex:0 0 auto;}
:where(body.v2-side-nav) #merciUX #appbar .appbar ul li a {position:relative;flex-direction:row;padding:0 var(--space-3);gap:0;color:var(--color-gray-600);white-space:nowrap;}
:where(body.v2-side-nav) #merciUX #appbar .app_icon,:where(body.v2-side-nav) #merciUX #appbar .appbar ul li a p {display:none;}
:where(body.v2-side-nav) #merciUX #appbar .desktop-menu-label {display:block;font-size:18px;font-weight:600;line-height:1.4;}
:where(body.v2-side-nav) #merciUX #appbar .appbar ul li a:hover,:where(body.v2-side-nav) #merciUX #appbar .appbar ul li a.on {color:var(--color-primary-500);}
:where(body.v2-side-nav) #merciUX #appbar .appbar ul li a:focus-visible {outline:2px solid var(--color-primary-500);outline-offset:-4px;}
} /* 왼쪽 메뉴 사본 (+240px) */
@media (min-width:1440px) {:where(body:not(.v2-side-nav)) #merciUX .apphead.has-desktop-nav {gap:var(--space-10);} :where(body:not(.v2-side-nav)) #merciUX #appbar .appbar ul {gap:var(--space-2);}}
@media (min-width:1680px) { :where(body.v2-side-nav) #merciUX #appbar .appbar ul {gap:var(--space-2);}} /* 왼쪽 메뉴 사본 (+240px) */
#merciUX .phone-home .home-ad[data-ad-slot="top"] {width:100%;margin-left:0;margin-right:0;margin-bottom:0;}
#merciUX .phone-home .home-ad-promo {padding-left:12px;padding-right:12px;} /* 모바일 좌우 12px = 라이브 .promo_inner 의 padding 8px 12px 와 동일 (사용자 지적 2026-09-15) */
@media (min-width:600px) {:where(body:not(.v2-side-nav)) #merciUX .phone-home .home-ad-promo {padding-left:var(--home-page-inset);padding-right:var(--home-page-inset);}}
@media (max-width:767px) and (min-width:672px) {:where(body.v2-side-nav) #merciUX .phone-home .home-ad-promo {padding-left:var(--home-page-inset);padding-right:var(--home-page-inset);}} /* 왼쪽 메뉴 사본 (+72px) */
@media (max-width:1023px) and (min-width:800px) {:where(body.v2-side-nav) #merciUX .phone-home .home-ad-promo {padding-left:var(--home-page-inset);padding-right:var(--home-page-inset);}} /* 왼쪽 메뉴 사본 (+200px) */
@media (min-width:1024px) and (min-width:840px) {:where(body.v2-side-nav) #merciUX .phone-home .home-ad-promo {padding-left:var(--home-page-inset);padding-right:var(--home-page-inset);}} /* 왼쪽 메뉴 사본 (+240px) */
/* 데스크톱 홈: 배경은 뷰포트 전체, 헤더·광고 내용은 기존 프레임 안에 유지한다. */
@media (min-width:1024px) {
body.v2#wrap:has(.phone-home):where(:not(.v2-side-nav)) {width:100%;}
:where(body:not(.v2-side-nav)) #merciUX .phone-home .home-sticky-head {width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);}
:where(body:not(.v2-side-nav)) #merciUX .home-sticky-head .apphead {width:100%;max-width:var(--frame-max);margin-left:auto;margin-right:auto;}
@media (min-width:600px) {:where(body:not(.v2-side-nav)) #merciUX .home-sticky-head .promo-inner {max-width:calc(var(--frame-max) - var(--home-page-inset) * 2);margin-left:auto;margin-right:auto;}} /* 600 이상만 — 모바일은 --frame-max:100% 라 이 calc 가 부모 폭에서 여백을 한 번 더 빼 좌우가 두 배로 비었다 (사용자 지적 2026-09-15) */
:where(body:not(.v2-side-nav)) #merciUX .home-sticky-head .home-ad-placeholder {max-width:var(--frame-max);margin-left:auto;margin-right:auto;padding-left:var(--home-page-inset);padding-right:var(--home-page-inset);}
}
@media (min-width:1264px) {
body.v2#wrap:has(.phone-home):where(.v2-side-nav) {width:100%;}
:where(body.v2-side-nav) #merciUX .phone-home .home-sticky-head {width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);}
:where(body.v2-side-nav) #merciUX .home-sticky-head .apphead {width:100%;max-width:var(--frame-max);margin-left:auto;margin-right:auto;}
@media (min-width:840px) {:where(body.v2-side-nav) #merciUX .home-sticky-head .promo-inner {max-width:calc(var(--frame-max) - var(--home-page-inset) * 2);margin-left:auto;margin-right:auto;}} /* 600 이상만 — 모바일은 --frame-max:100% 라 이 calc 가 부모 폭에서 여백을 한 번 더 빼 좌우가 두 배로 비었다 (사용자 지적 2026-09-15) */
:where(body.v2-side-nav) #merciUX .home-sticky-head .home-ad-placeholder {max-width:var(--frame-max);margin-left:auto;margin-right:auto;padding-left:var(--home-page-inset);padding-right:var(--home-page-inset);}
} /* 왼쪽 메뉴 사본 (+240px) */
#merciUX .home-pass {display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-3) var(--space-4);margin:var(--space-6) calc(-1 * var(--home-page-inset));padding:var(--space-5) calc(var(--home-page-inset) + var(--space-4));background:linear-gradient(180deg,var(--color-primary-50) 0%,var(--bg-card) 85%);border:0;border-radius:0;}
#merciUX .home-pass-copy {min-width:0;}
#merciUX .home-pass .home-pass-copy h3 {margin:0 0 var(--space-2);font-size:17px;font-weight:700;line-height:1.4;letter-spacing:normal;color:var(--text-primary);}
#merciUX .home-pass .pass-lines {grid-template-columns:auto minmax(0,1fr);gap:var(--space-1) var(--space-3);font-size:14px;line-height:1.5;word-break:keep-all;}
#merciUX .home-pass .pass-lines strong {font-size:inherit;font-weight:700;color:var(--color-primary-800);}
#merciUX .home-pass .home-pass-action {display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:var(--space-2) var(--space-4);border-radius:var(--space-2);background:var(--color-primary-500);color:var(--bg-card);font-size:14px;font-weight:600;line-height:1.4;text-decoration:none;white-space:nowrap;}
#merciUX .home-pass-action:hover {background:var(--color-primary-600);}
#merciUX .home-pass-action:focus-visible {outline:2px solid var(--color-primary-700);outline-offset:2px;}
#merciUX .home-pass .pass-foot {grid-column:1/-1;display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-2);margin:0;font-size:13px;line-height:1.5;color:var(--text-secondary);}
#merciUX .home-pass .pass-foot strong {font-size:inherit;font-weight:600;color:var(--text-secondary);}
/* 전달본 css/editorial.css의 데스크톱 패스 히어로를 홈 구독 영역에만 적용한다. */
/* 데스크톱 구독 안내: 라벨 → 두 줄 제목 → 구독 버튼 → 클래스 링크. 섹션 배경 없음. */
#merciUX .home-pass.home-pass-desktop {display:none;}
@media (min-width:1024px) {
:where(body:not(.v2-side-nav)) #merciUX .home-pass.home-pass-mobile {display:none;}
:where(body:not(.v2-side-nav)) #merciUX .home-pass.home-pass-desktop {display:flex;flex-direction:column;align-items:center;text-align:center;gap:0;position:relative;margin:0 0 var(--space-3);padding:52px var(--space-5) 32px;background:transparent;border:0;border-radius:0;box-shadow:none;} /* class101 구독 히어로 구성: 라벨 → 2줄 제목(앞부분 강조) → 그라데이션 버튼 → 텍스트 링크 (2026-09-16) */
:where(body:not(.v2-side-nav)) #merciUX .home-pass-desktop .store-pass-label {display:inline-flex;align-items:baseline;gap:var(--space-1);margin:0 0 var(--space-6);font-family:var(--font-base);font-size:22px;font-weight:900;line-height:1;letter-spacing:-.8px;text-transform:uppercase;color:var(--color-gray-900);}
:where(body:not(.v2-side-nav)) #merciUX .home-pass-desktop .store-pass-label span {font:inherit;letter-spacing:inherit;color:inherit;}
:where(body:not(.v2-side-nav)) #merciUX .home-pass-desktop h1 {margin:0 0 40px;font-size:44px;font-weight:800;line-height:1.3;letter-spacing:-2px;color:var(--text-primary);word-break:keep-all;}
:where(body:not(.v2-side-nav)) #merciUX .home-pass-desktop h1 span {background:linear-gradient(90deg,var(--color-primary-800),var(--color-primary-500));-webkit-background-clip:text;background-clip:text;color:transparent;}
:where(body:not(.v2-side-nav)) #merciUX .home-pass.home-pass-desktop .home-pass-action {min-width:240px;min-height:48px;width:auto;margin:0;padding:13px 24px;background:linear-gradient(180deg,var(--color-primary-400),var(--color-primary-700));color:var(--bg-card);border:0;border-radius:12px;font-size:14px;font-weight:700;box-shadow:var(--shadow-sm);}
:where(body:not(.v2-side-nav)) #merciUX .home-pass.home-pass-desktop .home-pass-action:hover {background:linear-gradient(180deg,var(--color-primary-500),var(--color-primary-800));}
:where(body:not(.v2-side-nav)) #merciUX .home-pass-desktop .home-pass-more {display:inline-flex;align-items:center;gap:6px;margin:18px 0 0;font-size:13px;font-weight:500;line-height:1.4;color:var(--text-primary);text-decoration:none;}
:where(body:not(.v2-side-nav)) #merciUX .home-pass-desktop .home-pass-more i {font-size:11px;}
:where(body:not(.v2-side-nav)) #merciUX .home-pass-desktop .home-pass-more:hover {text-decoration:underline;}
:where(body:not(.v2-side-nav)) #merciUX .home-pass-desktop .home-pass-more:focus-visible {outline:2px solid var(--color-primary-700);outline-offset:var(--space-1);}
}
@media (min-width:1264px) {
:where(body.v2-side-nav) #merciUX .home-pass.home-pass-mobile {display:none;}
:where(body.v2-side-nav) #merciUX .home-pass.home-pass-desktop {display:flex;flex-direction:column;align-items:center;text-align:center;gap:0;position:relative;margin:0 0 var(--space-3);padding:52px var(--space-5) 32px;background:transparent;border:0;border-radius:0;box-shadow:none;} /* class101 구독 히어로 구성: 라벨 → 2줄 제목(앞부분 강조) → 그라데이션 버튼 → 텍스트 링크 (2026-09-16) */
:where(body.v2-side-nav) #merciUX .home-pass-desktop .store-pass-label {display:inline-flex;align-items:baseline;gap:var(--space-1);margin:0 0 var(--space-6);font-family:var(--font-base);font-size:22px;font-weight:900;line-height:1;letter-spacing:-.8px;text-transform:uppercase;color:var(--color-gray-900);}
:where(body.v2-side-nav) #merciUX .home-pass-desktop .store-pass-label span {font:inherit;letter-spacing:inherit;color:inherit;}
:where(body.v2-side-nav) #merciUX .home-pass-desktop h1 {margin:0 0 40px;font-size:44px;font-weight:800;line-height:1.3;letter-spacing:-2px;color:var(--text-primary);word-break:keep-all;}
:where(body.v2-side-nav) #merciUX .home-pass-desktop h1 span {background:linear-gradient(90deg,var(--color-primary-800),var(--color-primary-500));-webkit-background-clip:text;background-clip:text;color:transparent;}
:where(body.v2-side-nav) #merciUX .home-pass.home-pass-desktop .home-pass-action {min-width:240px;min-height:48px;width:auto;margin:0;padding:13px 24px;background:linear-gradient(180deg,var(--color-primary-400),var(--color-primary-700));color:var(--bg-card);border:0;border-radius:12px;font-size:14px;font-weight:700;box-shadow:var(--shadow-sm);}
:where(body.v2-side-nav) #merciUX .home-pass.home-pass-desktop .home-pass-action:hover {background:linear-gradient(180deg,var(--color-primary-500),var(--color-primary-800));}
:where(body.v2-side-nav) #merciUX .home-pass-desktop .home-pass-more {display:inline-flex;align-items:center;gap:6px;margin:18px 0 0;font-size:13px;font-weight:500;line-height:1.4;color:var(--text-primary);text-decoration:none;}
:where(body.v2-side-nav) #merciUX .home-pass-desktop .home-pass-more i {font-size:11px;}
:where(body.v2-side-nav) #merciUX .home-pass-desktop .home-pass-more:hover {text-decoration:underline;}
:where(body.v2-side-nav) #merciUX .home-pass-desktop .home-pass-more:focus-visible {outline:2px solid var(--color-primary-700);outline-offset:var(--space-1);}
} /* 왼쪽 메뉴 사본 (+240px) */
@media (min-width:1024px) and (max-width:1100px) {:where(body:not(.v2-side-nav)) #merciUX .home-pass-desktop h1 {font-size:40px;}}
@media (min-width:1264px) and (max-width:1340px) {:where(body.v2-side-nav) #merciUX .home-pass-desktop h1 {font-size:40px;}} /* 왼쪽 메뉴 사본 (+240px) */
#merciUX .textbtn {font-weight:400;} /* 텍스트 링크(더보기 등) 굵기 400 — 사용자 결정 2026-09-11 */
#merciUX .shelf-heading {gap:0;} /* 선반 제목행 갭 제거 — 사용자 결정 2026-09-11 */
#merciUX .shelf-heading .textbtn {min-height:0;padding:0;line-height:1.4;} /* 시안의 터치영역 44px 가 제목 줄을 키우던 것 제거 */
#merciUX .shelf-head {display:flex;flex-direction:column;gap:6px;margin-bottom:10px;} /* 제목줄+설명을 묶어 gap 6px, 아래 카드줄과는 10px (사용자 결정 2026-09-11) */
#merciUX .shelf-head .shelf-desc {margin:0;}
#merciUX .shelf-desc {font-weight:400;} /* 선반 설명 굵기 400 — 사용자 결정 2026-09-11 */
#merciUX .showcase-title, #merciUX .library-product-title, #merciUX .library-grid .library-product-title {font-size:14px;line-height:1.5;font-weight:500;color:#17243b;min-height:0;} /* 카드 제목 공통(홈 선반·서재 수강권 목록): 크기·굵기·색·최소높이를 여기 한 줄에서만 바꾼다 — 사용자 결정 2026-09-11 */
#merciUX .showcase-body {padding:8px 1px 0;} /* 카드 본문 위 여백 9→8 */
#merciUX .shelf-section {margin:50px 0 0;} /* 선반 섹션 위 간격 29→50px — 사용자 결정 2026-09-11 */
#merciUX .shelf-heading .textbtn .fa-chevron-right {font-size:17px;color:#17243b;} /* 꺾쇠 = 제목 h3와 같은 색·크기 (사용자 결정 2026-09-11, 이전 muted 규칙 대체) */
#merciUX, #merciUX .library-product-title, #merciUX #button-flow-guide p {word-break:keep-all;overflow-wrap:break-word;} /* 한글 단어 단위 줄바꿈(글자 단위로 아무 데서나 끊기지 않게), 시안의 overflow-wrap:anywhere 덮어씀 — 사용자 결정 2026-09-11 */
#merciUX .home-class {width:clamp(176px, calc((100% - 24px)/2.15), 240px);} /* 클래스 카드 폭 하한 176(425px 폭에서 166 이던 것을 살짝 키워 고정)·상한 240 — 프레임 비율만 따라 무한히 커지거나 작아지지 않게 (사용자 결정 2026-09-11) */
#merciUX .home-class.has-img {padding:0;background:var(--color-gray-100);} /* 어드민 클래스 썸네일(1080x1350, 카드와 같은 4:5) — 카드 전체를 이미지로 채운다 */
#merciUX .home-class.has-img img {display:block;width:100%;height:100%;object-fit:cover;}
#merciUX .shelf-heading .textbtn {color:#17243b;font-size:17px;line-height:1.5;} /* 선반 더보기 꺾쇠: 제목 h3와 같은 색·크기 — 사용자 결정 2026-09-11 */
#merciUX .shelf-heading .textbtn .fa-chevron-right:before {color:inherit;font-size:inherit;}
#merciUX .chip {padding:6px 20px;font-size:14px;} /* 칩 좌우 패딩 22→20·글자 14px — 사용자 결정 2026-09-11 (자동 타원형 블록은 사람이 쓴 속성을 건너뜀) */
#merciUX a.chip {color:var(--text-primary,#1E293B);} /* 칩 글자: a 링크 청색(primary-900)이 아니라 본문 검정 토큰 — 사용자 결정 2026-09-11. 선택(.chip.on) 흰색은 그대로 */
#merciUX a {color:var(--color-primary-900,#003B7A);} /* 링크 글자 색: 시안 #286abe → 브랜드 900 — 사용자 결정 2026-09-11 */
#merciUX .library-tools-shortcut {border:0;} /* 공부 필수 도구 버튼: 아이콘 svg 제거(마크업)·테두리 제거 — 사용자 결정 2026-09-11 */
#merciUX .chip.on {background:var(--color-primary-500,#2097FF);color:var(--color-white,#fff);} /* 칩 선택 상태: 시안 남색 #20344e → 브랜드 active 토큰 — 사용자 결정 2026-09-11 */
/* 로고 크기는 페이지 공통 모바일 15px·데스크톱 26px(#merciUX .apphead .logo img). 홈만 20px 로 두던 예외는 2026-09-15 사용자 지시로 제거 — 헤더는 전 페이지 동일 */
#merciUX .library-recent-thumb {aspect-ratio:16/9;} /* 수강권 썸네일은 16:9 배너 — 16/10 박스에 contain 이라 위아래 배경이 비던 것 (사용자 결정 2026-09-11) */
#merciUX .library-recent-thumb img, #merciUX .showcase-image img {object-fit:cover;} /* 박스 비율과 같으니 cover 로 꽉 채움 */
/* 서재 카드 가격줄(레퍼런스: 할인율 · 가격 · 기간 → 그 아래 별점) — 사용자 결정 2026-09-11 */
#merciUX .review-count {margin-left:0;color:var(--text-muted,#94A3B8);} /* 리뷰 수: 시안 #7c8797 → 브랜드 text-muted(살짝 밝게) — 사용자 결정 2026-09-11 */
#merciUX .library-rating {color:var(--text-secondary,#64748B);} /* 평점 글자: 시안 #526176 → 브랜드 text-secondary(살짝 밝게) — 사용자 결정 2026-09-11 */
#merciUX .rating-star {color:var(--color-warning,#F59E0B);} /* 별: 시안 #efad34 → 브랜드 warning — 사용자 결정 2026-09-11 */
#merciUX .library-product-info {gap:4px;} /* 서재 카드 정보 줄 간격 5→4 (그리드와 동일) — 사용자 결정 2026-09-11 */
#merciUX .library-rating {display:flex;align-items:center;gap:1px;} /* 별·평점·리뷰수를 span 으로 나누고 간격은 gap 으로만(1px 단위 조절) — 사용자 결정 2026-09-11 */
#merciUX .rating-value {color:#17243b;} /* 평점 숫자는 진하게, 리뷰 수(.review-count)만 밝게 */
#merciUX {--blue:var(--color-primary-500);--muted:var(--text-secondary);--line:var(--border-light);--soft:var(--color-gray-100);background:var(--bg-card);color:var(--text-primary);} /* 시안 변수 4개를 브랜드 토큰에 연결 — 브랜드 색은 tokens.css 한 곳에서만 바꾼다 (2026-09-11) */
#merciUX .library-rating {display:flex;align-items:center;gap:3px;} /* 별·평점·리뷰수 간격 3px (시안은 block 이라 gap 이 없었음) — 사용자 결정 2026-09-11 */
#merciUX .library-rating .review-count {display:inline-flex;align-items:center;gap:3px;margin-left:5px;}
#merciUX .library-rating .review-icon {width:16px;height:16px;flex:none;fill:var(--color-primary-500,#2097FF);}
/* ── 공부하기(v2/test/mynote.php): 시안의 <button data-act> 를 <a href> 로 옮겼으므로 button 선택자의 a 짝. 글자 13px·굵기 700 상한은 여기서 직접 지킨다 (2026-09-11) */
#merciUX .tabs a {display:inline-block;background:none;color:#8a96a8;padding:9px 0 12px;font-weight:700;border-bottom:3px solid transparent;text-decoration:none;font-size:15px;}
#merciUX .study-design .tabs a {padding:13px 8px;}
#merciUX .tabs a.active {color:#14243e;border-bottom-color:var(--blue);}
#merciUX .focus-top a {background:transparent;color:#e2edff;font-size:13px;padding:8px 0;min-height:36px;display:inline-flex;align-items:center;text-decoration:none;}
#merciUX .independent-top > a {background:transparent;color:inherit;font-size:13px;min-height:32px;padding:5px 0;display:inline-flex;align-items:center;text-decoration:none;white-space:nowrap;}
#merciUX a.focus-cta, #merciUX a.independent-action, #merciUX a.achievement-mini {text-decoration:none;}
#merciUX a.independent-action {color:inherit;display:inline-flex;align-items:center;justify-content:center;text-align:center;}
#merciUX a.achievement-mini {color:inherit;}
#merciUX .focus-top .daily-title-group {gap:var(--space-1);}
#merciUX .focus-top .daily-title-group > .daily-badge-icon {display:inline-grid;place-items:center;flex:0 0 var(--space-6);width:var(--space-6);height:var(--space-6);min-height:var(--space-6);margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:var(--color-warning-light);}
#merciUX .focus-top .daily-badge-icon svg {width:var(--space-5);height:var(--space-5);}
#merciUX .focus-top .daily-badge-icon:focus-visible {outline:2px solid var(--color-warning-light);outline-offset:2px;}
#merciUX .library-type-select {width:auto;min-height:0;line-height:1.3;padding:0 24px 0 12px;margin-left:8px;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5' viewBox='0 0 8 5'%3E%3Cpath d='M0 0h8L4 5z' fill='%23111'/%3E%3C/svg%3E") no-repeat right 8px center;border:0;border-left:1px solid var(--border-light,#E2E8F0);border-radius:0;font-size:14px;color:var(--text-primary,#1E293B);appearance:none;-webkit-appearance:none;cursor:pointer;} /* 서재 콘텐츠 유형 셀렉트: 클래스101 "추천순 ▼"식 — 테두리·배경 없이 글자+▼ 세모, 왼쪽에 흐린 세로 구분선(#E2E8F0) (사용자 결정 2026-09-11) */
/* ── 내 자료(v2/test/_mynote_materials.inc.php): 시안 .materials-saved button 의 a 짝(최종 상태 = 세로 리스트 grid). 글자 13px 상한 준수 (2026-09-11) */
#merciUX .materials-saved a {position:relative;display:grid;grid-template-columns:38px 1fr 18px;column-gap:12px;row-gap:3px;align-items:center;min-width:0;padding:17px 2px;border:0;border-bottom:1px solid var(--border-light,#e5ebf3);background:white;text-align:left;color:inherit;text-decoration:none;}
#merciUX .materials-saved a:last-child {border-bottom:0;}
#merciUX .materials-saved a:last-child .saved-icon {background:#edf3fb;color:#3a6ba2;}
#merciUX a.launch-card, #merciUX a.record-preview {text-decoration:none;}
#merciUX a.launch-card {color:white;}
#merciUX a.record-preview {color:inherit;}
#merciUX .study-design-materials .materials-heading h3 {color:var(--text-primary);}
#merciUX .study-design .acc-body > a.textbtn {display:block;width:100%;padding:12px 0;text-align:center;color:#77879b;font-size:13px;text-decoration:none;}
#merciUX .library-filter-row {padding-bottom:10px;border-bottom:1px solid var(--border-light,#E2E8F0);} /* 서재 필터 줄(보유만 보기 ~ 모든 유형) 아래 흐린 가로 구분선 — 클래스101 필터 줄과 같음 (사용자 결정 2026-09-11) */
#merciUX .library-recent-title h3 {color:var(--text-primary,#1E293B);} /* 최근 본 수강권 제목: 시안 남색(#263f60→navy-500) 대신 본문 검정 토큰 — 사용자 결정 2026-09-11 */
#merciUX .badge {background:transparent;border-radius:0;padding:0;font-weight:500;} /* 등급 배지(PRO/BASIC/무료): 배경·둥글기·패딩 제거, 글자만 500 — 사용자 결정 2026-09-11 */
/* ⭐ 카드 격자 공통 규칙 — 서재(.library-grid)와 홈 선반(.carousel > .showcase-card)은 항상 같은 열 수·같은 간격·같은 카드 폭을 쓴다 (사용자 결정 2026-09-11). 열 수·간격은 아래 두 변수에서만 바꾼다. 어느 한쪽에 숫자를 박지 말 것. */
#merciUX {--lib-cols:2;--lib-gap:12px;} /* 모바일 2열, 가로 간격 12 */
@media (min-width:600px) {:where(body:not(.v2-side-nav)) #merciUX {--lib-cols:3;}}
@media (max-width:767px) and (min-width:672px) {:where(body.v2-side-nav) #merciUX {--lib-cols:3;}} /* 왼쪽 메뉴 사본 (+72px) */
@media (max-width:1023px) and (min-width:800px) {:where(body.v2-side-nav) #merciUX {--lib-cols:3;}} /* 왼쪽 메뉴 사본 (+200px) */
@media (min-width:1024px) and (min-width:840px) {:where(body.v2-side-nav) #merciUX {--lib-cols:3;}} /* 왼쪽 메뉴 사본 (+240px) */ /* 태블릿 3열 */
@media (min-width:1024px) {:where(body:not(.v2-side-nav)) #merciUX {--lib-cols:4;}}
@media (min-width:1264px) {:where(body.v2-side-nav) #merciUX {--lib-cols:4;}} /* 왼쪽 메뉴 사본 (+240px) */ /* 데스크탑 4열 */
#merciUX .library-grid {grid-template-columns:repeat(var(--lib-cols),minmax(0,1fr));gap:20px var(--lib-gap);} /* 서재 수강권 격자 (세로 간격 20) */
#merciUX .carousel {gap:var(--lib-gap);} /* 홈 선반 카드 간격 = 서재 가로 간격 */
#merciUX .showcase-card {flex-basis:calc((100% - var(--lib-gap) * (var(--lib-cols) - 1)) / var(--lib-cols));} /* 홈 선반 카드 폭 = 서재 격자 셀 폭 → showcase-image 크기 = library-thumb */
/* ── 공부하기 주간 그래프: 막대 영역 26→60px(차이가 보이게), 일요일 빨강·토요일 파랑, 오늘 이후 칸은 흐리게 — 사용자 결정 2026-09-11 */
#merciUX .achievement-mini-bar {height:60px;}
#merciUX .achievement-mini-bar i {max-width:28px;}
#merciUX .achievement-mini-day.is-sun small {color:var(--color-error,#EF4444);}
#merciUX .achievement-mini-day.is-sat small {color:var(--color-primary-500,#2097FF);}
/* ── 공부하기 상단: 막대는 % 높이(PHP)라 영역 높이만 키우면 함께 자란다. 600px↑ 는 문제 카드 | 그래프 반반 — 사용자 결정 2026-09-11 */
#merciUX .achievement-mini-bar {height:90px;}
@media (min-width:600px) {
:where(body:not(.v2-side-nav)) #merciUX .study-hero {display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:stretch;margin-bottom:26px;}
:where(body:not(.v2-side-nav)) #merciUX .study-hero .focus-panel {margin-bottom:0;}
:where(body:not(.v2-side-nav)) #merciUX .study-hero .achievement-mini {display:flex;flex-direction:column;justify-content:space-between;margin:0;padding:18px 20px;border:1px solid var(--border-light,#E2E8F0);border-radius:16px;}
:where(body:not(.v2-side-nav)) #merciUX .study-hero .achievement-mini-chart {flex:1;align-items:end;margin-top:14px;}
:where(body:not(.v2-side-nav)) #merciUX .study-hero .achievement-mini-bar {height:130px;}
:where(body:not(.v2-side-nav)) #merciUX .study-hero .achievement-mini-bar i {max-width:32px;}
}
@media (max-width:767px) and (min-width:672px) {
:where(body.v2-side-nav) #merciUX .study-hero {display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:stretch;margin-bottom:26px;}
:where(body.v2-side-nav) #merciUX .study-hero .focus-panel {margin-bottom:0;}
:where(body.v2-side-nav) #merciUX .study-hero .achievement-mini {display:flex;flex-direction:column;justify-content:space-between;margin:0;padding:18px 20px;border:1px solid var(--border-light,#E2E8F0);border-radius:16px;}
:where(body.v2-side-nav) #merciUX .study-hero .achievement-mini-chart {flex:1;align-items:end;margin-top:14px;}
:where(body.v2-side-nav) #merciUX .study-hero .achievement-mini-bar {height:130px;}
:where(body.v2-side-nav) #merciUX .study-hero .achievement-mini-bar i {max-width:32px;}
} /* 왼쪽 메뉴 사본 (+72px) */
@media (max-width:1023px) and (min-width:800px) {
:where(body.v2-side-nav) #merciUX .study-hero {display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:stretch;margin-bottom:26px;}
:where(body.v2-side-nav) #merciUX .study-hero .focus-panel {margin-bottom:0;}
:where(body.v2-side-nav) #merciUX .study-hero .achievement-mini {display:flex;flex-direction:column;justify-content:space-between;margin:0;padding:18px 20px;border:1px solid var(--border-light,#E2E8F0);border-radius:16px;}
:where(body.v2-side-nav) #merciUX .study-hero .achievement-mini-chart {flex:1;align-items:end;margin-top:14px;}
:where(body.v2-side-nav) #merciUX .study-hero .achievement-mini-bar {height:130px;}
:where(body.v2-side-nav) #merciUX .study-hero .achievement-mini-bar i {max-width:32px;}
} /* 왼쪽 메뉴 사본 (+200px) */
@media (min-width:1024px) and (min-width:840px) {
:where(body.v2-side-nav) #merciUX .study-hero {display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:stretch;margin-bottom:26px;}
:where(body.v2-side-nav) #merciUX .study-hero .focus-panel {margin-bottom:0;}
:where(body.v2-side-nav) #merciUX .study-hero .achievement-mini {display:flex;flex-direction:column;justify-content:space-between;margin:0;padding:18px 20px;border:1px solid var(--border-light,#E2E8F0);border-radius:16px;}
:where(body.v2-side-nav) #merciUX .study-hero .achievement-mini-chart {flex:1;align-items:end;margin-top:14px;}
:where(body.v2-side-nav) #merciUX .study-hero .achievement-mini-bar {height:130px;}
:where(body.v2-side-nav) #merciUX .study-hero .achievement-mini-bar i {max-width:32px;}
} /* 왼쪽 메뉴 사본 (+240px) */
/* ── 내 자료 만들기 카드: 아이콘 네모 기울기(시안 rotate) 제거·모서리 화살표는 마크업에서 삭제 — 사용자 결정 2026-09-12 */
#merciUX .launch-art {transform:none;}
/* ── 내 자료 카드: 2열·최대 폭 640px, 카드 7:5 비율 유지. 좁은 화면에서는 설명을 담을 최소 높이 보장. */
#merciUX .study-design-materials .material-launch-list {grid-template-columns:repeat(2,minmax(0,1fr));width:100%;max-width:640px;gap:var(--space-3);}
#merciUX .launch-card {aspect-ratio:7 / 5;min-height:118px;padding:16px 16px 14px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:16px;}
#merciUX .launch-copy {display:flex;flex-direction:column;justify-content:space-between;flex:1;width:100%;}
#merciUX .launch-copy strong {font-size:16px;line-height:1.35;letter-spacing:-.4px;}
#merciUX .launch-copy small {font-size:13px;line-height:1.5;margin-top:auto;padding-top:14px;color:#ffffffcc;}
/* ── 내 자료: 만들기 4카드를 탭 바로 아래로 올림 → 시안의 위 구분선·위 여백을 아래쪽으로 옮김 — 사용자 결정 2026-09-12 */
#merciUX .study-design-materials .material-launch {margin:0 0 30px;padding:0 0 24px;border-top:0;border-bottom:1px solid #e8edf3;}
/* ── 내 자료 4카드 배경 장식: 시안의 오른쪽 위 원을 격자 안쪽 모서리로 모아 MyMerci 로고 마크(가운데를 향한 네 잎)처럼 — 사용자 결정 2026-09-12. 잎 = 안쪽 모서리만 각진 물방울 */
#merciUX .launch-card:after {width:72px;height:72px;border-width:14px;top:auto;right:auto;bottom:auto;left:auto;}
#merciUX .launch-pdf:after {right:-14px;bottom:-14px;border-radius:50% 50% 0 50%;}
#merciUX .launch-explain:after {left:-14px;bottom:-14px;border-radius:50% 50% 50% 0;}
#merciUX .launch-archive:after {right:-14px;top:-14px;border-radius:50% 0 50% 50%;}
#merciUX .launch-code:after {left:-14px;top:-14px;border-radius:0 50% 50% 50%;}
/* ── 내 자료 4카드 그림(resources/img/note/*.png): 제목 아래 남는 공간에 가운데 정렬. 태블릿·데스크톱은 제목~설명 사이, 모바일(<600)은 설명을 숨기고 그림만 작게 — 사용자 결정 2026-09-17 */
#merciUX .launch-copy .launch-img {display:block;flex:1 1 0;min-height:0;width:100%;height:auto;margin:6px auto 0;object-fit:contain;object-position:center;pointer-events:none;}
@media (max-width:599px) {:where(body:not(.v2-side-nav)) #merciUX .launch-copy small {display:none;}}
@media (max-width:599px) and (max-width:599px) {:where(body.v2-side-nav) #merciUX .launch-copy small {display:none;}} /* 왼쪽 메뉴 사본 (+0px) */
@media (min-width:600px) and (max-width:671px) {:where(body.v2-side-nav) #merciUX .launch-copy small {display:none;}} /* 왼쪽 메뉴 사본 (+72px) */
@media (min-width:768px) and (max-width:799px) {:where(body.v2-side-nav) #merciUX .launch-copy small {display:none;}} /* 왼쪽 메뉴 사본 (+200px) */
/* 이동 라벨: 글자와 꺾쇠를 한 묶음으로 정렬. 크기는 라벨에 비례하고 간격은 공통 토큰으로 관리한다. */
#merciUX .action-label {display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);max-width:100%;vertical-align:middle;font-size:inherit;line-height:inherit;}
#merciUX .action-label > .action-label-text {min-width:0;font-size:inherit;line-height:inherit;font-weight:400;} /* 링크·버튼 글자는 400 (사용자 결정 2026-09-14 — 같은 날 정했던 600에서 바꿨다) */
#merciUX .action-label > .fa-chevron-right {flex:0 0 auto;font-size:.75em;line-height:1;color:inherit;}
#merciUX .action-label > .fa-chevron-right:before {font-size:inherit;line-height:inherit;color:inherit;}
#merciUX .focus-cta > .action-label {width:100%;justify-content:space-between;font-size:inherit;line-height:inherit;}
#merciUX .focus-cta > .action-label > .fa-chevron-right {font-size:1em;font-weight:900;-webkit-text-stroke:.04em currentColor;}
#merciUX .focus-complete {margin:var(--space-3) 0 0;color:var(--color-white);font-size:var(--text-xl);font-weight:var(--font-bold);line-height:1.5;}
#merciUX .saved-arrow .fa-chevron-right, #merciUX .record-preview > span:last-child .fa-chevron-right, #merciUX #v2RecordAcc .acc-caret .fa-chevron-right {font-size:.75em;line-height:1;}
#merciUX .saved-arrow .fa-chevron-right:before, #merciUX .record-preview > span:last-child .fa-chevron-right:before, #merciUX #v2RecordAcc .acc-caret .fa-chevron-right:before {font-size:inherit;line-height:inherit;color:inherit;}
#merciUX #v2RecordAcc .acc-caret {font-size:inherit;}
#merciUX #v2RecordAcc.open .acc-caret .fa-chevron-right {transform:rotate(90deg);}
/* ── v2 테스트 바(v2/test/_scenario.inc.php): 앱 헤더 위 노란 띠. 회원 상태·오늘 문제 수 시나리오 — 사용자 요청 2026-09-12. 공개 전환 때 함께 제거 */
:is(#merciUX,#v2Testbar) .v2-testbar {display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:6px 14px;background:var(--color-warning-light,#FEF3C7);color:var(--color-warning-dark,#92400E);font-size:13px;border-bottom:1px solid #f5e3a6;}
:is(#merciUX,#v2Testbar) .v2-testbar.is-on {background:#FDE68A;}
:is(#merciUX,#v2Testbar) .v2-testbar-label {font-weight:700;letter-spacing:.02em;}
:is(#merciUX,#v2Testbar) .v2-testbar label {display:inline-flex;align-items:center;gap:5px;}
:is(#merciUX,#v2Testbar) .v2-testbar select {font-size:13px;padding:3px 6px;border:1px solid #e9d38a;border-radius:6px;background:#fff;color:#1E293B;max-width:170px;}
:is(#merciUX,#v2Testbar) .v2-testbar button {margin-left:auto;font-size:13px;padding:3px 10px;border-radius:6px;background:#92400E;color:#fff;}
/* ── 서재 유형 셀렉트: 누를 때 생기는 파란 포커스 테두리(시안 focus-visible 3px #6bb6ff) 제거 — 사용자 결정 2026-09-12 */
#merciUX .row select:focus, #merciUX .row select:focus-visible {outline:0;box-shadow:none;}
/* ── 링크·버튼 클릭 시 파란 포커스 테두리(시안 focus-visible 3px #6bb6ff) 전체 제거 — 사용자 결정 2026-09-12 (홈 이어서 학습 바에서 확인). 입력칸(input/textarea)은 유지 */
#merciUX a:focus, #merciUX a:focus-visible, #merciUX button:focus, #merciUX button:focus-visible, #merciUX select:focus, #merciUX select:focus-visible {outline:0;box-shadow:none;}
#merciUX .page-apphead .library-tools-shortcut {margin-left:auto;} /* 서재: 공부 필수 도구를 앱 헤더 오른쪽 끝에 — 사용자 결정 2026-09-12 (본문의 .library-title-row 는 제거) */
/* ── 오늘 탭 데스크톱: 이론집 공부·오늘 오답·암기카드 3장을 한 줄에 (사용자 결정 2026-09-12). 마크업은 그대로 두고 부모를 3열 격자로, 탭·상단(문제 카드|주간 그래프)은 전체 폭 ── */
@media (min-width:1024px) {
:where(body:not(.v2-side-nav)) #merciUX .study-design-study {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 var(--space-4);align-items:stretch;}
:where(body:not(.v2-side-nav)) #merciUX .study-design-study > :not(.review-independent) {grid-column:1 / -1;}
:where(body:not(.v2-side-nav)) #merciUX .study-design-study > .review-independent {height:auto;min-height:220px;} /* 상단 카드(≈320px)의 2/3 높이. 본문은 기존 flex:1 + 가운데 정렬이라 남는 공간의 세로 중앙에 놓인다 (2026-09-12) */
}
@media (min-width:1264px) {
:where(body.v2-side-nav) #merciUX .study-design-study {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 var(--space-4);align-items:stretch;}
:where(body.v2-side-nav) #merciUX .study-design-study > :not(.review-independent) {grid-column:1 / -1;}
:where(body.v2-side-nav) #merciUX .study-design-study > .review-independent {height:auto;min-height:220px;} /* 상단 카드(≈320px)의 2/3 높이. 본문은 기존 flex:1 + 가운데 정렬이라 남는 공간의 세로 중앙에 놓인다 (2026-09-12) */
} /* 왼쪽 메뉴 사본 (+240px) */
/* ── 서재 최근 본 수강권: 600px↑ 에서 카드 폭 = 아래 수강권 격자 셀 폭(태블릿 3열·데스크탑 4열)으로 키움, 썸네일 16:9 비율 유지 — 사용자 결정 2026-09-12. 모바일은 시안 145px 그대로 */
@media (min-width:600px) {
:where(body:not(.v2-side-nav)) #merciUX .library-recent-track {gap:var(--lib-gap);}
:where(body:not(.v2-side-nav)) #merciUX .library-recent-card {flex-basis:calc((100% - var(--lib-gap) * (var(--lib-cols) - 1)) / var(--lib-cols));}
}
@media (max-width:767px) and (min-width:672px) {
:where(body.v2-side-nav) #merciUX .library-recent-track {gap:var(--lib-gap);}
:where(body.v2-side-nav) #merciUX .library-recent-card {flex-basis:calc((100% - var(--lib-gap) * (var(--lib-cols) - 1)) / var(--lib-cols));}
} /* 왼쪽 메뉴 사본 (+72px) */
@media (max-width:1023px) and (min-width:800px) {
:where(body.v2-side-nav) #merciUX .library-recent-track {gap:var(--lib-gap);}
:where(body.v2-side-nav) #merciUX .library-recent-card {flex-basis:calc((100% - var(--lib-gap) * (var(--lib-cols) - 1)) / var(--lib-cols));}
} /* 왼쪽 메뉴 사본 (+200px) */
@media (min-width:1024px) and (min-width:840px) {
:where(body.v2-side-nav) #merciUX .library-recent-track {gap:var(--lib-gap);}
:where(body.v2-side-nav) #merciUX .library-recent-card {flex-basis:calc((100% - var(--lib-gap) * (var(--lib-cols) - 1)) / var(--lib-cols));}
} /* 왼쪽 메뉴 사본 (+240px) */
#v2Testbar.v2-testbar-wrap {background:transparent;} /* 마이페이지처럼 #merciUX 레이아웃이 아닌 사본 화면에서 테스트 바만 감싸는 래퍼 (2026-09-12) */
/* ── 오늘 탭 3카드: 제목 줄과 본문 사이 구분선(카드 폭 꽉 차게). 줄이 들어간 만큼 카드는 필요하면 늘어난다 (사용자 결정 2026-09-14) ── */
#merciUX .study-design-study > .review-independent {height:auto;}
#merciUX .study-design-study > .review-independent .independent-top {flex:0 0 auto;margin:0 calc(-1 * var(--box-px)) var(--space-4);padding:0 var(--box-px) var(--space-3);border-bottom:1px solid var(--color-gray-100);}
/* ── 오늘 탭 3카드 마무리: ① 아래 액션(시작하기·다시 풀기·복습하기)의 좌우 버튼 여백을 없애 화살표 오른쪽 끝을 위 링크와 같은 선에 맞춘다 ② 카드 대표 문구는 숫자와 같은 검정 (사용자 결정 2026-09-14) ── */
#merciUX .study-design-study > .review-independent .independent-action {min-width:0;padding:10px 0;justify-content:flex-end;background:transparent;}
#merciUX .study-design-study > .review-independent .reading-unified-copy > strong, #merciUX .study-design-study > .review-independent .independent-body p strong {color:var(--text-primary);}
#merciUX .study-design-study .focus-visual {display:none;} /* 문제 공부 카드의 종이·체크 일러스트 제거 (사용자 결정 2026-09-14) */
#merciUX .plan-guide-kicker {font-weight:400;} /* 시안 750 + 공통 700 규칙을 눌러 400으로 (사용자 결정 2026-09-14) */

/* ── 내 자료(데스크톱 ≥1024): 만들기 4카드 오른쪽 빈자리에 「모아둔 자료」·「학습 기록」(.materials-side 묶음)을 옆으로 붙인다 — 사용자 결정 2026-09-15. 오른쪽 열은 카드 두 줄과 같은 높이의 두 칸(.materials-side-block)으로 나눠 제목 글자가 각 줄 카드 안 제목(위 여백 16px)과 같은 선에 오게 한다. 4카드 아래 구분선은 왼쪽 열에만 걸리므로 뺀다 */
@media (min-width:1024px) {
:where(body:not(.v2-side-nav)) #merciUX .study-design-materials {display:grid;grid-template-columns:minmax(0,640px) minmax(0,1fr);column-gap:var(--space-8);align-items:start;}
:where(body:not(.v2-side-nav)) #merciUX .study-design-materials > * {grid-column:1 / -1;min-width:0;}
:where(body:not(.v2-side-nav)) #merciUX .study-design-materials > .material-launch {grid-column:1;margin:0;padding:0;border-bottom:0;}
:where(body:not(.v2-side-nav)) #merciUX .study-design-materials > .materials-side {grid-column:2;align-self:stretch;display:grid;grid-template-rows:minmax(0,1fr) minmax(0,1fr);row-gap:var(--space-3);contain:size;} /* 높이는 왼쪽 4카드 열에서만 받고(contain:size = 내 내용은 높이 계산에서 제외) 두 칸은 항상 절반씩 → 학습기록을 펼쳐도 「학습 기록」 제목이 카드 2줄째 선에 그대로 머문다. 펼친 본문은 칸 밖으로 흘러내린다(아래 .acc overflow) */
:where(body:not(.v2-side-nav)) #merciUX .study-design-materials .materials-memos .acc {overflow:visible;}
:where(body:not(.v2-side-nav)) #merciUX .study-design-materials .materials-side-block {min-width:0;}
:where(body:not(.v2-side-nav)) #merciUX .study-design-materials .materials-side-block > .materials-heading {margin:0 0 12px;padding-top:16px;}
:where(body:not(.v2-side-nav)) #merciUX .study-design-materials .materials-side-block > .materials-heading h3 {font-size:16px;line-height:1.35;letter-spacing:-.4px;}
}
@media (min-width:1264px) {
:where(body.v2-side-nav) #merciUX .study-design-materials {display:grid;grid-template-columns:minmax(0,640px) minmax(0,1fr);column-gap:var(--space-8);align-items:start;}
:where(body.v2-side-nav) #merciUX .study-design-materials > * {grid-column:1 / -1;min-width:0;}
:where(body.v2-side-nav) #merciUX .study-design-materials > .material-launch {grid-column:1;margin:0;padding:0;border-bottom:0;}
:where(body.v2-side-nav) #merciUX .study-design-materials > .materials-side {grid-column:2;align-self:stretch;display:grid;grid-template-rows:minmax(0,1fr) minmax(0,1fr);row-gap:var(--space-3);contain:size;} /* 높이는 왼쪽 4카드 열에서만 받고(contain:size = 내 내용은 높이 계산에서 제외) 두 칸은 항상 절반씩 → 학습기록을 펼쳐도 「학습 기록」 제목이 카드 2줄째 선에 그대로 머문다. 펼친 본문은 칸 밖으로 흘러내린다(아래 .acc overflow) */
:where(body.v2-side-nav) #merciUX .study-design-materials .materials-memos .acc {overflow:visible;}
:where(body.v2-side-nav) #merciUX .study-design-materials .materials-side-block {min-width:0;}
:where(body.v2-side-nav) #merciUX .study-design-materials .materials-side-block > .materials-heading {margin:0 0 12px;padding-top:16px;}
:where(body.v2-side-nav) #merciUX .study-design-materials .materials-side-block > .materials-heading h3 {font-size:16px;line-height:1.35;letter-spacing:-.4px;}
} /* 왼쪽 메뉴 사본 (+240px) */
/* ── 공부하기 · 무료 탭(pages/_mynote_free.inc.php): 옛 서재 「무료로 시작하기」 카드. 격자·썸네일 비율·제목은 서재 수강권 카드 클래스(library-grid/library-product/library-thumb)를 그대로 써서 서재와 같게 — 여기엔 이미지 없는 카드의 글자 썸네일과 빈 안내만 둔다 (사용자 결정 2026-09-23) ── */
#merciUX .study-design-free .free-thumb-text {position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:4px;padding:0 14px;color:var(--color-primary-800);}
#merciUX .study-design-free .free-thumb-text small {font-size:13px;font-weight:700;color:var(--color-primary-600);}
#merciUX .study-design-free .free-thumb-text strong {font-size:16px;font-weight:700;line-height:1.3;}
#merciUX .study-design-free .free-thumb-text span {font-size:13px;color:#5b6b82;}
#merciUX .study-design-free .free-empty {margin:24px 0;font-size:14px;color:#8a96a8;text-align:center;}

/* ── 카드 썸네일 「~ 만료일」 배지(.library-period-badge): 정식 구매(체험권·구독 제외) 보유 수강권의 내 만료일. 서재 격자·최근 본·홈 선반 카드 공통. 리뉴얼 전 서재 label-period 복구 (사용자 결정 2026-09-23)
   ⚠️ 이 파일을 옛 로컬본으로 통째 덮어쓰면 이 규칙이 사라져 배지가 썸네일 img 밑에 깔려 안 보인다(2026-09-23 17:16 유실 → 2026-09-29 복구). 수정은 부분 편집으로만. ── */
#merciUX .library-period-badge {position:absolute;top:8px;left:8px;z-index:2;display:inline-flex;align-items:center;gap:4px;padding:4px 9px;border-radius:20px;background:rgba(255,255,255,.92);color:var(--color-primary-700);font-size:11px;font-weight:700;line-height:1;letter-spacing:0;box-shadow:0 2px 8px rgba(0,0,0,.08);pointer-events:none;}
#merciUX .library-period-badge i {font-size:10px;}

/* ============================================================================
   자동 생성 블록 (scripts/v2_build_mock_css.py) — 손으로 고치지 말 것. 디자인 가이드 원칙 4·7.
   ============================================================================ */
/* 최소 글자 13px: 시안의 13px 미만 선택자 142개 */
#merciUX .eyebrow, #merciUX .principle strong, #merciUX .journey, #merciUX .muted, #merciUX .note, #merciUX label, #merciUX .status, #merciUX .badge, #merciUX .hero .subtle, #merciUX .textbtn, #merciUX .listrow small, #merciUX .quick small, #merciUX .poster small, #merciUX .poster .posterfoot, #merciUX nav button, #merciUX .jobbar, #merciUX .jobbar button, #merciUX .toast, #merciUX .steps, #merciUX .ledger, #merciUX table, #merciUX summary, #merciUX .footer, #merciUX .home-ad-placeholder small, #merciUX .home-ad-label, #merciUX .home-resume small, #merciUX .home-class[data-id="nclex"] small, #merciUX .home-class .posterfoot, #merciUX .pass-lines, #merciUX .pass-lines strong, #merciUX .shelf-desc, #merciUX .showcase-placeholder small, #merciUX .showcase-bottom, #merciUX .library-thumb-fallback, #merciUX .library-product-meta, #merciUX .library-product-action, #merciUX .library-grid .library-product-action, #merciUX .library-rating, #merciUX .class-offer p, #merciUX .search-count, #merciUX .study-lead small, #merciUX .study-lead span, #merciUX .study-axis small, #merciUX .record-chip small, #merciUX .question-tool, #merciUX .result-action b, #merciUX .result-action small, #merciUX .selection-bar button, #merciUX .record-group, #merciUX .empty-compact, #merciUX .source-tag, #merciUX .acc-copy small, #merciUX .acc-caret, #merciUX .today-guide .ghost, #merciUX .study-kicker, #merciUX .study-kicker span:last-child, #merciUX .study-review-hero > p, #merciUX .study-review-source > span, #merciUX .study-review-source > div, #merciUX .study-memory > span, #merciUX .study-material-foot b, #merciUX .study-content-row .copy small, #merciUX .study-action, #merciUX .record-source, #merciUX .study-pair .textbtn, #merciUX .study-select-link, #merciUX .study-design .study-progress-label, #merciUX .study-design .study-count span, #merciUX .study-design .study-pair .btn, #merciUX .study-design .study-pair .textbtn, #merciUX .study-design .review-empty, #merciUX .study-design .study-book-resume .copy small, #merciUX .study-design .study-action, #merciUX .study-design-study > .textbtn:last-child, #merciUX .study-design .section .textbtn, #merciUX .study-design .listrow small, #merciUX .study-design .material-tools .btn, #merciUX .study-design .acc-body > .textbtn, #merciUX .study-design .record-source, #merciUX .study-design .record-excerpt, #merciUX .study-design .record-date, #merciUX .study-design .chip, #merciUX .study-design .empty-compact, #merciUX #button-flow-guide p, #merciUX #button-flow-guide table, #merciUX .focus-top button, #merciUX .focus-kicker, #merciUX .focus-stats span span, #merciUX .focus-caption, #merciUX .reading-top button, #merciUX .reading-cover b, #merciUX .reading-copy small, #merciUX .reading-action, #merciUX .materials-heading > span, #merciUX .study-design-materials .materials-imports .acc-copy small, #merciUX .materials-saved small, #merciUX .study-design-materials .materials-memos .acc-copy small, #merciUX .materials-history small, #merciUX .material-launch-heading p, #merciUX .launch-pdf .launch-art, #merciUX .independent-top > button, #merciUX .independent-body p, #merciUX .independent-body small, #merciUX .independent-action, #merciUX .independent-empty, #merciUX .study-design-study > .review-independent .independent-top > button, #merciUX .study-design-study > .review-independent .independent-action, #merciUX .reading-unified-copy > small, #merciUX .library-tools-shortcut, #merciUX .library-recent-title > span, #merciUX .library-recent-copy small, #merciUX .library-recent-copy b, #merciUX .library-recent-placeholder, #merciUX .library-recent-copy strong, #merciUX .access-check, #merciUX .class-access-line strong, #merciUX .access-link, #merciUX .plan-guide-kicker, #merciUX .library-plan-guide p, #merciUX .plan-guide-cta, #merciUX .plan-guide-links button, #merciUX .plan-active-status, #merciUX .library-plan-active > button, #merciUX .achievement-eyebrow, #merciUX .achievement-hero > p, #merciUX .achievement-recovery span, #merciUX .achievement-recovery p, #merciUX .achievement-section-head span, #merciUX .achievement-day > span, #merciUX .achievement-day small, #merciUX .achievement-footnote, #merciUX .achievement-progress strong, #merciUX .achievement-progress span, #merciUX .achievement-empty, #merciUX .study-picker-guide, #merciUX .achievement-mini-head small, #merciUX .achievement-mini-head strong, #merciUX .achievement-mini-today, #merciUX .achievement-mini-day small, #merciUX .achievement-mini-caption, #merciUX .daily-badge-date, #merciUX .daily-medal small, #merciUX .daily-extra {font-size:13px;}
/* 최대 굵기 700: 시안의 700 초과 선택자 30개 */
#merciUX .eyebrow, #merciUX .status, #merciUX .logo, #merciUX .tabs button, #merciUX .btn, #merciUX .jobbar button, #merciUX .numbers, #merciUX .study-axis .axis-icon, #merciUX .question-tool.on, #merciUX .selection-bar button, #merciUX .record-group, #merciUX .source-tag, #merciUX .study-design .study-content-name, #merciUX .study-design .study-count strong, #merciUX .focus-label, #merciUX .focus-stats strong, #merciUX .focus-percent, #merciUX .focus-cta, #merciUX .reading-label, #merciUX .reading-action, #merciUX .launch-art, #merciUX .independent-top h3, #merciUX .independent-action, #merciUX .library-recent-icon, #merciUX .access-check, #merciUX .plan-guide-cta, #merciUX .achievement-total strong, #merciUX .achievement-recovery strong b, #merciUX .achievement-day.is-today small, #merciUX .study-picker-item.is-selected .library-product-action {font-weight:700;}
/* 타원형 최소 패딩 6px 22px: 시안의 칩형 선택자 4개 */
#merciUX .study-kicker span:last-child {padding:6px 22px;}
#merciUX .study-design .chip {padding:6px 22px;}
#merciUX .study-design-materials .materials-imports .acc-copy small {padding:6px 22px;}
#merciUX .daily-extra {padding:6px 22px;}
/* 상자 안쪽 여백 20px 16px 통일(원칙 9): 둥글기 12~24px 상자 28개 */
#merciUX .note, #merciUX .hero, #merciUX .card, #merciUX .quick, #merciUX .poster, #merciUX .option, #merciUX .flash, #merciUX .home-resume, #merciUX .class-offer, #merciUX .home-bottom, #merciUX .study-lead, #merciUX .study-axis, #merciUX .empty-compact, #merciUX .today-guide, #merciUX .study-review-hero, #merciUX .study-kicker span:last-child, #merciUX .study-review-source, #merciUX .study-review-list, #merciUX .record-preview, #merciUX .reading-panel, #merciUX .study-design-materials .materials-imports .acc, #merciUX .study-design-materials .materials-imports .acc-copy small, #merciUX .study-design-materials .materials-memos .record-strip, #merciUX .review-independent, #merciUX .study-design-study > .review-independent, #merciUX .library-plan-guide, #merciUX .achievement-recovery, #merciUX .daily-extra {padding:20px 16px;}
/* 둥글기 스케일 맞춤(원칙 10, §4 스케일 4/6/8/12/16): 스케일 밖 선택자 67개 */
#merciUX .home-ad-label, #merciUX .record-highlight, #merciUX .focus-sheet i {border-radius:4px;}
#merciUX .launch-art {border-radius:6px;}
#merciUX .journey span, #merciUX .selection-bar button, #merciUX .study-action, #merciUX .study-design .study-pair .btn, #merciUX .study-design .study-action, #merciUX .study-design .tileicon, #merciUX .study-design .record-photo, #merciUX .focus-sheet, #merciUX .focus-progress, #merciUX .focus-progress i {border-radius:8px;}
#merciUX input,#merciUX select,#merciUX textarea, #merciUX .iconbtn, #merciUX .tileicon, #merciUX .progress, #merciUX .progress i, #merciUX .study-axis .axis-icon, #merciUX .result-action, #merciUX .selection-bar, #merciUX .empty-compact, #merciUX .study-review-source, #merciUX .study-design .material-tools .btn, #merciUX .study-design .record-preview, #merciUX .study-design .empty-compact, #merciUX #button-flow-guide, #merciUX .focus-cta, #merciUX .materials-saved .saved-icon, #merciUX .reading-action, #merciUX .independent-action, #merciUX .study-design-study > .review-independent .independent-action, #merciUX .history-row-icon, #merciUX .library-tools-shortcut, #merciUX .library-recent-thumb, #merciUX .class-access-line, #merciUX .plan-guide-cta, #merciUX .library-plan-active {border-radius:12px;}
#merciUX .reviewbox, #merciUX .hero, #merciUX .quick, #merciUX .chip, #merciUX .poster, #merciUX .flash, #merciUX .class-offer, #merciUX .home-bottom, #merciUX .study-lead, #merciUX .study-axis, #merciUX .question-tool, #merciUX .acc, #merciUX .today-guide, #merciUX .study-review-hero, #merciUX .study-kicker span:last-child, #merciUX .study-design .chip, #merciUX .focus-panel, #merciUX .reading-panel, #merciUX .study-design-materials .materials-imports .acc, #merciUX .study-design-materials .materials-imports .acc-copy small, #merciUX .materials-saved button, #merciUX .launch-card, #merciUX .review-independent, #merciUX .study-design-study > .review-independent, #merciUX .library-recent-card, #merciUX .library-plan-guide, #merciUX .achievement-recovery, #merciUX .daily-extra {border-radius:16px;}
