:root{--primary:#173149;--secondary:#e9373b;--tertiary:#b3a146}*{box-sizing:border-box}body,html{margin:0;min-height:100%;font-family:Segoe UI,system-ui,-apple-system,sans-serif;color:var(--primary)}body{background:var(--primary)}.shell{min-height:100vh;display:grid;place-items:center;padding:24px}.card{width:100%;max-width:380px;background:#fff;border-radius:12px;padding:32px;box-shadow:0 18px 50px rgba(0,0,0,.35);border-top:4px solid var(--tertiary)}.brand{margin:0 0 4px;font-size:20px;font-weight:700;letter-spacing:.01em}.sub{margin:0 0 24px;font-size:13px;color:#5a6a7a}label{display:block;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}input[type=password]{width:100%;padding:11px 12px;font-size:15px;border:1px solid #c9d3dd;border-radius:7px;background:#f8fafc}input[type=password]:focus{outline:2px solid var(--primary);outline-offset:1px;background:#fff}button{margin-top:18px;width:100%;padding:11px 14px;font-size:15px;font-weight:600;color:#fff;background:var(--primary);border:0;border-radius:7px;cursor:pointer}button:hover{background:#0f2337}.error{margin:0 0 16px;padding:9px 11px;font-size:13px;border-radius:7px;color:#8c1114;background:#fdecec;border-left:3px solid var(--secondary)}.foot{margin:18px 0 0;font-size:12px;color:#7c8894;text-align:center}.card.admin{max-width:640px}.hint{margin:0 0 18px;font-size:13px;line-height:1.5;color:#5a6a7a}.row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px}.row .grow{flex:1 1 220px}.row .days{width:90px}.row input:not([type]),.row input[type=number],.row input[type=text]{width:100%;padding:11px 12px;font-size:15px;border:1px solid #c9d3dd;border-radius:7px;background:#f8fafc}.row button{margin-top:0;width:auto;padding:11px 18px}.row button:disabled{opacity:.5;cursor:not-allowed}.issued{margin-top:24px;border-top:1px solid #e3e9ef;padding-top:18px}.card-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 0;border-bottom:1px solid #eef2f6}.card-row .meta{flex:1 1 100%;display:flex;justify-content:space-between;gap:10px;font-size:12px;color:#5a6a7a}.card-row .meta strong{color:var(--primary);font-size:14px}.card-row input{flex:1 1 300px;padding:8px 10px;font-size:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;border:1px solid #c9d3dd;border-radius:6px;background:#f8fafc;color:#33465a}.card-row button{margin-top:0;width:auto;padding:8px 14px;font-size:13px;background:var(--tertiary)}.card-row button:hover{background:#9c8c3c}