:root{--background:#f7f2ea;--surface:#fffdf8;--canvas:#ece5db;--border:#e6ded1;--text-primary:#2a1c2a;--text-muted:#2a1c2a8c;--primary:#793974;--tinted-surface:#f4e1f2;--success:#295935;--danger:#934f00;--warning-bg:#ffeed6;--warning-border:#eaba83;color:var(--text-primary);background:var(--canvas);font:16px/1.5 system-ui,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{margin:0}h1{margin:0;font-size:24px}.centered-page{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:8px;width:100%;max-width:360px;padding:32px;display:flex}.card h1{text-align:center;margin-bottom:16px}.logo-centered{justify-content:center;margin-bottom:8px;display:flex}.page-header .logo-row{align-items:center;gap:10px;display:flex}label{color:var(--text-muted);margin-top:8px;font-size:13px}input{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text-primary);border-radius:8px;padding:10px 12px}button{font:inherit;background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:8px;margin-top:16px;padding:10px 16px;font-weight:600}button:disabled{opacity:.6;cursor:default}button.secondary{border:1px solid var(--primary);color:var(--primary);background:0 0;margin-top:0}.page{background:var(--background);max-width:1100px;min-height:100vh;margin:0 auto;padding:32px 24px}.page-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.error{color:var(--danger);font-size:14px}.muted{color:var(--text-muted)}table{border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:12px;width:100%;overflow:hidden}th,td{text-align:left;border-bottom:1px solid var(--border);padding:10px 12px;font-size:14px}th{color:var(--text-muted);text-transform:uppercase;font-size:12px;font-weight:600}tr:last-child td{border-bottom:none}.mono{font-family:ui-monospace,Consolas,monospace;font-size:12px}td button{margin-top:0;padding:6px 12px;font-size:13px}button.danger{background:var(--danger)}.report-list{flex-direction:column;gap:16px;display:flex}.report-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px}.report-card-header{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:14px;font-size:14px;display:flex}.report-card-body{flex-direction:column;gap:10px;display:flex}.report-card-body label{margin-top:0}.report-card-body p{white-space:pre-wrap;margin:2px 0 0;font-size:14px}.report-card-actions{gap:12px;margin-top:16px;display:flex}.report-card-actions button{margin-top:0}.admin-nav{gap:8px;margin-bottom:20px;display:flex}.admin-nav a{border:1px solid var(--border,#e6ded1);color:inherit;border-radius:999px;padding:8px 16px;font-weight:600;text-decoration:none}.admin-nav a.active{background:var(--primary,#793974);border-color:var(--primary,#793974);color:#fff}textarea{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text-primary);resize:vertical;box-sizing:border-box;border-radius:8px;width:100%;min-height:160px;padding:10px 12px}.result-box{background:var(--surface);border:1px solid var(--border);border-radius:8px;margin:16px 0;padding:12px 16px}.button-row{flex-wrap:wrap;gap:12px;display:flex}.button-row button{margin-top:12px}
