Template:Home/ConservationPanel.css
Template page
More actions
/* Conservation Panel - Mobile-Optimized TemplateStyles */
/* Panel shell */
.mw-parser-output .lw-cons-panel {
background:#fff; border:1px solid #e6ebea; border-radius:14px;
padding:18px 18px 16px; margin:24px 0; box-shadow:0 1px 2px rgba(0,0,0,.03);
color:#26421a;
}
.mw-parser-output .lw-cons-title{
font-family:Georgia,"Times New Roman",serif; font-size:1.6rem; line-height:1.2; margin:4px 2px 14px;
}
/* KPIs - responsive 3-column to 1-column */
.mw-parser-output .lw-kpis{
display:flex; gap:12px; flex-wrap:wrap; margin:4px 0 10px;
}
.mw-parser-output .lw-kpi{
flex:1 1 180px; background:#f8fbf7; border:1px solid #e6ebea;
border-radius:10px; padding:12px 14px; min-width:0;
}
.mw-parser-output .lw-kpi__num{
font-size:1.6rem; font-weight:700; line-height:1;
}
.mw-parser-output .lw-kpi__label{
font-size:.9rem; color:#44613a; margin-top:6px;
word-wrap:break-word; hyphens:auto;
}
/* Status bar - maintains proportions, readable labels */
.mw-parser-output .lw-statusbar{
display:flex; height:28px; border-radius:999px; overflow:hidden;
border:1px solid #e6ebea; background:#f4f7f4; margin:8px 0;
}
.mw-parser-output .lw-statusbar .seg{
display:flex; align-items:center; justify-content:center;
font-size:.85rem; font-weight:600; color:#17320f;
border-right:1px solid rgba(0,0,0,.06); min-width:24px;
}
.mw-parser-output .lw-statusbar .seg:last-child{border-right:none}
.mw-parser-output .seg--stable{background:#e9f7ee}
.mw-parser-output .seg--vulnerable{background:#fff6df}
.mw-parser-output .seg--endangered{background:#ffeade}
.mw-parser-output .seg--critical{background:#ffe3e3}
/* Legend - responsive wrapping with better touch targets */
.mw-parser-output .lw-legend{
display:flex; flex-wrap:wrap; gap:14px 18px; list-style:none;
padding:10px 4px 4px; margin:0;
}
.mw-parser-output .lw-legend li{
display:flex; align-items:center; gap:8px; font-size:.92rem;
color:#35522b; min-height:28px; /* Better touch target */
}
.mw-parser-output .dot{
width:10px; height:10px; border-radius:50%; display:inline-block;
border:1px solid rgba(0,0,0,.1); flex-shrink:0;
}
.mw-parser-output .dot--stable{background:#2ecc71}
.mw-parser-output .dot--vulnerable{background:#f1c40f}
.mw-parser-output .dot--endangered{background:#f39c12}
.mw-parser-output .dot--critical{background:#e74c3c}
/* Mobile breakpoints */
@media (max-width: 480px) {
.mw-parser-output .lw-cons-panel {
padding:16px 14px; margin:16px 0; border-radius:12px;
}
.mw-parser-output .lw-cons-title{
font-size:1.4rem; margin:2px 0 12px;
}
/* Stack KPIs on very small screens */
.mw-parser-output .lw-kpis{
gap:8px; margin:2px 0 12px;
}
.mw-parser-output .lw-kpi{
flex:1 1 100%; padding:10px 12px;
}
.mw-parser-output .lw-kpi__num{font-size:1.4rem}
.mw-parser-output .lw-kpi__label{font-size:.85rem; margin-top:4px}
/* Adjust status bar for small screens */
.mw-parser-output .lw-statusbar{
height:24px; margin:6px 0;
}
.mw-parser-output .lw-statusbar .seg{
font-size:.8rem; min-width:20px;
}
/* Legend adjustments */
.mw-parser-output .lw-legend{
gap:10px 14px; padding:8px 2px 2px;
}
.mw-parser-output .lw-legend li{
font-size:.88rem; gap:6px;
}
}
@media (max-width: 360px) {
.mw-parser-output .lw-cons-panel {
padding:14px 12px; margin:12px 0;
}
/* Force single column for KPIs */
.mw-parser-output .lw-kpi{
flex-basis:100%; margin-bottom:0;
}
/* Hide numbers in status bar if too cramped, keep colors visible */
.mw-parser-output .lw-statusbar .seg{
font-size:0; /* Hide text but keep color bars */
}
/* Compact legend */
.mw-parser-output .lw-legend{
gap:8px 12px;
}
.mw-parser-output .lw-legend li{
font-size:.82rem;
}
}