.portal-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:16px 24px;background:#f4f7f3;border-bottom:1px solid #d7dfd5}
.portal-nav a{display:flex;align-items:center;justify-content:center;text-align:center;padding:12px 8px;border:1px solid #d7dfd5;border-radius:12px;color:#1f5a3a;background:white;text-decoration:none;font-weight:700;margin:0}
.portal-nav a:hover,.portal-nav a:focus-visible{background:#e7efdf;outline:2px solid #1f5a3a;outline-offset:2px}
.board-card{margin:16px 0;padding:18px;border:1px solid #d7dfd5;border-radius:14px;background:#fff;overflow-wrap:anywhere}
.board-card h3{margin:10px 0;color:#1f5a3a}.board-text{line-height:1.6;white-space:normal}
.feature-meta{font-size:13px;color:#5d665f;line-height:1.5}.feature-badge{display:inline-block;border-radius:6px;background:#eaf1e3;color:#24482f;padding:4px 8px;font-size:13px;font-weight:700}.feature-read{color:#1f5a3a;font-weight:700}
.feature-empty{padding:18px;background:#f4f7f3;border:1px dashed #c6d2bf;border-radius:12px;color:#5d665f;line-height:1.5}
.personal-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0}.personal-stats>div{background:#f4f7f3;border:1px solid #d7dfd5;border-radius:12px;padding:14px}.personal-stats dt{font-size:13px;color:#5d665f}.personal-stats dd{margin:8px 0 0;font-size:25px;font-weight:700;color:#1f5a3a}.personal-stats small{font-size:12px;font-weight:400}
.feature-year{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.feature-year input{width:110px}.feature-year button{width:auto;padding:10px 16px;font-size:16px}.feature-year label{margin:0}
.feature select{box-sizing:border-box;width:100%;padding:12px;border:1px solid #d7dfd5;border-radius:12px;font-size:16px;background:#fff}.feature textarea{resize:vertical}.feature-check{display:flex;align-items:center;gap:10px}.feature-check input{width:20px;height:20px}.feature a{width:auto}.feature form{margin-bottom:24px}
@media(max-width:600px){.personal-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-nav{padding:12px;gap:6px}.portal-nav a{font-size:13px;padding:12px 4px}.board-card{padding:14px}}
