.habit-panel--wide{grid-template-columns:1fr}.plan-grid{grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:14px;display:grid}.plan-grid--map{grid-template-columns:1fr}.plan-card{border:1px solid var(--line);background:var(--surface);border-radius:8px;align-content:start;gap:12px;min-width:0;padding:18px 20px;display:grid}.plan-card h4{font:500 24px/1.15 var(--serif);margin:0}.plan-card-head{align-items:flex-start;gap:14px;display:flex}.plan-card-head>div{flex:1;min-width:0}.plan-card-head p{color:var(--muted);margin:6px 0 0;font-size:12px;line-height:1.55}.plan-icon{background:var(--accent-soft);width:40px;height:40px;color:var(--accent);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.plan-muted{color:var(--muted);margin:0;font-size:11px;line-height:1.6}.plan-chip-row{flex-wrap:wrap;gap:8px;display:flex}.plan-chip-row button{border:1px solid var(--line);background:var(--paper);text-align:start;border-radius:8px;gap:2px;min-height:48px;padding:8px 14px;font-size:12px;font-weight:600;display:grid}.plan-chip-row button small{color:var(--muted);font-size:10px;font-weight:400}.plan-chip-row button:hover,.plan-inline button:hover,.plan-open:hover{background:var(--accent-soft)}.plan-inline{flex-wrap:wrap;align-items:end;gap:8px;display:flex}.plan-inline label{min-width:110px;color:var(--muted);gap:5px;font-size:11px;display:grid}.plan-inline .plan-grow{flex:1;min-width:180px}.plan-inline input,.plan-inline select{border:1px solid var(--line);background:var(--background);min-height:38px;color:var(--ink);font:inherit;border-radius:6px;padding:7px 10px;font-size:12px}.plan-inline button,.plan-open{border:1px solid var(--line);border-radius:6px;align-items:center;gap:6px;min-height:38px;padding:8px 14px;font-size:11px;display:inline-flex}.plan-open{background:var(--accent);color:var(--paper);border-color:#0000;flex-shrink:0}.plan-open:hover{background:color-mix(in srgb, var(--accent) 85%, var(--ink))}.plan-check{align-items:center;gap:8px;font-size:12px;display:flex}.plan-check input{width:16px;height:16px;accent-color:var(--accent)}.plan-quiet{color:var(--muted);background:0 0;border:0;align-items:center;gap:4px;padding:6px 4px;font-size:11px;display:inline-flex}.plan-quiet:hover{color:var(--accent)}.plan-link{color:var(--accent);text-align:start;background:0 0;border:0;padding:0;font-size:12px}.plan-pace{font-weight:600}.plan-pace--ahead{color:#3b7a55}.plan-pace--on-track{color:var(--accent)}.plan-pace--behind{color:#b0503a}[data-theme=dark] .plan-pace--ahead{color:#8fcaa4}[data-theme=dark] .plan-pace--behind{color:#f0a58f}.plan-progress{appearance:none;background:var(--line);border:0;border-radius:999px;width:100%;height:6px;display:block;overflow:hidden}.plan-progress::-webkit-progress-bar{background:var(--line)}.plan-progress::-webkit-progress-value{background:var(--accent);border-radius:999px}.plan-progress::-moz-progress-bar{background:var(--accent);border-radius:999px}.plan-progress--total{height:3px}.plan-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;display:grid}.plan-stats div{background:var(--background);border-radius:8px;padding:10px 12px}.plan-stats dt{color:var(--muted);font-size:10px}.plan-stats dd{font:500 26px/1.1 var(--serif);margin:4px 0 0}.plan-stats dd span{color:var(--muted);margin-inline-start:5px;font:400 10px/1.3 Manrope,sans-serif}.plan-footer{justify-content:space-between;align-items:center;gap:10px;display:flex}.plan-segment{border:1px solid var(--line);border-radius:999px;width:fit-content;padding:2px;display:inline-flex}.plan-segment button{min-height:32px;color:var(--muted);border-radius:999px;padding:5px 13px;font-size:11px}.plan-segment button[aria-pressed=true]{background:var(--accent-soft);color:var(--ink)}.khatm-complete{background:linear-gradient(120deg, var(--accent-soft), transparent);color:var(--accent);border-radius:8px;align-items:center;gap:14px;padding:14px;display:flex}.khatm-complete div{color:var(--ink);flex:1}.khatm-complete p{color:var(--muted);margin:4px 0 0;font-size:12px}.khatm-complete button,.hifz-grade{border:1px solid var(--line);background:var(--paper);border-radius:6px;min-height:34px;padding:6px 12px;font-size:11px}.hifz-due,.hifz-all ul{margin:0;padding:0;list-style:none}.hifz-due li{border-top:1px solid var(--line);gap:8px;padding:10px 0;display:grid}.hifz-due li>div:first-child{justify-content:space-between;align-items:center;gap:10px;font-size:13px;display:flex}.hifz-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.hifz-grade--strong{border-color:color-mix(in srgb, #3b7a55 45%, var(--line))}.hifz-grade--forgot{border-color:color-mix(in srgb, #b0503a 45%, var(--line))}.hifz-grade:hover{background:var(--accent-soft)}.hifz-boxes{gap:3px;display:inline-flex}.hifz-boxes i{background:var(--line);border-radius:2px;width:7px;height:7px}.hifz-boxes i.is-filled{background:var(--accent)}.hifz-all summary{cursor:pointer;color:var(--accent);font-size:12px}.hifz-all li{border-top:1px solid var(--line);align-items:center;gap:10px;padding:7px 0;display:flex}.hifz-all li small{color:var(--muted);flex:1;font-size:10px}.heatmap-scroll{direction:ltr;padding-bottom:4px;overflow-x:auto}.heatmap{gap:3px;width:max-content;display:flex}.heatmap-days{color:var(--muted);grid-template-rows:repeat(7,11px);gap:3px;margin-inline-end:4px;font-size:8px;line-height:11px;display:grid}.heatmap-week{grid-template-rows:repeat(7,11px);gap:3px;display:grid}.heatmap-cell{background:color-mix(in srgb, var(--line) 70%, transparent);border-radius:3px;width:11px;height:11px;display:inline-block}.heatmap-cell.level-1{background:color-mix(in srgb, var(--accent) 25%, var(--surface))}.heatmap-cell.level-2{background:color-mix(in srgb, var(--accent) 48%, var(--surface))}.heatmap-cell.level-3{background:color-mix(in srgb, var(--accent) 72%, var(--surface))}.heatmap-cell.level-4{background:var(--accent)}.heatmap-cell.level-future{background:0 0}.map-legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:10px;display:flex}.map-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.mushaf-map{column-width:300px;column-gap:28px}.mushaf-map-row{break-inside:avoid;align-items:center;gap:8px;margin-bottom:4px;display:flex}.mushaf-map-label{width:18px;color:var(--muted);font:500 12px/1 var(--serif);text-align:end;flex-shrink:0}.mushaf-map-row>div{flex:1;grid-template-columns:repeat(23,minmax(0,11px));gap:2px;display:grid}.mushaf-map-cell{aspect-ratio:1;background:color-mix(in srgb, var(--line) 80%, transparent);cursor:pointer;border:0;border-radius:2px;min-width:0;padding:0;display:inline-block}.map-legend .mushaf-map-cell{cursor:default;width:11px;height:11px}.mushaf-map-cell.is-read{background:color-mix(in srgb, var(--accent) 60%, var(--surface))}.mushaf-map-cell.is-memorized{background:#3b7a55}.mushaf-map-cell.is-read.is-memorized{box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--accent) 70%, transparent);background:#3b7a55}.mushaf-map-cell:hover{outline:2px solid var(--accent);outline-offset:1px}[data-theme=dark] .mushaf-map-cell.is-memorized{background:#6fb38b}.season-strip{flex-wrap:wrap;align-items:center;gap:8px;margin:-8px 0 18px;display:flex}.season-date{background:var(--accent-soft);min-height:34px;color:var(--ink);border-radius:999px;align-items:center;gap:7px;padding:6px 12px;font-size:12px;display:inline-flex}.season-date svg{color:var(--accent)}.season-date small{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:9px}.season-chip{border:1px solid var(--line);background:var(--surface);min-height:34px;color:var(--ink);border-radius:999px;align-items:center;gap:7px;padding:6px 12px;font-size:11px;display:inline-flex}.season-chip svg{color:var(--accent)}.season-chip:hover{border-color:var(--accent)}@media (max-width:900px){.plan-grid{grid-template-columns:1fr}}@media (max-width:600px){.plan-card{padding:15px}.plan-card-head{flex-wrap:wrap}.plan-open{justify-content:center;width:100%}.plan-stats dd{font-size:21px}.plan-inline label{min-width:calc(50% - 8px)}.plan-inline .plan-grow{min-width:100%}.mushaf-map-row>div{grid-template-columns:repeat(23,minmax(0,1fr));gap:1.5px}}.ramadan-card.is-quiet .plan-card-head{align-items:center}.ramadan-nights{grid-template-columns:repeat(10,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.ramadan-nights li{gap:3px;display:grid}.ramadan-nights li>button:first-child{aspect-ratio:1;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:8px;place-items:center;font-size:12px;font-weight:600;display:grid;position:relative}.ramadan-nights li>button:first-child svg{color:#d4a017;position:absolute;top:3px;right:3px}.ramadan-nights li.is-last-ten>button:first-child{background:color-mix(in srgb, #1e3a5f 10%, var(--paper))}.ramadan-nights li.is-tonight>button:first-child{border:2px solid var(--accent)}.ramadan-nights li.is-prayed>button:first-child{color:#f5f1e8;background:#1e3a5f;border-color:#1e3a5f}.ramadan-nights li.is-read .ramadan-juz{color:#1f7a4d;font-weight:700}.ramadan-juz{color:var(--muted);text-align:center;padding:0;font-size:9px}.ramadan-dot{border-radius:3px;width:11px;height:11px;display:inline-block}.ramadan-dot.is-prayed{background:#1e3a5f}.ramadan-dot.is-read{background:#1f7a4d}.khatm-complete button{align-items:center;gap:5px;display:inline-flex}@media (max-width:600px){.ramadan-nights{grid-template-columns:repeat(6,minmax(0,1fr))}}
