:root{--primary-color: #005bbc;--primary-dark: #0d47a1;--accent-color: #ff9800;--background-color: #f5f7fa;--card-bg: #ffffff;--text-color: #333333;--border-color: #e0e0e0;--card-width: 400px;--gap: 16px;--layout-width: calc( (var(--card-width) * 3) + (var(--gap) * 2) )}*{box-sizing:border-box;margin:0;padding:0}html,body{font-family:Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--background-color);color:var(--text-color);line-height:1.5;overflow-x:hidden}.layout-clamp{width:var(--layout-width);max-width:var(--layout-width);margin:0 auto;padding:0}.title-card{background-color:var(--primary-color);color:#fff;display:flex;justify-content:space-between;align-items:center;padding:1rem;margin-bottom:1.25rem;border-radius:8px;box-shadow:0 4px 10px #00000026}.title-card h1{font-size:1.9rem;font-weight:700;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn-primary{background-color:var(--primary-color);color:#fff;border:2px solid #fff;padding:.5rem 1rem;font-size:1rem;border-radius:6px;cursor:pointer;transition:background-color .3s ease,color .3s ease,border-color .3s ease}.btn-primary:hover{background-color:orange;color:#fff;border-color:#fff}.grid{display:grid;grid-template-columns:repeat(3,var(--card-width));gap:var(--gap);justify-content:start}.card{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:1rem;margin-bottom:1rem;width:var(--card-width);box-shadow:0 4px 10px #00000026}.card h2{font-size:1.25rem;margin-bottom:.5rem;border-bottom:1px solid var(--border-color);padding-bottom:.4rem}.card ul{list-style:none}.card ul li{padding:.25rem 0}.card p,.card li{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card.news-section{width:100%;box-sizing:border-box}.news-section{margin-top:1rem}.news-section+.news-section{margin-top:2rem}.news li{margin-bottom:.5rem}.news a{color:var(--primary-dark);text-decoration:none}.news a:hover{text-decoration:underline}.error{color:red;font-weight:700;margin:0 0 1rem}.notes{list-style:none;padding-left:0}.notes li{margin-bottom:.5rem}.note-form{display:flex;gap:.5rem;margin-bottom:1rem}.note-form input{flex:1;padding:.4rem;border:1px solid var(--border-color);border-radius:4px}.note-form button{padding:.4rem .8rem;background:var(--primary-color);color:#fff;border:none;border-radius:4px;cursor:pointer}.note-form button:hover{background:var(--accent-color)}
