:root{--bg: #f5e6d3;--ink: #2c1810;--muted: #6b5a4a;--accent: #7a1f2b;--green: #2c5e2e;--card: #fffaf3;--border: rgba(44, 24, 16, .12)}*{box-sizing:border-box}body{margin:0;font-family:Georgia,Times New Roman,serif;background:var(--bg);color:var(--ink);line-height:1.5}.page{max-width:960px;margin:0 auto;padding:1.5rem 1.5rem 4rem}.hero{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;padding-bottom:1rem;border-bottom:1px solid var(--border);margin-bottom:2rem}.brand{font-size:1.4rem;font-weight:700;text-decoration:none;color:var(--ink);margin-right:auto}.nav{display:flex;gap:1.25rem}.nav-link{color:var(--muted);text-decoration:none;font-size:.9rem;letter-spacing:.06em;text-transform:uppercase;padding-bottom:.2rem;border-bottom:2px solid transparent}.nav-link:hover{color:var(--ink)}.nav-link.active{color:var(--accent);border-bottom-color:var(--accent)}.back-home{color:var(--muted);font-size:.85rem;text-decoration:none}.back-home:hover{color:var(--ink)}.status{text-align:center;color:var(--muted);padding:2rem 0}.status.error{color:var(--accent)}.totals{margin-bottom:1.5rem}.total-card{display:flex;flex-direction:column;gap:.25rem;padding:1.5rem 2rem;background:var(--card);border:1px solid var(--border)}.total-card .label{font-size:.85rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.total-card .amount{font-size:2.4rem;font-weight:700;color:var(--accent)}.total-card .meta{font-size:.85rem;color:var(--muted)}.alert{background:#7a1f2b14;border-left:3px solid var(--accent);padding:.75rem 1rem;margin-bottom:1.5rem;font-size:.95rem}.alert ul{margin:.5rem 0 0;padding-left:1.25rem}.alert a{color:var(--accent)}.by-kind h2,.policies h2,.form-page h2{font-size:1.1rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:1.5rem 0 .75rem}.kind-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.75rem;margin-bottom:1.5rem}.kind-card{display:flex;flex-direction:column;gap:.15rem;padding:1rem;background:var(--card);border:1px solid var(--border)}.kind-label{font-size:.85rem;color:var(--muted)}.kind-total{font-size:1.2rem}.kind-count{font-size:.8rem;color:var(--muted)}.empty{color:var(--muted);padding:1rem}.empty a{color:var(--accent);text-decoration:none;border-bottom:1px solid var(--accent)}.policy-table{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--border)}.policy-table th,.policy-table td{text-align:left;padding:.6rem .85rem;border-bottom:1px solid var(--border)}.policy-table th{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:400}.policy-table tbody tr:last-child td{border-bottom:none}.policy-table .num{font-variant-numeric:tabular-nums}.row-link{color:var(--accent);text-decoration:none;font-size:.9rem}.row-link:hover{text-decoration:underline}.form-page{max-width:640px}.detail-head{display:flex;align-items:baseline;gap:.85rem;flex-wrap:wrap;margin-bottom:1.5rem}.detail-head h2{margin:0;text-transform:none;letter-spacing:normal;color:var(--ink);font-size:1.6rem}.detail-head .amount{font-size:1.4rem;color:var(--accent)}.detail-head .muted{color:var(--muted);font-size:.95rem}.badge{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;background:var(--muted);color:var(--bg);padding:.15rem .5rem}.policy-form{display:flex;flex-direction:column;gap:1rem}.policy-form .row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem}.policy-form label{display:flex;flex-direction:column;gap:.25rem;font-size:.95rem}.policy-form label span{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.policy-form input,.policy-form select,.policy-form textarea{font-family:inherit;font-size:.95rem;padding:.55rem .7rem;background:var(--card);border:1px solid var(--border);color:var(--ink)}.policy-form input:focus,.policy-form select:focus,.policy-form textarea:focus{outline:none;border-color:var(--accent)}.policy-form textarea{resize:vertical}.form-actions{display:flex;gap:.75rem;margin-top:.5rem}button{font-family:inherit;font-size:.95rem;cursor:pointer;padding:.55rem 1.25rem;border:1px solid var(--border);background:var(--card);color:var(--ink)}button.primary{background:var(--accent);color:var(--bg);border-color:var(--accent)}button.primary:hover:not(:disabled){background:#5a161f}button.primary:disabled{opacity:.6;cursor:not-allowed}button.danger{background:none;color:var(--accent);border-color:var(--accent);margin-top:1.5rem}button.danger:hover{background:#7a1f2b14}.form-error{color:var(--accent)}.form-info{color:var(--green)}
