Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Template:Home/ConservationPanel.css: Difference between revisions

Template page
No edit summary
Undo revision 218 by Eloise Zomia (talk)
Tag: Undo
 
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
/* Panel */
/* ===== Container ===== */
.lw-cons-panel{background:#fff;border:1px solid #e5e7eb;border-left:4px solid #2d5016;
.lw-cons-panel{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:20px;box-shadow:0 1px 2px rgba(16, 24, 40, 0.04);}
  border-radius:14px;padding:20px;box-shadow:0 8px 18px rgba(0,0,0,.05);margin:2em 0;}
.lw-cons-title{font-weight:700;font-size:16px;letter-spacing:.02em;color:#1f2937;margin:4px 0 14px;}
.lw-cons-title{font-weight:800;color:#2d5016;text-transform:uppercase;letter-spacing:.05em;
  font-size:.9rem;margin-bottom:14px;}


/* KPIs */
/* ===== KPIs ===== */
.lw-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:14px;}
.lw-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:12px;}
.lw-kpi{background:linear-gradient(180deg,#fbfdff 0%,#f3f6fa 100%);border:1px solid #e5e7eb;
.lw-kpi{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:16px;text-align:center;}
  border-radius:12px;padding:16px;text-align:center;box-shadow:0 2px 8px rgba(0,0,0,.03);}
.lw-kpi__num{font-weight:800;line-height:1;font-size:30px;color:#111827;margin-bottom:6px;}
.lw-kpi__num{font-size:2rem;font-weight:800;color:#111827;line-height:1.1;letter-spacing:.01em;}
.lw-kpi__label{font-size:13px;color:#6b7280;}
.lw-kpi__label{margin-top:6px;font-size:.85rem;color:#6b7280;}
.lw-kpi__label a{color:inherit;text-decoration:none;}


/* --- Status bar core (unchanged) --- */
/* responsive type fallback (no clamp) */
.lw-statusbar{
@media (max-width:420px){ .lw-kpi__num{font-size:22px;} }
   display:flex; align-items:stretch;
@media (min-width:421px) and (max-width:1024px){ .lw-kpi__num{font-size:28px;} }
   height:14px; padding:2px; border-radius:999px;
@media (min-width:1025px){ .lw-kpi__num{font-size:34px;} }
   background:#f3f4f6; border:1px solid #e5e7eb; overflow:hidden;
 
   white-space:nowrap; font-size:0; line-height:0; direction:ltr;
/* ===== Status bar (single row) ===== */
.lw-statusbar{display:flex;height:10px;border-radius:999px;overflow:hidden;background:#eef2f7;border:0;margin:8px 0 6px;}
.lw-seg{height:100%;}
.lw-s-stable{background:#2e7d32;}
.lw-s-vulnerable{background:#f59e0b;}
.lw-s-endangered{background:#ef6c00;}
.lw-s-critical{background:#dc2626;}
.lw-s-extinct{background:#111827;}
.lw-s-unknown{background:#9ca3af;}
 
/* LEGEND */
.lw-legend {
   display: flex; flex-wrap: wrap; gap: .5rem .75rem;
  margin: .75rem 0 1rem;
  padding: 0; list-style: none;
   font-size: .875rem; line-height: 1.25rem;
}
.lw-legend__item {
  display: inline-flex; align-items: center; gap: .4rem;
  padding: .25rem .6rem;
  border-radius: 999px;
   background: #f8fafc; /* subtle chip bg */
  color: #334155;
}
.lw-legend .dot {
  width: .6em; height: .6em; border-radius: 50%;
   display: inline-block; box-shadow: inset 0 0 0 1px rgba(0,0,0,.06);
}
}
.lw-statusbar .lw-seg{
.lw-legend .lbl { font-weight: 500; }
   display:block; height:100%; box-sizing:border-box;
.lw-legend .count {
  flex:0 0 auto;           /* don’t grow/shrink */
   margin-left: .15rem; opacity: .8;
   min-width:4px;           /* smallest slice always visible */
   font-feature-settings: "tnum" 1; /* tabular nums */
}
}
.lw-statusbar .lw-seg + .lw-seg{ border-left:2px solid #fff; }


/* --- USE FLEX-BASIS FOR PERCENT WIDTHS --- */
/* Status colors – tune to your palette if needed */
.lw-w-178  { flex-basis:1.78%; }
.dot--stable { background:#2e7d32; }
.lw-w-468  { flex-basis:4.68%; }
.dot--vuln  { background:#e69500; }
.lw-w-958  { flex-basis:9.58%; }
.dot--end    { background:#ef6c00; }
.lw-w-1982 { flex-basis:19.82%; }
.dot--crit  { background:#d32f2f; }
.lw-w-2829 { flex-basis:28.29%; }
.dot--ext    { background:#6b7280; }
/* nudge last by -0.01% to avoid rounding overflow */
.dot--unk    { background:#94a3b8; }
.lw-w-3585 { flex-basis:35.85%; }


/* colors (unchanged) */
/* ===== Conservation panel: Actions ===== */
.lw-s-stable{background:#2e7d32}
.lw-cons-panel .lw-actions {
.lw-s-vulnerable{background:#f59e0b}
  display: flex;
.lw-s-endangered{background:#f97316}
  flex-wrap: wrap;
.lw-s-critical{background:#dc2626}
  gap: .5rem .5rem;
.lw-s-extinct{background:#111827}
  margin: .6rem 0 0;
.lw-s-unknown{background:#9ca3af}
}


/* Pill buttons aligned with site palette */
.lw-cons-panel .lw-actions .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .55rem .95rem;
  border-radius: 999px;
  font-weight: 600;
  font-size: .875rem;
  line-height: 1.25rem;
  text-decoration: none;
  border: 1px solid transparent;
  box-shadow: 0 1px 0 rgba(0,0,0,.04);
  transition: background-color .15s ease, border-color .15s ease, transform .06s ease;
}


/* flat legend right under the bar */
/* Focus ring (TemplateStyles-safe) */
.lw-statusbar{ margin-bottom:4px; } /* small breathing room */
.lw-cons-panel .lw-actions .btn:focus {
.lw-legend{ margin-top:6px; }
  outline: 2px solid #a7d1b0; /* soft green ring */
  outline-offset: 2px;
}


.lw-legend--flat{
/* Primary: deep green from your theme */
  display:flex;
.lw-cons-panel .lw-actions .btn--primary {
  flex-wrap:wrap;
   background: #2d5016;
  align-items:center;
   color: #fff;
  gap:10px 16px;            /* horizontal | vertical */
  padding:0;
   background:transparent;
  border:0;
  box-shadow:none;
   color:#6b7280;            /* neutral text */
  font-size:.82rem;
  line-height:1.25;
}
}
.lw-cons-panel .lw-actions .btn--primary:hover { background: #3d6b1f; }
.lw-cons-panel .lw-actions .btn--primary:active { transform: translateY(1px); }


.lw-legend__item{
/* Ghost: white with hairline border */
   display:inline-flex;
.lw-cons-panel .lw-actions .btn--ghost {
   align-items:center;
   background: #ffffff;
   gap:6px;                 /* dot → label */
   border-color: #e5e7eb;
   white-space:nowrap;       /* keep each pair together */
   color: #1f2937;
}
.lw-cons-panel .lw-actions .btn--ghost:hover {
   border-color: #cfd6de;
  background: #f8fafc;
}
}


/* tiny, crisp dots */
/* Muted: subtle gray */
.lw-dot{
.lw-cons-panel .lw-actions .btn--muted {
   display:inline-block;
   background: #f3f4f6;
   width:9px; height:9px;
   color: #374151;
   border-radius:50%;
   border-color: #e5e7eb;
}
}
.lw-cons-panel .lw-actions .btn--muted:hover { background: #eceff2; }


/* reuse your palette for dots */
/* Remove MediaWiki redlink styling *inside* this block only */
.lw-dot.lw-s-stable{      background:#2e7d32; }
.lw-cons-panel .lw-actions a.new { color: inherit; border-color: #e5e7eb; }
.lw-dot.lw-s-vulnerable{  background:#f59e0b; }
.lw-dot.lw-s-endangered{  background:#f97316; }
.lw-dot.lw-s-critical{    background:#dc2626; }
.lw-dot.lw-s-extinct{     background:#111827; }
.lw-dot.lw-s-unknown{    background:#9ca3af; }


/* optional: stack to single column on very narrow screens */
/* Mobile touch targets */
@media (max-width: 420px){
@media (max-width: 768px) {
   .lw-legend--flat{ gap:8px 12px; }
   .lw-cons-panel .lw-actions .btn { padding: .6rem .8rem; }
}
}




/* Buttons */
/* ===== Responsive ===== */
.lw-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px;}
.lw-btn{display:inline-flex;align-items:center;padding:9px 14px;border-radius:10px;
  border:1px solid #e5e7eb;background:#fff;color:#2d5016;font-weight:700;text-decoration:none;
  transition:transform .15s,box-shadow .15s,background .15s,border-color .15s;}
.lw-btn:hover{transform:translateY(-1px);box-shadow:0 6px 14px rgba(0,0,0,.06);
  background:#f8fafb;border-color:#d1d5db;}
.lw-btn:focus{outline:none;box-shadow:0 0 0 3px rgba(45,80,22,.25);} /* no :focus-visible */
 
/* Primary */
.lw-btn--primary{background:#2d5016;color:#fff;border-color:#2d5016;}
.lw-btn--primary:hover{background:#3d6b1f;border-color:#3d6b1f;}
 
/* kill redlink/visited styling inside buttons */
.lw-btn > a,
.lw-btn > a:visited,
.lw-btn > a:active,
.lw-btn > a.new{
  color:inherit !important;text-decoration:none !important;background:transparent !important;
  border:0 !important;padding:0 !important;
}
 
/* Responsive */
@media (max-width:720px){
@media (max-width:720px){
   .lw-kpis{grid-template-columns:1fr;}
   .lw-kpis{grid-template-columns:1fr;}
   .lw-kpi__num{font-size:1.75rem;}
   .lw-actions{gap:8px;}
}
}

Latest revision as of 08:30, 24 August 2025

/* ===== Container ===== */
.lw-cons-panel{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:20px;box-shadow:0 1px 2px rgba(16, 24, 40, 0.04);}
.lw-cons-title{font-weight:700;font-size:16px;letter-spacing:.02em;color:#1f2937;margin:4px 0 14px;}

/* ===== KPIs ===== */
.lw-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:12px;}
.lw-kpi{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:16px;text-align:center;}
.lw-kpi__num{font-weight:800;line-height:1;font-size:30px;color:#111827;margin-bottom:6px;}
.lw-kpi__label{font-size:13px;color:#6b7280;}
.lw-kpi__label a{color:inherit;text-decoration:none;}

/* responsive type fallback (no clamp) */
@media (max-width:420px){ .lw-kpi__num{font-size:22px;} }
@media (min-width:421px) and (max-width:1024px){ .lw-kpi__num{font-size:28px;} }
@media (min-width:1025px){ .lw-kpi__num{font-size:34px;} }

/* ===== Status bar (single row) ===== */
.lw-statusbar{display:flex;height:10px;border-radius:999px;overflow:hidden;background:#eef2f7;border:0;margin:8px 0 6px;}
.lw-seg{height:100%;}
.lw-s-stable{background:#2e7d32;}
.lw-s-vulnerable{background:#f59e0b;}
.lw-s-endangered{background:#ef6c00;}
.lw-s-critical{background:#dc2626;}
.lw-s-extinct{background:#111827;}
.lw-s-unknown{background:#9ca3af;}

/* LEGEND */
.lw-legend {
  display: flex; flex-wrap: wrap; gap: .5rem .75rem;
  margin: .75rem 0 1rem;
  padding: 0; list-style: none;
  font-size: .875rem; line-height: 1.25rem;
}
.lw-legend__item {
  display: inline-flex; align-items: center; gap: .4rem;
  padding: .25rem .6rem;
  border-radius: 999px;
  background: #f8fafc; /* subtle chip bg */
  color: #334155;
}
.lw-legend .dot {
  width: .6em; height: .6em; border-radius: 50%;
  display: inline-block; box-shadow: inset 0 0 0 1px rgba(0,0,0,.06);
}
.lw-legend .lbl { font-weight: 500; }
.lw-legend .count {
  margin-left: .15rem; opacity: .8;
  font-feature-settings: "tnum" 1; /* tabular nums */
}

/* Status colors – tune to your palette if needed */
.dot--stable { background:#2e7d32; }
.dot--vuln   { background:#e69500; }
.dot--end    { background:#ef6c00; }
.dot--crit   { background:#d32f2f; }
.dot--ext    { background:#6b7280; }
.dot--unk    { background:#94a3b8; }

/* ===== Conservation panel: Actions ===== */
.lw-cons-panel .lw-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem .5rem;
  margin: .6rem 0 0;
}

/* Pill buttons aligned with site palette */
.lw-cons-panel .lw-actions .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: .55rem .95rem;
  border-radius: 999px;
  font-weight: 600;
  font-size: .875rem;
  line-height: 1.25rem;
  text-decoration: none;
  border: 1px solid transparent;
  box-shadow: 0 1px 0 rgba(0,0,0,.04);
  transition: background-color .15s ease, border-color .15s ease, transform .06s ease;
}

/* Focus ring (TemplateStyles-safe) */
.lw-cons-panel .lw-actions .btn:focus {
  outline: 2px solid #a7d1b0; /* soft green ring */
  outline-offset: 2px;
}

/* Primary: deep green from your theme */
.lw-cons-panel .lw-actions .btn--primary {
  background: #2d5016;
  color: #fff;
}
.lw-cons-panel .lw-actions .btn--primary:hover { background: #3d6b1f; }
.lw-cons-panel .lw-actions .btn--primary:active { transform: translateY(1px); }

/* Ghost: white with hairline border */
.lw-cons-panel .lw-actions .btn--ghost {
  background: #ffffff;
  border-color: #e5e7eb;
  color: #1f2937;
}
.lw-cons-panel .lw-actions .btn--ghost:hover {
  border-color: #cfd6de;
  background: #f8fafc;
}

/* Muted: subtle gray */
.lw-cons-panel .lw-actions .btn--muted {
  background: #f3f4f6;
  color: #374151;
  border-color: #e5e7eb;
}
.lw-cons-panel .lw-actions .btn--muted:hover { background: #eceff2; }

/* Remove MediaWiki redlink styling *inside* this block only */
.lw-cons-panel .lw-actions a.new { color: inherit; border-color: #e5e7eb; }

/* Mobile touch targets */
@media (max-width: 768px) {
  .lw-cons-panel .lw-actions .btn { padding: .6rem .8rem; }
}


/* ===== Responsive ===== */
@media (max-width:720px){
  .lw-kpis{grid-template-columns:1fr;}
  .lw-actions{gap:8px;}
}