/* Shared admin shell, overview, subscriptions and conversion workspace. */
body.admin-workspace { font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color:#243247; background:#f4f6fa; }
.admin-workspace .content-wrapper { background:#f4f6fa; }
.admin-workspace .main-sidebar { background:#14243a; box-shadow:none!important; }
.admin-workspace .brand-link { display:flex; align-items:center; gap:10px; padding:20px 14px; border-color:#ffffff18; font-weight:700; }
.admin-workspace .brand-link .brand-image { float:none; width:30px; height:30px; object-fit:contain; margin:0; flex-shrink:0; }
.admin-workspace .brand-text { font-weight:700!important; font-size:16px; }
.admin-workspace .user-panel .info { white-space:normal; overflow-wrap:anywhere; font-size:12px; }
.admin-workspace .nav-sidebar .nav-link { border-radius:8px; margin-bottom:5px; padding:11px 12px; }
.admin-workspace .nav-sidebar>.nav-item>.nav-link.active { background:#2864df; box-shadow:none; }
.admin-workspace .nav-header { color:#92a7c3; font-size:10px; font-weight:700; letter-spacing:.12em; padding:20px 14px 8px; }
.admin-workspace .main-header { border-bottom:1px solid #e2e7ef; min-height:66px; }
.admin-workspace .content-header { padding:24px 24px 8px; }
.admin-workspace .content-header h1 { font-size:14px; color:#64748b; font-weight:500; }
.admin-workspace .content { padding:0 24px 28px; }
.admin-workspace .main-footer { background:#fff; color:#64748b; font-size:12px; border-color:#e2e7ef; }
.admin-workspace .card { border:1px solid #e2e7ef; border-radius:12px; box-shadow:0 2px 8px #14243a05; }
.admin-workspace .card-header { border-color:#e2e7ef; background:white; }
.admin-workspace .btn-primary { background:#245cce; border-color:#245cce; }
.admin-workspace input,.admin-workspace select { max-width:100%; }
.admin-workspace a:focus-visible,.admin-workspace button:focus-visible,.admin-workspace input:focus-visible,.admin-workspace select:focus-visible { outline:3px solid #70a7ff; outline-offset:3px; }
.aw-page { max-width:1500px; margin:0 auto; padding-bottom:24px; }
.aw-hero { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; padding:18px 0 24px; }
.aw-eyebrow { color:#245cce; font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; margin:0 0 8px; }
.aw-page h1 { color:#14243a; font-size:clamp(25px,3vw,34px); font-weight:750; line-height:1.2; margin:0 0 10px; }
.aw-page h2 { color:#14243a; font-size:18px; font-weight:700; margin:0 0 7px; }
.aw-page h3 { font-size:15px; font-weight:700; color:#243247; }
.aw-muted { color:#63738a; font-size:13px; line-height:1.6; margin:0; }
.aw-actions,.aw-tabs { display:flex; gap:10px; flex-wrap:wrap; align-items:center; }
.aw-tabs { border-bottom:1px solid #dde4ee; margin-bottom:24px; }
.aw-tabs a { padding:12px 16px; border-bottom:3px solid transparent; color:#62718a; font-size:14px; font-weight:600; }
.aw-tabs a[aria-current=page] { color:#245cce; border-color:#245cce; }
.aw-button { display:inline-flex; align-items:center; justify-content:center; padding:10px 15px; min-height:42px; border:1px solid #d6dfeb; border-radius:8px; background:white; color:#243247; font-weight:650; font-size:13px; text-align:center; }
.aw-button:hover { background:#edf3ff; color:#245cce; text-decoration:none; }
.aw-button-primary { background:#245cce; border-color:#245cce; color:white; }
.aw-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin-bottom:24px; }
.aw-metrics-three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.aw-card { background:white; border:1px solid #e0e6ef; border-radius:12px; padding:22px; min-width:0; }
.aw-metric-label { color:#63738a; font-size:12px; font-weight:600; margin-bottom:12px; }
.aw-number { font-size:30px; line-height:1.2; font-weight:750; color:#14243a; font-variant-numeric:tabular-nums; margin:0 0 8px; }
.aw-grid { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); gap:20px; margin-bottom:24px; }
.aw-section { margin-bottom:24px; }
.aw-section-head { display:flex; justify-content:space-between; align-items:start; gap:12px; margin-bottom:20px; }
.aw-table-wrap { overflow-x:auto; }
.aw-table { width:100%; border-collapse:collapse; font-size:13px; }
.aw-table th { color:#6d7b91; font-size:11px; font-weight:700; background:#f8fafc; padding:12px; text-align:left; border-bottom:1px solid #e4eaf2; white-space:nowrap; }
.aw-table td { padding:15px 12px; border-bottom:1px solid #edf0f5; vertical-align:middle; }
.aw-table td small { display:block; color:#758399; margin-top:4px; overflow-wrap:anywhere; }
.aw-table tbody tr:hover { background:#f8fbff; }
.aw-badge { display:inline-block; border-radius:6px; padding:4px 8px; background:#eef3fa; color:#48617e; font-size:11px; font-weight:650; white-space:nowrap; }
.aw-badge-completed,.aw-badge-active { background:#e7f5ef; color:#17644b; }
.aw-badge-pending,.aw-badge-awaiting_receipt { background:#fff2d9; color:#85530b; }
.aw-badge-failed { background:#ffebeb; color:#a53737; }
.aw-callout { border-left:3px solid #4b7fe7; padding:15px 18px; background:#edf3ff; border-radius:0 8px 8px 0; margin-bottom:22px; font-size:13px; color:#35537d; line-height:1.6; }
.aw-filter { display:flex; gap:14px; align-items:end; flex-wrap:wrap; margin-bottom:22px; }
.aw-filter label { display:block; font-size:12px; font-weight:650; color:#52647d; margin-bottom:6px; }
.aw-filter input,.aw-filter select { border:1px solid #d4ddea; border-radius:7px; background:white; padding:10px; font-size:13px; min-height:42px; color:#243247; }
.aw-filter .aw-search { flex:1; min-width:160px; }
.aw-filter .aw-search input { width:100%; }
.aw-milestone { margin-bottom:18px; }
.aw-milestone-top { display:flex; justify-content:space-between; gap:14px; font-size:13px; margin-bottom:8px; }
.aw-meter { height:9px; background:#edf1f7; border-radius:8px; overflow:hidden; }
.aw-meter span { display:block; height:100%; background:#4879df; border-radius:8px; }
.aw-signal { display:grid; grid-template-columns:1fr auto; gap:10px; padding:16px 0; border-bottom:1px solid #edf0f5; }
.aw-signal strong { color:#243247; font-size:14px; }
.aw-signal .aw-button { align-self:center; }
.aw-signal p { margin-top:5px; }
.aw-empty { padding:30px 10px; color:#63738a; text-align:center; font-size:14px; }
@media(max-width:1100px) { .aw-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); } .aw-grid { grid-template-columns:1fr; } }
@media(max-width:600px) { .admin-workspace .content { padding:0 10px 20px; } .admin-workspace .content-header { padding:16px 10px 4px; } .aw-hero { flex-direction:column; } .aw-card { padding:16px; } .aw-metrics { gap:10px; } .aw-number { font-size:25px; } .aw-tabs { gap:0; } .aw-tabs a { padding:12px 9px; font-size:12px; } .aw-filter>div,.aw-filter select { width:100%; } .aw-section-head { flex-wrap:wrap; } }

/* Course cards */
.course-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:20px; }
.course-card { display:flex; flex-direction:column; background:white; border:1px solid #e0e6ef; border-radius:12px; overflow:hidden; min-width:0; transition:box-shadow .2s ease,transform .2s ease; }
.course-card:hover { box-shadow:0 10px 24px #14243a14; transform:translateY(-2px); }
.course-card-cover { position:relative; display:block; aspect-ratio:16/9; background:#eef2f8; overflow:hidden; }
.course-card-cover img { width:100%; height:100%; object-fit:cover; }
.course-card-placeholder { display:flex; align-items:center; justify-content:center; width:100%; height:100%; font-size:44px; font-weight:750; color:#ffffffe6; background:linear-gradient(135deg,hsl(var(--hue) 55% 42%),hsl(calc(var(--hue) + 40) 60% 30%)); }
.course-card-status { position:absolute; top:12px; left:12px; padding:4px 9px; border-radius:6px; font-size:11px; font-weight:700; background:#ffffffee; color:#48617e; }
.course-card-status.is-published { color:#17644b; }
.course-card-status.is-published::before,.course-card-status.is-soon::before,.course-card-status.is-draft::before { content:""; display:inline-block; width:7px; height:7px; border-radius:50%; margin-right:6px; vertical-align:1px; background:currentColor; }
.course-card-status.is-soon { color:#85530b; }
.course-card-status.is-draft { color:#5b6b82; }
.course-card-body { padding:16px 18px 4px; flex:1; display:flex; flex-direction:column; }
.course-card-meta { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:10px; }
.course-card-meta span { font-size:11px; font-weight:650; color:#48617e; background:#eef3fa; border-radius:6px; padding:3px 8px; }
.course-card-title { font-size:16px!important; font-weight:700; line-height:1.35; margin:0 0 6px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.course-card-title a { color:#14243a; }
.course-card-title a:hover { color:#245cce; text-decoration:none; }
.course-card-desc { color:#63738a; font-size:13px; line-height:1.5; margin:0 0 8px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.course-card-teacher { color:#63738a; font-size:12px; margin:0 0 8px; }
.course-card-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin:auto 0 0; padding:12px 0; border-top:1px solid #edf0f5; }
.course-card-stats dt { font-size:11px; font-weight:600; color:#758399; margin:0; }
.course-card-stats dd { font-size:15px; font-weight:700; color:#14243a; margin:2px 0 0; font-variant-numeric:tabular-nums; }
.course-card-actions { display:flex; align-items:center; gap:8px; padding:12px 18px; border-top:1px solid #edf0f5; background:#fbfcfe; }
.course-card-actions .dropdown-item { font-size:13px; }
.course-card-actions form { margin:0; }

/* AI tools (Course Assistant, Quiz Creator) */
.ai-tool .card-title { font-size:15px; font-weight:700; color:#14243a; }
.ai-step { display:flex; align-items:center; gap:10px; }
.ai-step-number { display:inline-flex; align-items:center; justify-content:center; width:24px; height:24px; border-radius:50%; background:#edf3ff; color:#245cce; font-size:12px; font-weight:750; }
.ai-label { display:block; font-size:13px; font-weight:650; color:#3a4a62; margin-bottom:6px; }
.ai-segment { display:grid; grid-template-columns:repeat(3,1fr); gap:6px; padding:4px; background:#f1f4f9; border-radius:10px; margin-bottom:20px; }
.ai-segment-option { margin:0; cursor:pointer; }
.ai-segment-option input { position:absolute; opacity:0; pointer-events:none; }
.ai-segment-option span { display:flex; align-items:center; justify-content:center; gap:8px; padding:10px; border-radius:8px; font-size:13px; font-weight:650; color:#5b6b82; transition:background .15s,color .15s; }
.ai-segment-option input:checked + span { background:white; color:#245cce; box-shadow:0 1px 3px #14243a1f; }
.ai-segment-option input:focus-visible + span { outline:3px solid #70a7ff; outline-offset:1px; }
.ai-dropzone { display:flex; flex-direction:column; align-items:center; gap:4px; padding:26px 16px; margin:0; border:2px dashed #d4ddea; border-radius:10px; background:#fafbfd; text-align:center; cursor:pointer; transition:border-color .15s,background .15s; }
.ai-dropzone:hover,.ai-dropzone:focus-within { border-color:#245cce; background:#f5f8ff; }
.ai-dropzone i { font-size:26px; color:#245cce; margin-bottom:6px; }
.ai-dropzone strong { color:#243247; font-size:14px; overflow-wrap:anywhere; }
.ai-dropzone span { color:#758399; font-size:12px; }
.ai-divider { display:flex; align-items:center; gap:12px; margin:18px 0; color:#94a3b8; font-size:12px; }
.ai-divider::before,.ai-divider::after { content:""; flex:1; height:1px; background:#e4eaf2; }
.ai-option-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.ai-option-list { display:grid; gap:8px; }
.ai-option { position:relative; display:flex; align-items:flex-start; gap:12px; margin:0; padding:12px 14px; border:1px solid #dfe5ee; border-radius:10px; cursor:pointer; font-weight:400; transition:border-color .15s,background .15s; }
.ai-option:hover { border-color:#b9c8de; }
.ai-option input { position:absolute; opacity:0; pointer-events:none; }
.ai-option-icon { width:32px; height:32px; flex-shrink:0; display:flex; align-items:center; justify-content:center; border-radius:8px; background:#f1f4f9; color:#5b6b82; font-size:14px; }
.ai-option strong { display:block; font-size:13px; color:#243247; }
.ai-option small { display:block; font-size:12px; color:#758399; line-height:1.4; margin-top:2px; }
.ai-option:has(input:checked) { border-color:#245cce; background:#f5f8ff; box-shadow:inset 0 0 0 1px #245cce; }
.ai-option:has(input:checked) .ai-option-icon { background:#245cce; color:white; }
.ai-option:has(input:focus-visible) { outline:3px solid #70a7ff; outline-offset:2px; }
.ai-count { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.ai-count-input { width:90px; text-align:center; font-weight:650; }
.ai-status { display:flex; align-items:center; gap:10px; padding:12px 14px; margin-bottom:12px; border-radius:8px; background:#edf3ff; color:#35537d; font-size:13px; font-weight:600; }
.ai-submit { font-size:15px; font-weight:650; padding:10px 22px; }
.ai-howto { padding-left:18px; margin:0; font-size:13px; color:#3a4a62; line-height:1.6; }
.ai-howto li { margin-bottom:10px; }
.ai-tips { padding-left:18px; margin:0; font-size:13px; color:#63738a; line-height:1.6; }
.ai-tips li { margin-bottom:6px; }
.ai-result { max-height:640px; overflow-y:auto; font-size:14px; line-height:1.7; color:#243247; }
.ai-result h3,.ai-result h4,.ai-result h5,.ai-result h6 { color:#14243a; font-weight:700; margin:20px 0 8px; }
.ai-result h3 { font-size:20px; } .ai-result h4 { font-size:17px; } .ai-result h5,.ai-result h6 { font-size:15px; }
.ai-result ul { padding-left:20px; }
@media(max-width:600px) { .ai-segment { grid-template-columns:1fr; } .ai-option-grid { grid-template-columns:1fr; } .course-grid { grid-template-columns:1fr; } }

/* Teacher 360 Audit */
.t360-avatar { display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; border-radius:50%; object-fit:cover; background:#e8eef8; }
.t360-avatar-initials { background:linear-gradient(135deg,#245cce,#14243a); color:white; font-weight:700; letter-spacing:.02em; }
.t360-person { display:flex; align-items:center; gap:10px; min-width:200px; }
.t360-person small { display:block; color:#758399; }
.t360-pill { display:inline-flex; align-items:center; border-radius:999px; padding:3px 10px; font-size:11px; font-weight:700; white-space:nowrap; background:#eef3fa; color:#48617e; }
.t360-pill.is-good { background:#e7f5ef; color:#17644b; }
.t360-pill.is-warn { background:#fff2d9; color:#85530b; }
.t360-pill.is-bad { background:#ffebeb; color:#a53737; }
.t360-pill.is-info { background:#edf3ff; color:#245cce; }
.t360-header { display:flex; justify-content:space-between; gap:24px; margin-bottom:16px; flex-wrap:wrap; }
.t360-identity { display:flex; gap:20px; align-items:flex-start; min-width:0; flex:1; }
.t360-identity h1 { font-size:26px!important; }
.t360-identity .min-w-0 { min-width:0; }
.t360-pills { display:flex; flex-wrap:wrap; gap:6px; margin:6px 0 14px; }
.t360-facts { display:flex; flex-wrap:wrap; gap:8px 28px; margin:0; }
.t360-facts dt { font-size:11px; font-weight:600; color:#758399; margin:0; }
.t360-facts dd { font-size:13px; color:#243247; margin:2px 0 0; overflow-wrap:anywhere; }
.t360-actions { display:flex; flex-direction:column; gap:8px; min-width:200px; }
.t360-actions form { margin:0; }
.t360-profile { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin-bottom:16px; padding:16px 22px; }
.t360-profile span { display:block; font-size:11px; font-weight:600; color:#758399; margin-bottom:3px; }
.t360-profile strong { font-size:14px; color:#243247; overflow-wrap:anywhere; }
.t360-kpis { display:grid; grid-template-columns:repeat(auto-fill,minmax(210px,1fr)); gap:16px; margin-bottom:24px; }
.t360-kpis .aw-number { font-size:26px; }
.t360 .aw-tabs .nav-link { padding:12px 16px; border:0; border-bottom:3px solid transparent; border-radius:0; color:#62718a; font-size:14px; font-weight:600; background:none; }
.t360 .aw-tabs .nav-link:hover { color:#245cce; }
.t360 .aw-tabs .nav-link.active { color:#245cce; border-bottom-color:#245cce; }
.t360 .tab-content > .aw-card, .t360 .tab-content .aw-grid { margin-bottom:20px; }
.t360-bio { font-size:14px; line-height:1.7; color:#3a4a62; max-height:320px; overflow-y:auto; }
.t360-day { font-size:12px!important; font-weight:700; color:#758399!important; text-transform:uppercase; letter-spacing:.08em; margin:18px 0 8px; }
.t360-timeline { list-style:none; margin:0; padding:0; position:relative; }
.t360-timeline::before { content:""; position:absolute; left:15px; top:6px; bottom:6px; width:2px; background:#e6ebf2; }
.t360-timeline li { position:relative; display:flex; gap:14px; padding:8px 0; }
.t360-dot { position:relative; z-index:1; flex-shrink:0; width:32px; height:32px; border-radius:50%; background:white; border:2px solid #e6ebf2; display:flex; align-items:center; justify-content:center; font-size:12px; }
.t360-event { flex:1; min-width:0; padding-top:4px; }
.t360-event-head { display:flex; flex-wrap:wrap; align-items:baseline; gap:4px 10px; font-size:14px; color:#243247; }
.t360-event-target { color:#48617e; overflow-wrap:anywhere; }
.t360-event-head time { margin-left:auto; font-size:12px; color:#758399; white-space:nowrap; }
.t360-event-meta { display:flex; flex-wrap:wrap; align-items:center; gap:4px 12px; margin-top:4px; font-size:12px; color:#758399; }
.t360-event-meta > span:not(.aw-badge) { overflow-wrap:anywhere; }
.t360 .text-purple, .text-purple { color:#6f42c1!important; }
@media(max-width:900px) { .t360-profile { grid-template-columns:repeat(2,minmax(0,1fr)); } .t360-actions { flex-direction:row; flex-wrap:wrap; min-width:0; width:100%; } }
@media(max-width:600px) { .t360-identity { flex-direction:column; } .t360-profile { grid-template-columns:1fr; } .t360 .aw-tabs { overflow-x:auto; flex-wrap:nowrap; } .t360 .aw-tabs .nav-link { white-space:nowrap; padding:12px 10px; } }

/* Analytics pages (visits, events, AI & API usage) */
.aw-segmented { display:inline-flex; padding:3px; background:white; border:1px solid #d6dfeb; border-radius:9px; }
.aw-segmented a { padding:8px 14px; border-radius:7px; color:#52647d; font-size:13px; font-weight:650; text-decoration:none; }
.aw-segmented a:hover { color:#245cce; }
.aw-segmented a.is-active { background:#245cce; color:white; }
.an-grid-4 { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:20px; margin-bottom:24px; }
.an-url { max-width:240px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:12px; }
.an-props span { display:block; font-size:12px; color:#52647d; max-width:420px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.an-break { overflow-wrap:anywhere; word-break:break-word; }
.gd-grid { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr); gap:28px; }
.gd-kpis { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.gd-kpis div { padding:14px; background:#f8fafc; border:1px solid #e4eaf2; border-radius:10px; }
.gd-kpis span { display:block; font-size:11px; font-weight:650; color:#6d7b91; }
.gd-kpis strong { display:block; font-size:20px; font-weight:750; color:#14243a; font-variant-numeric:tabular-nums; margin-top:2px; }
.gd-form { padding:18px; background:#f8fafc; border:1px solid #e4eaf2; border-radius:12px; align-self:start; }
.gd-form label { font-size:13px; font-weight:650; color:#3a4a62; }
.gd-switch { position:relative; display:flex; align-items:flex-start; gap:12px; padding:14px; margin-bottom:18px; background:white; border:1px solid #dfe5ee; border-radius:10px; cursor:pointer; }
.gd-switch input { position:absolute; opacity:0; width:1px; height:1px; }
.gd-switch-track { position:relative; flex-shrink:0; width:42px; height:24px; margin-top:2px; border-radius:999px; background:#cbd5e1; transition:background .15s; }
.gd-switch-track::after { content:""; position:absolute; top:3px; left:3px; width:18px; height:18px; border-radius:50%; background:white; box-shadow:0 1px 3px #0003; transition:transform .15s; }
.gd-switch input:checked + .gd-switch-track { background:#17805a; }
.gd-switch input:checked + .gd-switch-track::after { transform:translateX(18px); }
.gd-switch input:focus-visible + .gd-switch-track { outline:3px solid #70a7ff; outline-offset:2px; }
.gd-switch strong { display:block; font-size:14px; color:#14243a; }
.gd-switch small { display:block; font-size:12px; color:#6d7b91; font-weight:400; }
.gd-prices { margin-top:6px; }
.gd-prices summary { cursor:pointer; font-size:13px; font-weight:650; color:#245cce; }
.gd-prices p { margin:8px 0; }
.gd-price-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.gd-price-grid label { font-size:12px; }
@media(max-width:900px) { .gd-grid { grid-template-columns:1fr; } .gd-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); } }

/* Phone users breakdown (Website Visits) */
.ph-grid { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(220px,1fr); gap:24px; align-items:center; }
.ph-tiles { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.ph-tile { padding:18px; border-radius:12px; border:1px solid #e4eaf2; background:#f8fafc; }
.ph-tile.is-android { border-top:4px solid #17805a; }
.ph-tile.is-iphone { border-top:4px solid #14243a; }
.ph-tile-head { display:flex; align-items:center; gap:8px; font-size:14px; font-weight:700; color:#243247; }
.ph-tile-head i { font-size:18px; }
.ph-tile.is-android .ph-tile-head i { color:#17805a; }
.ph-big { font-size:34px; font-weight:750; color:#14243a; line-height:1.1; margin:10px 0 2px; font-variant-numeric:tabular-nums; }
.ph-sub { font-size:12px; color:#63738a; margin:0 0 12px; }
.ph-tile dl { display:flex; gap:20px; margin:0; padding-top:10px; border-top:1px solid #e4eaf2; }
.ph-tile dt { font-size:11px; font-weight:600; color:#758399; margin:0; }
.ph-tile dd { font-size:15px; font-weight:700; color:#243247; margin:0; font-variant-numeric:tabular-nums; }
.ph-note { grid-column:1 / -1; margin:0; }
@media(max-width:900px) { .ph-grid { grid-template-columns:1fr; } }
@media(max-width:480px) { .ph-tiles { grid-template-columns:1fr; } }
