:root { --bg:#f7f7fb; --card:#ffffff; --line:#e6e7ee; --ink:#1d2433; --muted:#687089; --brand:#5b4bdb; --brand-soft:#ece9ff; --success:#107a46; }
*{box-sizing:border-box} body{margin:0;font-family:Tahoma,Arial,sans-serif;background:var(--bg);color:var(--ink)} a{color:var(--brand);text-decoration:none} .shell{max-width:1100px;margin:0 auto;padding:24px} .topbar{background:#fff;border-bottom:1px solid var(--line)} .topbar .shell{display:flex;justify-content:space-between;align-items:center;gap:12px} .brand{font-weight:700;font-size:20px;color:var(--ink)} .nav{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.button,.button-secondary{display:inline-block;padding:10px 14px;border-radius:12px;border:1px solid var(--brand);font-weight:700}.button{background:var(--brand);color:#fff}.button-secondary{background:#fff;color:var(--brand)} .grid{display:grid;gap:18px}.grid-3{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:0 10px 30px rgba(0,0,0,.03)} .hero{padding:26px 0}.hero h1{margin:0 0 10px 0;font-size:34px}.hero p{margin:0;color:var(--muted)} .muted{color:var(--muted)} .meta{display:grid;gap:8px;color:var(--muted);font-size:14px}.badge{display:inline-block;padding:6px 10px;border-radius:999px;background:var(--brand-soft);color:var(--brand);font-size:12px;font-weight:700}.success{color:var(--success)} .list{display:grid;gap:12px}.field{display:grid;gap:8px;margin-bottom:14px}.field label{font-weight:700}.field input,.field select,.field textarea{width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:#fff} .messages{display:grid;gap:10px;margin-bottom:16px}.message{padding:12px 14px;border-radius:12px;background:#eef6ff;border:1px solid #d7e9ff} table{width:100%;border-collapse:collapse;background:#fff;border-radius:16px;overflow:hidden} th,td{padding:14px;border-bottom:1px solid var(--line);text-align:right} .actions{display:flex;gap:10px;flex-wrap:wrap}.split{display:grid;grid-template-columns:1.35fr .95fr;gap:18px}.filters{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:10px}.empty{padding:24px;text-align:center;color:var(--muted)} @media (max-width: 860px){.split,.filters{grid-template-columns:1fr}.topbar .shell{align-items:flex-start;flex-direction:column}}
