/* Shared BeGreenly interface tokens. Existing routes, forms and data stay intact. */
:root{--bg-ink:#103d2e;--bg-muted:#60796d;--bg-green:#047857;--bg-mint:#d8f9e7;--bg-line:#dcebe2;--bg-canvas:#f3f8f4;--bg-radius:22px;--bs-primary:#047857;--bs-primary-rgb:4,120,87}
body{color:var(--bg-ink);background:radial-gradient(ellipse at 90% 0%,#dff8e8 0,transparent 38%),var(--bg-canvas)!important;font-family:Inter,system-ui,-apple-system,'Segoe UI',sans-serif!important}
.app-sidebar,.page-body-wrapper .main-nav{background:#073b2b!important;color:#edfdf5;border:0!important}
.app-sidebar .sidebar-logo{border-color:#ffffff1a;padding:18px 24px 28px}
.sidebar-logo img,.page-header .logo-wrapper img{background:#fff;border-radius:12px;padding:8px;max-width:100%!important;width:190px;height:auto}
.sidebar-nav a,.page-body-wrapper .nav-menu .nav-link{color:#c9e6d8!important;border-radius:12px;margin:4px 12px;padding:13px 16px!important;border-left:0!important}
.sidebar-nav a:hover,.sidebar-nav a.active,.page-body-wrapper .nav-menu .nav-link.active{background:#d8f9e7!important;color:#073b2b!important;box-shadow:none}
.sidebar-section-title{color:#a8cabc!important;letter-spacing:.16em;font-size:10px}
.app-header,.page-header{background:#fffffff2!important;border-bottom:1px solid var(--bg-line);box-shadow:none!important;backdrop-filter:blur(18px)}
.app-main,.page-body-wrapper .page-body{background:transparent!important}
.content-wrapper{gap:28px!important}.main-content{min-width:0}
.card,.post-card,.create-post-card,.stories-section,.suggestions-section,.empty-feed{border:1px solid var(--bg-line)!important;border-radius:var(--bg-radius)!important;box-shadow:0 10px 35px #123c2b06!important;background:#fff}
.card-header{background:#eef7f0!important;color:var(--bg-ink)!important;border-bottom:1px solid var(--bg-line)!important;border-radius:var(--bg-radius) var(--bg-radius) 0 0!important}
.post-card,.create-post-card{margin-left:0!important;margin-right:0!important}
.search-box input,.form-control,.form-select,.create-input{border:1px solid var(--bg-line);border-radius:12px!important;background:#f7fbf8;color:var(--bg-ink)}
.btn-primary,.btn-success,.suggestion-btn{background:var(--bg-green)!important;border-color:var(--bg-green)!important;border-radius:12px;box-shadow:none!important}
.btn:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #f7923a!important;outline-offset:3px}
.stat-box,.stat-box.users-box,.stat-box.posts-box,.stat-box.reports-box,.stat-box.active-box{background:#fff!important;color:var(--bg-ink)!important;border:1px solid var(--bg-line);border-radius:var(--bg-radius)!important;text-align:left!important;box-shadow:none!important}
.stat-number{letter-spacing:-.045em;color:var(--bg-green);font-variant-numeric:tabular-nums}.stat-label{color:var(--bg-muted);opacity:1}
.table{--bs-table-color:var(--bg-ink);--bs-table-border-color:var(--bg-line)}.table th{color:var(--bg-muted);font-size:12px;letter-spacing:.04em}
.bg-welcome{position:relative;overflow:hidden;isolation:isolate;min-height:220px;border-radius:26px;padding:32px;margin-bottom:26px;background:#073b2b;color:#fff;display:flex;align-items:center}
.bg-welcome:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#073b2bf5 0%,#073b2bc0 46%,transparent 100%),url('../brand/eco-welcome.webp') right center/cover no-repeat}
.bg-welcome-copy{max-width:65%}.bg-eyebrow{display:block;font-size:10px;letter-spacing:.19em;text-transform:uppercase;color:#b5edc9;margin-bottom:14px}
.bg-welcome h1,.bg-welcome h2{font-size:clamp(24px,2.5vw,36px);font-weight:700;letter-spacing:-.045em;line-height:1.15;color:#fff!important;margin-bottom:12px}.bg-welcome p{font-size:14px;line-height:1.65;color:#d4e9dc;margin-bottom:20px}
.bg-welcome a{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;background:#d8f9e7;color:#073b2b!important;border-radius:12px;text-decoration:none;font-size:13px;font-weight:650}
@media(max-width:991px){.bg-welcome{padding:24px;min-height:210px}.bg-welcome-copy{max-width:80%}.app-main{padding-left:20px!important;padding-right:20px!important}}
@media(max-width:576px){.bg-welcome-copy{max-width:100%}.bg-welcome:before{background:linear-gradient(90deg,#073b2bf5,#073b2bc9),url('../brand/eco-welcome.webp') center/cover}.bg-welcome{border-radius:20px}.content-wrapper{gap:18px!important}.app-header .search-box{max-width:45vw}.table-responsive{overflow-x:auto}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.settings-card{background:#fff!important;border:1px solid var(--bg-line);border-radius:22px!important;box-shadow:none!important}
body.bg-auth{background:linear-gradient(135deg,#eaf6ee,#f7faf7)!important}
.bg-auth .login-content{min-height:520px;border-radius:28px;padding:36px;background:linear-gradient(180deg,#073b2bea,#073b2b80),url('../brand/eco-welcome.webp') 75% center/cover}
.bg-auth .login-content h1{font-size:40px;text-shadow:none;letter-spacing:-.04em}
.bg-auth .login-form-container,.bg-auth .register-card,.bg-auth .card{border:1px solid var(--bg-line);border-radius:28px!important;box-shadow:0 20px 70px #103d2e12!important;background:white}
.bg-auth .register-header{background:#073b2b!important}.bg-auth .brand-logo{max-width:210px;background:white;border-radius:12px;padding:10px;margin-bottom:24px}
.bg-auth .btn-login,.bg-auth button[type=submit]{background:var(--bg-green)!important;color:white;border-radius:14px}
@media(max-width:768px){.bg-auth .login-content{min-height:220px;padding:24px}.bg-auth .login-content .features{display:none}.bg-auth .login-container{gap:16px}}
@media(prefers-reduced-motion:reduce){.bg-auth .login-container{opacity:1!important;transform:none!important}}
body.dark-mode{--bg-ink:#e5f4ea;--bg-muted:#aac8b7;--bg-line:#29483a;--bg-canvas:#0c1d17;background:radial-gradient(ellipse at 90% 0%,#173a28,transparent 45%),var(--bg-canvas)!important;color:var(--bg-ink)!important}
body.dark-mode .app-header,body.dark-mode .card,body.dark-mode .post-card,body.dark-mode .create-post-card,body.dark-mode .stories-section,body.dark-mode .suggestions-section,body.dark-mode .empty-feed{background:#142c21!important;color:var(--bg-ink)!important}
body.dark-mode .card-header,body.dark-mode .form-control,body.dark-mode .form-select,body.dark-mode .search-box input,body.dark-mode .create-input{background:#1b3729!important;color:var(--bg-ink)!important}
body.dark-mode .author-name,body.dark-mode .suggestion-name,body.dark-mode .user-name{color:var(--bg-ink)!important}
body.dark-mode .empty-feed h5{color:var(--bg-ink)!important}
.header-icon{border:0;color:inherit}

/* Post impact cards: recorded values, owner-only rewards, responsive actions. */
.post-card .post-header{padding:20px 22px;border-bottom:0;gap:10px}.post-card .author-name{font-size:15px}.post-card .post-time{font-size:12px;color:var(--bg-muted)}
.post-card .post-content{padding:0 22px 18px}.post-card .post-text{font-size:15px;line-height:1.7}.post-card .post-image{width:100%;max-height:540px;object-fit:contain;background:#eff6f1;border-radius:0}
.bg-post-impact{margin:18px 20px;background:linear-gradient(125deg,#eefaf3,#f7fcf9);border:1px solid #d8edde;border-radius:18px;padding:16px}
.bg-impact-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}.bg-impact-kicker{font-size:10px;letter-spacing:.15em;font-weight:750;color:#42745b}.bg-category-chip{padding:5px 10px;border-radius:999px;background:white;color:#256348;font-size:11px;font-weight:650}
.bg-impact-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.bg-impact-stat{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:12px;border-radius:12px;background:#ffffffb0;border:1px solid #dfeee4;min-width:0;color:var(--bg-ink)}
.bg-impact-label{display:flex;align-items:center;gap:7px;font-size:11px;color:#577466;font-weight:650}.bg-impact-label svg{width:15px;height:15px}.bg-impact-stat strong{font-size:22px;letter-spacing:-.04em;line-height:1.5;color:#087f5b;font-variant-numeric:tabular-nums}.bg-impact-stat strong span{font-size:12px;letter-spacing:0}.bg-impact-stat small{font-size:10px;line-height:1.5;color:#647d6e}.bg-rp-stat{cursor:pointer;transition:border-color .15s}.bg-rp-stat:hover{border-color:#087f5b;background:white}
.post-card .post-engagement{padding:12px 22px;display:flex;flex-wrap:wrap;gap:12px;border-top:1px solid var(--bg-line);font-size:11px}.post-card .post-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:8px 16px 16px}.post-card .post-action{min-height:44px;display:flex;justify-content:center;align-items:center;gap:6px;border-radius:12px;font-size:12px;padding:8px 4px}.post-card .post-action:hover{background:#edf8f1}.post-card .post-action.liked{color:#087f5b;background:#e4f6ec}
body.dark-mode .bg-post-impact{background:#17372a;border-color:#315441}body.dark-mode .bg-impact-stat{background:#1d3e2f;border-color:#315441}body.dark-mode .bg-impact-stat strong{color:#91e0b0}body.dark-mode .bg-impact-label,body.dark-mode .bg-impact-stat small{color:#bbd7c7}body.dark-mode .bg-category-chip{background:#234c38;color:#b5eacb}
@media(max-width:480px){.bg-post-impact{margin:12px;padding:12px}.bg-impact-grid{gap:8px}.bg-impact-stat{padding:10px}.bg-impact-stat strong{font-size:19px}.post-card .post-header{padding:16px 14px}.post-card .post-content{padding:0 14px 14px}.post-card .post-follow-btn{font-size:11px}.post-card .post-actions{padding:8px;gap:2px}.post-card .post-action{font-size:11px;gap:4px}}

.post-card .post-actions{grid-template-columns:repeat(5,minmax(0,1fr))}.bg-repost-attribution,.bg-repost-summary{display:flex;align-items:center;gap:6px;padding:10px 22px;font-size:11px;color:var(--bg-muted)}.bg-repost-attribution{background:#f2faf5;border-bottom:1px solid var(--bg-line)}.bg-repost-attribution svg,.bg-repost-summary svg{width:13px;height:13px}.post-action.reposted{background:#e4f6ec;color:#087f5b}
@media(max-width:480px){.post-card .post-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.post-card .post-actions .post-action:nth-child(n+4){grid-column:auto}.bg-repost-attribution{padding:10px 14px}}

.bg-welcome{background:#edf9f0;color:#073b2b}.bg-welcome:before{background:linear-gradient(90deg,#f1fbf5ee 0%,#f1fbf5c0 48%,transparent 75%),url('../brand/eco-welcome-light.webp') right center/cover no-repeat}.bg-welcome h1,.bg-welcome h2{color:#073b2b!important}.bg-welcome p{color:#35644b}.bg-welcome .bg-eyebrow{color:#49785c}.bg-welcome a{background:#087f5b;color:#fff!important}
@media(max-width:576px){.bg-welcome:before{background:linear-gradient(90deg,#f1fbf5f5,#f1fbf5d0),url('../brand/eco-welcome-light.webp') 70% center/cover}}

.post-card .post-actions{border-top:1px solid var(--bg-line);padding-top:12px}.post-card .bg-action-count{font-size:10px;font-variant-numeric:tabular-nums;padding:2px 5px;min-width:18px;border-radius:6px;background:#edf5ef;color:#456a56;line-height:1.4}.post-card .post-action{gap:5px;white-space:nowrap}.dark-mode .post-card .bg-action-count{background:#2c4c39;color:#d6ebdf}@media(max-width:480px){.post-card .post-action{font-size:10px}.post-card .bg-action-count{padding:2px 4px}}
