.daily-sign[role=button],.academy-head[role=button]{cursor:pointer}
.academy-head[role=button]:after{pointer-events:none}
.topic-count{font-size:11px;color:var(--muted)}
.topic-card{width:100%;display:grid;grid-template-columns:68px minmax(0,1fr) 10px;align-items:center;gap:14px;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;padding:17px 0;color:var(--ink)}
.topic-symbol{height:76px;display:grid;place-items:center;background:#e8dfcd;color:#392e24;font:600 29px var(--serif)}
.topic-card:nth-child(2n) .topic-symbol{background:#8d111b;color:#fff7e8}
.topic-card:nth-child(3n) .topic-symbol{background:#34483f;color:#f7ecd8}
.topic-card small{display:block;color:#91432e;font-size:10px;letter-spacing:.04em}
.topic-card b{display:block;font:600 15px/1.65 var(--serif);margin:6px 0}
.topic-card em{font-size:10px;font-style:normal;color:var(--muted)}
.topic-card i{font-style:normal;color:var(--muted)}
.editorial-page .term-article{padding:24px 22px 42px}
.editorial-page .term-article h2{font-size:26px;line-height:1.55}
.editorial-page .term-article p{font-size:15px;line-height:1.95;text-align:left}
.editorial-page .term-article h3{font-size:19px;line-height:1.6;margin-top:30px}
.editorial-cover{margin:22px -22px 28px}
.editorial-cover img{width:100%;height:auto;display:block;aspect-ratio:16/9;object-fit:cover}
.editorial-cover figcaption{font-size:10px;line-height:1.7;color:var(--muted);padding:9px 22px}
.editorial-practice{padding:1px 17px 8px;background:#eee5d4;border-left:3px solid var(--red);margin-top:26px}
.editorial-sources{border-top:1px solid var(--line);margin-top:30px;padding-top:4px}
.editorial-sources p{font-size:12px!important;color:var(--muted)}
.editorial-sources a{display:block;padding:10px 0;color:#86472d;font-size:12px;line-height:1.7;text-decoration:underline;text-underline-offset:4px}
.article-actions{display:flex;gap:10px;margin-top:25px;flex-wrap:wrap}
.article-actions button,.profile-link{min-height:44px;padding:10px 15px;border:1px solid var(--line);background:#fbf6ea;color:#8e1720;font-size:13px;border-radius:3px}
.article-actions button[aria-pressed=true]{background:#8e1720;color:white}
.profile-head{padding-bottom:45px}
.profile-section{padding:18px 16px;margin-top:16px;background:var(--ivory);border:1px solid var(--line);scroll-margin-top:12px}
.profile-section h3{font:600 17px var(--serif);margin:0 0 12px}
.profile-section p,.profile-section summary{font-size:13px;line-height:1.9;color:#64574c}
.profile-section summary{cursor:pointer;padding:10px 0}
.profile-section details+details{border-top:1px solid var(--line)}
.profile-empty,.local-note{font-size:12px;color:var(--muted);line-height:1.8}
.local-note{padding:0 5px}
.library-row{width:100%;display:flex;gap:10px;align-items:center;justify-content:space-between;text-align:left;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);padding:12px 0;min-height:48px}
.library-row small,.library-row b{display:block}
.library-row small{font-size:10px;color:var(--muted);line-height:1.8}
.library-row b{font:500 14px/1.7 var(--serif)}
.library-row i{font-style:normal;color:var(--muted)}
.profile-link{margin-top:12px;width:100%}
.profile-body .stats span{font-size:11px}
.promo-form label{display:block;font-size:13px;color:var(--muted)}
.promo-form input{box-sizing:border-box;width:100%;min-height:44px;border:1px solid var(--line);padding:10px;margin:8px 0;background:white}
.promo-item{padding:14px 0;border-bottom:1px solid var(--line)}
.promo-item img{display:block;width:168px;height:168px;margin:12px auto;background:white}
.promo-item code{display:block;word-break:break-all;font-size:11px;line-height:1.8}
.promo-item button{padding:10px;min-height:44px;margin:5px 5px 0 0;border:1px solid var(--line);background:var(--paper);color:var(--red)}
.promo-table{width:100%;font-size:12px;border-collapse:collapse;margin-top:10px}
.promo-table th,.promo-table td{text-align:left;padding:7px;border-bottom:1px solid var(--line)}
.promo-error{color:#9b1720!important}
.guardian-poster-builder{margin:0 0 22px;padding:18px 15px;border:1px solid rgba(163,7,18,.18);background:linear-gradient(145deg,#fffaf0,#f3e6cd)}
.guardian-poster-builder h4{margin:0 0 7px;font:600 18px/1.5 var(--serif);color:var(--ink)}
.guardian-poster-builder>p{margin:0 0 15px;font-size:12px;line-height:1.8;color:var(--muted)}
.guardian-poster-builder label{display:block;margin-bottom:7px;font-size:12px;color:var(--muted)}
.guardian-poster-builder select{width:100%;min-height:48px;padding:0 12px;border:1px solid #cdbb9e;border-radius:3px;background:#fffdf7;color:var(--ink);font-size:16px}
.guardian-poster-builder select:focus{outline:2px solid var(--red);outline-offset:2px}
.guardian-poster-progress{margin-top:16px;padding:13px;background:#fffdf7;border-left:3px solid var(--red)}
.guardian-poster-progress p{display:flex;justify-content:space-between;gap:8px;margin:0 0 9px;font-size:12px;line-height:1.6;color:#5f5145}
.guardian-poster-progress b{flex:0 0 auto;color:var(--red)}
.guardian-poster-progress progress{display:block;width:100%;height:8px;accent-color:var(--red)}
.guardian-poster-result{margin-top:16px;text-align:center}
.guardian-poster-result>b{display:block;margin-bottom:10px;font:600 14px var(--serif);color:#70442e}
.guardian-poster-result img{display:block;width:min(100%,310px);height:auto;margin:0 auto 12px;border:1px solid var(--line);box-shadow:0 10px 28px rgba(64,37,20,.12);-webkit-touch-callout:default;user-select:auto}
.guardian-poster-preview-link{display:block;background:transparent!important;color:inherit!important;text-decoration:none}.guardian-poster-actions a{display:flex;align-items:center;justify-content:center;text-decoration:none;background:var(--red);color:white}
.guardian-poster-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.guardian-poster-actions .profile-link{margin-top:0}.guardian-poster-actions button{background:#fffaf0;color:var(--red)}
.guardian-poster-result small{display:block;margin-top:9px;font-size:10px;line-height:1.7;color:var(--muted)}
#guardianPosterRatio{box-sizing:border-box;width:min(430px,calc(100% - 28px));max-height:90vh;padding:24px;border:1px solid #cbb38e;border-radius:16px;background:#fbf4e7;color:#392a1d;box-shadow:0 20px 80px #0004}#guardianPosterRatio::backdrop{background:#211a16a8}#guardianPosterRatio h2{margin:0 0 8px;font:600 22px/1.4 var(--serif)}#guardianPosterRatio>p{margin:0 0 18px;font-size:13px;line-height:1.7;color:#80684d}.guardian-ratio-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.guardian-ratio-options button{display:flex;align-items:center;flex-direction:column;gap:7px;padding:11px 8px;border:1px solid #d7bd96;border-radius:10px;background:#fffaf0;color:#8e1720;font:inherit}.guardian-ratio-options img{display:block;width:100%;height:132px;object-fit:contain}.guardian-ratio-options small{color:#80684d;font-size:11px}.guardian-ratio-cancel{display:block;width:100%;min-height:44px;margin-top:15px;border:0;background:transparent;color:#705b45;font:inherit}
@media(max-width:360px){.topic-card{grid-template-columns:56px minmax(0,1fr) 8px;gap:10px}.topic-card b{font-size:14px}.editorial-page .term-article{padding-inline:18px}.editorial-cover{margin-inline:-18px}}
.birth-date-trigger{display:block;width:100%;padding:16px;text-align:left;border:1px solid var(--line);background:#fffdf766;color:var(--ink);font-size:17px}.birth-date-dialog{width:min(92vw,420px);padding:24px;border:1px solid #d8c8ae;border-radius:12px;background:#fffaf1;color:#251e19}.birth-date-dialog::backdrop{background:#251e1980}.birth-date-dialog h3{margin:0 0 8px;font-size:22px}.birth-date-dialog p{font-size:14px;color:#7c7065}.birth-date-fields{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:12px;margin:24px 0 12px}.birth-date-fields label{font-size:14px}.birth-date-fields input{display:block;width:100%;min-width:0;margin-top:8px;padding:14px 4px;border:1px solid #cdbfa9;border-radius:6px;background:white;text-align:center;font-size:22px}.birth-date-fields input:focus{outline:2px solid #a30712;outline-offset:2px}.birth-date-fields input[aria-invalid=true]{border-color:#a30712}.birth-date-dialog .birth-date-error{min-height:20px;color:#a30712}.birth-date-actions{display:flex;justify-content:flex-end;gap:12px}.birth-date-actions button{min-width:88px;padding:12px;border:1px solid #cdbfa9;border-radius:6px;background:transparent}.birth-date-actions button[type=submit]{background:#a30712;color:white;border-color:#a30712}
