:root{--cream:#faf6ee;--mint:#f7ffef;--sage:#6b7b5a;--navy:#233954;--btn:#6e6278;--ink:#2a2a2a;--muted:#5d5d5d;--line:#ddd6c6;--serif:"loretta",Georgia,"Times New Roman",serif;--sans:"mr-eaves-xl-sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);line-height:1.6}main{max-width:720px;margin:0 auto;padding:48px 24px}h1,h2{font-family:var(--serif);color:var(--sage);line-height:1.2}h2{margin:28px 0 10px;font-size:1.3rem}a{color:var(--btn)}.muted{color:var(--muted)}code{border:1px solid #ece4d3;border-radius:4px;padding:1px 5px;font-size:.9em}.card,code{background:#fff}.card{border-radius:14px;padding:24px 28px;box-shadow:0 4px 18px rgba(107,123,90,.1);margin:16px 0}.btn{display:inline-block;background:var(--btn);color:#fff;border:0;border-radius:8px;padding:12px 22px;font-family:var(--sans);font-weight:700;font-size:.95rem;cursor:pointer;text-decoration:none;transition:filter .2s,background .2s}.btn:hover{filter:brightness(.95)}.btn--sage{background:var(--sage)}.btn--ghost{background:transparent;color:var(--btn);border:1.5px solid var(--btn)}.btn--ghost:hover{background:var(--btn);color:#fff;filter:none}.field{margin-bottom:14px}.field label{display:block;font-size:.78rem;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-bottom:5px}.field input,.field select{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;font-family:var(--sans);font-size:15px;color:var(--ink)}.field input:focus,.field select:focus{outline:none;border-color:var(--btn);box-shadow:0 0 0 3px rgba(110,98,120,.12)}.field-row{display:grid;grid-template-columns:2fr 1fr 1fr;grid-gap:12px;gap:12px}@media (max-width:480px){.field-row{grid-template-columns:1fr}}.account-header{gap:16px}.account-header,.row{display:flex;align-items:center;justify-content:space-between}.row{gap:12px}.actions{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px}.renew-form{display:flex;align-items:center;gap:8px}.renew-form select{width:auto}.badge{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;padding:3px 10px;border-radius:999px}.badge--active{background:#e7f0dd;color:#46603a}.badge--expired{background:#f1ece0;color:#7a6f57}.badge--cancelled{background:#f3e1e1;color:#8a4b4b}.history{width:100%;border-collapse:collapse;font-size:.95rem}.history td,.history th{text-align:left;padding:8px 6px;border-bottom:1px solid #f0eadc}.history th{color:var(--muted);font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:1px}.history tr:last-child td{border-bottom:0}.notice{border-radius:10px;padding:12px 16px;font-size:.95rem;margin:14px 0}.notice--ok{background:var(--mint);color:#46603a;border:1px solid #cfe0bd}.notice--error{background:#fbecec;color:#8a4b4b;border:1px solid #eccccc}main.admin{max-width:1000px}.admin-nav{display:flex;flex-wrap:wrap;gap:8px 18px;margin:6px 0 18px;padding-bottom:14px;border-bottom:1px solid var(--line)}.admin-nav a{font-weight:700;text-decoration:none}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:14px;gap:14px;margin:16px 0}.stat{background:#fff;border-radius:12px;padding:18px 20px;box-shadow:0 4px 18px rgba(107,123,90,.08)}.stat .num{font-family:var(--serif);font-size:1.9rem;color:var(--sage);line-height:1}.stat .label{font-size:.78rem;text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin-top:6px}.search-bar{display:flex;gap:10px;margin:8px 0 18px}.search-bar input{flex:1 1;padding:10px 12px;border:1px solid var(--line);border-radius:8px;font-size:15px}.table{width:100%;border-collapse:collapse;font-size:.95rem}.table td,.table th{text-align:left;padding:9px 10px;border-bottom:1px solid #f0eadc;vertical-align:top}.table th{color:var(--muted);font-weight:700;font-size:.74rem;text-transform:uppercase;letter-spacing:1px}.table tr:last-child td{border-bottom:0}.table a{font-weight:700;text-decoration:none}.badge--planned{background:#e3ecf5;color:#2f4a66}.badge--fulfilled{background:#e7f0dd;color:#46603a}.field-row2{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}@media (max-width:480px){.field-row2{grid-template-columns:1fr}}