/*
Theme Name: Tax Portal
Theme URI: https://example.com
Author: Your Name
Description: A starter WordPress theme for a tax/finance news & compliance portal (articles, news, judiciary, notifications, downloads), organized by subject category and content type. Inspired by the structure of sites like TaxGuru — original code, not a copy of any theme.
Version: 1.0
Requires PHP: 7.4
Text Domain: taxportal
*/

/* ---------- Basic layout ---------- */
:root{
  --tp-primary:#0d6efd;
  --tp-dark:#13233f;
  --tp-bg:#f5f7fa;
  --tp-border:#e3e6ea;
  --tp-text:#222;
}

*{box-sizing:border-box;}
body{
  margin:0;
  font-family:"Segoe UI",Arial,sans-serif;
  background:var(--tp-bg);
  color:var(--tp-text);
  line-height:1.55;
}
a{color:var(--tp-primary);text-decoration:none;}
a:hover{text-decoration:underline;}

.tp-container{max-width:1200px;margin:0 auto;padding:0 16px;}

/* Header / nav */
.tp-header{background:#fff;border-bottom:1px solid var(--tp-border);}
.tp-topbar{background:var(--tp-dark);color:#fff;font-size:13px;padding:6px 0;}
.tp-logo img{max-height:48px;}
.tp-nav{display:flex;gap:18px;flex-wrap:wrap;padding:10px 0;}
.tp-nav a{color:var(--tp-dark);font-weight:600;font-size:14px;}

/* Homepage grid */
.tp-home-grid{display:grid;grid-template-columns:2fr 1fr;gap:24px;margin:24px 0;}
@media (max-width:900px){.tp-home-grid{grid-template-columns:1fr;}}

.tp-section-title{
  font-size:20px;border-left:4px solid var(--tp-primary);
  padding-left:10px;margin:28px 0 14px;
}
.tp-post-card{background:#fff;border:1px solid var(--tp-border);border-radius:6px;padding:16px;margin-bottom:14px;}
.tp-post-card h3{margin:0 0 6px;font-size:17px;}
.tp-post-meta{font-size:12px;color:#777;display:flex;gap:12px;flex-wrap:wrap;}
.tp-badge{
  display:inline-block;background:#eef4ff;color:var(--tp-primary);
  font-size:11px;padding:2px 8px;border-radius:10px;font-weight:600;
}

/* Sidebar widgets */
.tp-widget{background:#fff;border:1px solid var(--tp-border);border-radius:6px;padding:14px;margin-bottom:18px;}
.tp-widget h4{margin-top:0;font-size:15px;border-bottom:1px solid var(--tp-border);padding-bottom:8px;}
.tp-widget ol,.tp-widget ul{padding-left:18px;margin:0;}
.tp-widget li{margin-bottom:8px;font-size:13.5px;}

/* Single post */
.tp-single-meta{display:flex;gap:16px;font-size:13px;color:#666;margin:10px 0 20px;flex-wrap:wrap;align-items:center;}
.tp-print-btn{
  border:1px solid var(--tp-border);background:#fff;padding:4px 10px;
  border-radius:4px;cursor:pointer;font-size:12px;
}
.tp-content{background:#fff;padding:24px;border-radius:6px;border:1px solid var(--tp-border);}

/* Calculator CTA banner */
.tp-calc-banner{
  display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
  background:linear-gradient(135deg,var(--tp-dark),#1d3a63);
  color:#fff;border-radius:8px;padding:20px 24px;margin:20px auto;max-width:1200px;
}
.tp-calc-banner p{margin:4px 0 0;font-size:13.5px;color:#cfd8e3;}
.tp-calc-banner-btn{
  background:#fff;color:var(--tp-dark);font-weight:700;padding:10px 18px;
  border-radius:5px;white-space:nowrap;
}
.tp-calc-banner-btn:hover{text-decoration:none;opacity:.9;}

/* Recent amendments grid */
.tp-amend-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:10px;}
@media (max-width:700px){.tp-amend-grid{grid-template-columns:1fr;}}
.tp-amend-card{
  display:block;background:#fff;border:1px solid var(--tp-border);border-radius:6px;
  overflow:hidden;color:inherit;
}
.tp-amend-card:hover{text-decoration:none;box-shadow:0 2px 8px rgba(0,0,0,.08);}
.tp-amend-card img{width:100%;height:140px;object-fit:cover;display:block;}
.tp-amend-card-body{padding:12px;}
.tp-amend-card-body h4{margin:6px 0 4px;font-size:15px;}

/* Filter bar */
.tp-filterbar{display:flex;gap:10px;flex-wrap:wrap;background:#fff;padding:14px;border:1px solid var(--tp-border);border-radius:6px;margin-bottom:20px;}
.tp-filterbar select,.tp-filterbar input[type=submit]{padding:6px 10px;border:1px solid var(--tp-border);border-radius:4px;}
