/* Shared typography, attachments and library folders. */
.dashboard-bottom>.panel{padding:28px 30px}.dashboard-bottom>.panel h2{font-size:21px;line-height:1.35;margin-bottom:20px}.dashboard-bottom>.panel>p{font-family:inherit;font-size:14px;line-height:1.65;padding:15px 0;margin:0;border-bottom:1px solid var(--line)}.dashboard-bottom>.panel>p a{font-weight:600}.dashboard-bottom>.panel small{font-size:12px;color:var(--muted)}.dashboard-bottom>.panel>.text-link{display:inline-flex;margin-top:20px;font-size:13px}
.folder-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:20px 0}.folder-card{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:22px;background:var(--white);border:1px solid var(--line);border-radius:10px;font-size:14px}.folder-card .icon{color:var(--gold);width:25px;height:25px}.folder-card span{font-size:12px;color:var(--muted);width:100%;padding-left:37px}.folder-card:hover{border-color:var(--gold)}
.tawa-attachments{margin:24px 0}.attachment-card{display:flex;align-items:center;gap:18px;padding:20px;border:1px solid var(--line);border-radius:10px;background:var(--white)}.attachment-card>div{flex:1;min-width:0;overflow-wrap:anywhere}.attachment-card strong{font-size:14px}.attachment-card p{font-size:12px;margin:4px 0;color:var(--muted)}.attachment-card .text-link{font-size:12px}.pdf-preview{width:100%;height:580px;max-height:75vh;border:1px solid var(--line);border-radius:8px;margin-top:12px;background:var(--white)}.attachment-preview{max-width:100%;max-height:450px;object-fit:contain;margin:12px 0}.tawa-upload{padding:18px;margin:20px 0;background:var(--paper);border:1px dashed var(--gold);border-radius:8px}.tawa-upload label{font-size:14px;font-weight:600;display:block}.tawa-upload input{display:block;margin:12px 0;max-width:100%}.tawa-upload small{font-size:12px;color:var(--muted)}.certificate-panel{padding:28px;margin:24px 0}.certificate-panel h2{font-size:22px;margin:12px 0}.certificate-panel p{font-size:14px;line-height:1.7;margin-bottom:18px}
.theme-toggle{position:fixed;right:25px;top:20px;z-index:55;border:1px solid var(--line);background:var(--white);color:var(--ink);border-radius:30px;min-height:38px;padding:8px 14px;font:600 12px Manrope,sans-serif;cursor:pointer}.theme-toggle:hover{border-color:var(--gold)}
:root[data-theme="dark"]{color-scheme:dark;--ink:#f1e8d9;--muted:#bfb3a1;--paper:#191b1b;--white:#242726;--line:#42453f;--mint:#363a33;--teal:#e4aa82;--deep:#edc49f;--gold:#d6b173;--accent:#d6b173;background:var(--paper);color:var(--ink)}
[data-theme="dark"] body,[data-theme="dark"] .app-main{background:var(--paper);color:var(--ink)}
[data-theme="dark"] .panel,[data-theme="dark"] .course-card,[data-theme="dark"] .event-card,[data-theme="dark"] .news-card,[data-theme="dark"] .mobile-topbar,[data-theme="dark"] .filter-bar,[data-theme="dark"] .native-content input,[data-theme="dark"] input,[data-theme="dark"] select,[data-theme="dark"] textarea,[data-theme="dark"] .stat-card,[data-theme="dark"] .bbp-form{background:var(--white)!important;color:var(--ink)!important;border-color:var(--line)!important}
[data-theme="dark"] .hero{background:#34392e;color:var(--ink)}[data-theme="dark"] .hero p,[data-theme="dark"] .hero h1{color:var(--ink)}
[data-theme="dark"] .eyebrow,[data-theme="dark"] .text-link,[data-theme="dark"] .back-link,[data-theme="dark"] .library-note,[data-theme="dark"] .course-access-label{color:#e4bc89}
[data-theme="dark"] .tag,[data-theme="dark"] .filter-tab.active,[data-theme="dark"] .lesson-number,[data-theme="dark"] .file-icon,[data-theme="dark"] .notification-symbol{background:#3c3a30;color:#edcf9e}
[data-theme="dark"] .button{background:#aa5548;color:#fff8ec;border-color:#aa5548}[data-theme="dark"] .button.secondary{background:transparent;color:#efc18e;border-color:#9e7b55}
[data-theme="dark"] #bbpress-forums,[data-theme="dark"] #bbpress-forums .bbp-reply-content{color:var(--ink)}[data-theme="dark"] #bbpress-forums li.bbp-header,[data-theme="dark"] #bbpress-forums li.bbp-footer,[data-theme="dark"] #bbpress-forums div.bbp-reply-header,[data-theme="dark"] #bbpress-forums div.bbp-topic-header{background:#30362f;color:var(--ink)}
[data-theme="dark"] .topic-row,[data-theme="dark"] .document-row{border-color:var(--line)}[data-theme="dark"] .muted,[data-theme="dark"] .subtle,[data-theme="dark"] .page-footer{color:var(--muted)}
@media(max-width:1023px){.theme-toggle{top:auto;bottom:24px;left:18px;right:auto;z-index:45}.dashboard-bottom>.panel{padding:22px}.pdf-preview{height:420px}.attachment-card{padding:14px;gap:10px}}
@media print{.theme-toggle{display:none}}

[data-theme="dark"] .mce-panel,[data-theme="dark"] .mce-toolbar-grp,[data-theme="dark"] .mce-btn{background:var(--white)!important;border-color:var(--line)!important}[data-theme="dark"] .mce-ico{color:var(--ink)!important}

.theme-toggle{top:auto;bottom:24px;right:100px}
[data-theme="dark"] .topbar,[data-theme="dark"] .demo-students{background:var(--white);color:var(--ink);border-color:var(--line)}[data-theme="dark"] .breadcrumb,[data-theme="dark"] .breadcrumb strong,[data-theme="dark"] .profile-link strong,[data-theme="dark"] .demo-students strong{color:var(--ink)}[data-theme="dark"] .demo-students>div>span,[data-theme="dark"] .filter-tab{color:var(--muted)}[data-theme="dark"] .student-button{background:#343a32;color:#e9d1ad;border-color:#69614d}[data-theme="dark"] .student-button.selected{background:#5b503d;color:#fff0ce}
@media(max-width:1023px){.theme-toggle{right:auto;left:18px}}

.pdf-preview{height:auto;max-height:75vh;overflow:auto;padding:12px;text-align:center}.pdf-preview canvas{display:block;max-width:100%;height:auto!important;margin:auto;background:white}.pdf-toolbar{position:sticky;top:0;display:flex;align-items:center;justify-content:center;gap:20px;padding:8px;background:var(--white);color:var(--ink);z-index:1}.pdf-toolbar button{border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:7px 12px;border-radius:6px;cursor:pointer}.pdf-toolbar button:disabled{opacity:.4}.pdf-page-number{font-size:12px}

[data-theme="dark"] .prose p,[data-theme="dark"] .prose li,[data-theme="dark"] .course-body>p,[data-theme="dark"] .event-body p,[data-theme="dark"] .news-body>p,[data-theme="dark"] .document-row p,[data-theme="dark"] .topic-copy p,[data-theme="dark"] .native-content p{color:var(--muted)}

/* Account and community use the same cards, type scale and surface colors. */
.avatar{overflow:hidden}.avatar img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}.account-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:24px;align-items:start}.account-identity{padding:32px 24px;text-align:center;position:sticky;top:25px}.profile-photo{width:104px;height:104px;margin:0 auto 18px;font-size:36px;display:flex;align-items:center;justify-content:center}.account-identity h2{font-size:22px;line-height:1.4;overflow-wrap:anywhere;margin:0 0 10px}.membership-badge,.status-pill{display:inline-flex;padding:6px 11px;border-radius:20px;background:var(--mint);color:var(--ink);font-size:12px;font-weight:600}.account-identity>p{font-size:12px;color:var(--muted);margin:16px 0}.account-identity .text-link{font-size:12px}.account-sections{display:grid;gap:22px;min-width:0}.account-card,.account-form{padding:28px 30px}.account-card h2,.account-form h2{font-size:21px;margin:10px 0 20px}.account-form label{display:flex;flex-direction:column;gap:9px;font-size:13px;font-weight:600;margin:18px 0 10px}.account-form input,.account-form select{width:100%;max-width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font:inherit;min-height:44px}.account-form input[type=file]{font-size:12px}.field-help{font-size:12px;line-height:1.7;color:var(--muted);margin:8px 0 16px}.account-form .button{margin-top:12px}.avatar-feedback{font-size:12px;color:var(--teal)}.account-divider{border-top:1px solid var(--line);margin:28px 0}.account-plan{display:flex;justify-content:space-between;align-items:center;gap:14px}.account-plan strong{font-size:20px}.account-card>p{font-size:13px;line-height:1.7;color:var(--muted);margin-top:12px}.account-actions{display:flex;flex-wrap:wrap;gap:20px;align-items:center;margin-top:22px}.account-actions .text-link{font-size:13px}.account-details>div{display:grid;grid-template-columns:1fr 2fr;gap:14px;padding:14px 0;border-bottom:1px solid var(--line);font-size:13px}.account-details dt{color:var(--muted)}.account-details dd{margin:0;overflow-wrap:anywhere}.account-table-wrap{overflow:auto}.account-table{border-collapse:collapse;width:100%;font-size:12px;text-align:left}.account-table th{color:var(--muted);font-weight:600}.account-table th,.account-table td{padding:14px 12px;border-bottom:1px solid var(--line);white-space:nowrap}.account-table .text-link{font-size:12px}.certificate-row{display:flex;align-items:center;gap:13px;padding:16px 0;border-bottom:1px solid var(--line);font-size:14px}.certificate-row span{flex:1}.certificate-row .icon{flex-shrink:0;width:20px;color:var(--gold)}.account-success{padding:16px 20px;margin-bottom:20px;border:1px solid var(--line);border-radius:8px;background:var(--mint);font-size:14px}.community-insights{display:grid;gap:18px;min-width:0}.insights-card{padding:22px}.insights-card h2{font-size:17px;line-height:1.4;margin:5px 0 17px;letter-spacing:-.4px}.community-tags{display:flex;flex-wrap:wrap;gap:8px}.community-tags .tag{font-size:11px;padding:7px 10px}.community-tags .tag span{opacity:.7;margin-left:5px}.community-tags .muted{font-size:12px;line-height:1.7}.insights-topics{list-style:none;margin:0;padding:0}.insights-topics li{border-bottom:1px solid var(--line);padding:12px 0;font-size:12px;line-height:1.65}.insights-topics li:last-child{border:0;padding-bottom:0}.insights-topics a{font-weight:600}.insights-topics small{display:block;color:var(--muted);font-size:11px;margin-top:5px}.online-member{display:flex;gap:10px;align-items:center;padding:10px 0}.online-member>div{flex:1;min-width:0}.online-member strong{font-size:12px;overflow-wrap:anywhere}.online-member small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.online-member .avatar{width:34px;height:34px;flex-shrink:0}.online-dot{height:7px;width:7px;background:#799269;border-radius:50%;flex-shrink:0}.community-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px}.community-stats>div{background:var(--paper);padding:13px;border-radius:8px;display:flex;flex-direction:column-reverse;gap:7px}.community-stats dt{font-size:10px;line-height:1.4;color:var(--muted)}.community-stats dd{margin:0;font-size:23px;font-weight:700}.community-layout{align-items:start}.insights-card>.field-help{margin-top:-8px}
@media(max-width:1100px){.account-layout{grid-template-columns:220px minmax(0,1fr)}.account-form,.account-card{padding:24px}}
@media(max-width:767px){.account-layout{grid-template-columns:1fr}.account-identity{position:static}.account-card,.account-form{padding:22px}.account-identity{padding:26px}.account-details>div{grid-template-columns:1fr;gap:7px}.community-insights{grid-template-columns:1fr}.community-layout{grid-template-columns:1fr}.insights-card{padding:22px}.account-actions{gap:15px}.account-table th,.account-table td{padding:12px 9px}}

.account-sections{grid-template-columns:minmax(0,1fr)}.account-sections>.panel{min-width:0;max-width:100%;width:100%}.account-table-wrap{max-width:100%;min-width:0}.account-form input[type=file]{min-width:0}
/* Checkout billing follows the same account cards and mobile layout. */
.billing-section{margin-block:24px;padding:clamp(20px,3vw,36px)}
.billing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.billing-grid label{display:flex;flex-direction:column;gap:8px;min-width:0}
.billing-grid input,.billing-grid select{width:100%;min-width:0;box-sizing:border-box}
@media(max-width:640px){.billing-grid{grid-template-columns:minmax(0,1fr)}}
.mp-test-card{padding:clamp(20px,3vw,32px);margin-block:24px;border-inline-start:4px solid #bd9857}
.mp-test-card p{line-height:1.8}.mp-test-card strong{overflow-wrap:anywhere}
.mp-test-card{max-width:680px;border-radius:20px}.mp-test-card h2{margin-block:12px 24px}
.mp-test-number{display:flex;align-items:center;gap:16px;margin-bottom:26px}.mp-test-number>div{min-width:0;flex:1}.mp-test-number strong{display:block;font-size:clamp(15px,2vw,19px);letter-spacing:.025em}
.mp-mastercard{background:#101010;position:relative;width:54px;height:40px;border-radius:10px;flex:0 0 54px}.mp-mastercard i{position:absolute;top:12px;width:18px;height:18px;border-radius:50%;left:13px;background:#eb001b}.mp-mastercard i+i{left:23px;background:#f79e1b;opacity:.9}
.mp-test-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px;margin-bottom:24px}.mp-test-label{display:block;font-size:.9rem;margin-bottom:7px;opacity:.8}.mp-test-value{display:flex;align-items:center;gap:8px}
.mp-test-copy{padding:6px;background:transparent!important;border:0!important;color:inherit!important;min-width:32px;min-height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;cursor:pointer}.mp-test-copy svg{width:20px;height:20px}.mp-test-copy:hover{opacity:.7}.mp-test-copy:focus-visible{outline:2px solid #bd9857;outline-offset:2px}
.mp-test-card select{width:100%;box-sizing:border-box;margin-bottom:22px;min-width:0}.mp-copy-feedback{min-height:1.4em;margin-bottom:0}
@media(max-width:440px){.mp-test-number{gap:9px}.mp-test-number strong{font-size:13px;letter-spacing:0;white-space:nowrap}.mp-mastercard{width:42px;flex-basis:42px}.mp-mastercard i{left:7px}.mp-mastercard i+i{left:17px}.mp-test-grid{gap:20px 12px}.mp-test-value{gap:4px}.mp-test-value>span{font-size:.9rem;min-width:0}.mp-test-copy{flex:0 0 32px}}
.mp-test-card button.mp-test-copy{width:32px;height:32px;min-height:32px;padding:5px!important;flex:0 0 32px;box-sizing:border-box!important;line-height:1}
.mp-test-card button.mp-test-copy svg{width:20px;min-width:20px;height:20px;flex:0 0 20px}
.account-form label.avatar-remove-control{flex-direction:row;align-items:flex-start;gap:10px;font-weight:400;line-height:1.6}.account-form .avatar-remove-control input{width:18px;height:18px;min-height:18px;flex:0 0 18px;margin:2px 0 0;padding:0;accent-color:var(--terra)}
/* Forum attachments: a clear heading, native accessible picker and separate help. */
.tawa-upload{display:flex;flex-direction:column;gap:14px;padding:24px;border:1px solid var(--line);background:var(--paper);border-radius:10px;min-width:0}
.tawa-upload-heading{display:flex;align-items:center;gap:14px}
.tawa-upload-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:8px;background:var(--white);color:var(--terracotta,var(--gold))}
.tawa-upload .tawa-upload-heading label{display:block;margin:0;font-size:16px;line-height:1.5;font-weight:600}
.tawa-upload-heading label span{font-size:13px;font-weight:400;color:var(--muted)}
.tawa-upload .tawa-upload-heading p{margin:4px 0 0;font-size:13px;line-height:1.6;color:var(--muted)}
.tawa-upload input[type=file]{display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%;margin:0;padding:10px;border:1px solid var(--line);border-radius:7px;background:var(--white);color:var(--muted);font:inherit;font-size:13px;line-height:1.7}
.tawa-upload input[type=file]::file-selector-button{margin:0 14px 0 0;padding:9px 14px;border:0;border-radius:5px;background:var(--rust,#843e33);color:#fff;font:inherit;font-weight:600;cursor:pointer}
.tawa-upload input[type=file]:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.tawa-upload .tawa-upload-formats,.tawa-upload .tawa-upload-privacy{display:block;margin:0;font-size:12px;line-height:1.8;color:var(--muted)}
.tawa-upload .tawa-upload-privacy{padding-top:12px;border-top:1px solid var(--line)}
.tawa-course-preview .course-sidebar .button{white-space:normal;text-align:center}
@media(max-width:600px){.tawa-upload{padding:16px;gap:12px}.tawa-upload-heading{align-items:flex-start}.tawa-upload .tawa-upload-heading label{font-size:15px}.tawa-upload-heading label span{display:block}.tawa-upload input[type=file]::file-selector-button{padding:9px 10px;margin-right:8px}}

/* Preserve Tawa's numbered chakana covers for every membership state. */
.course-locked .course-art{display:block}
.course-locked .course-art.teal{background:#535c4d}.course-locked .course-art.amber{background:#b18b4f}.course-locked .course-art.blue{background:#696c63}.course-locked .course-art.rose{background:#a56a52}
.tawa-course-art-detail{margin:0 0 24px;border-radius:8px;min-height:200px}
/* Small cultural vignettes share the original numbered Tawa cover composition. */
.course-art .art-geometry.tawa-cultural-art{clip-path:none;background:none;width:136px;height:136px;top:14px;right:18px;transform:none;color:#f3d69a;opacity:.78}
.tawa-cultural-art svg{display:block;width:100%;height:100%;overflow:visible}
.course-art .tawa-art-motif-name{position:absolute;top:48px;left:22px;max-width:calc(100% - 185px);font-size:11px;line-height:1.6;color:#f7e5c4;letter-spacing:.04em}
.course-art .art-number,.course-art .art-play{z-index:1}
@media(max-width:380px){.course-art .art-geometry.tawa-cultural-art{width:118px;height:118px;right:14px}.course-art .tawa-art-motif-name{max-width:calc(100% - 155px)}}
