:root{--y:#fece15;--ink:#1d1d1f;--muted:#6e6e73;--line:#e3e3e8;--bg:#f5f5f7;--danger:#b3261e;--focus:#2f6fd6}
*{box-sizing:border-box}
html,body{margin:0}
body{font-family:Futura,'Futura PT',-apple-system,'Segoe UI',Roboto,sans-serif;font-size:15px;color:var(--ink);background:var(--bg)}
a{color:inherit}
.field{font:inherit;font-size:14px;border:1px solid #cfcfd6;border-radius:7px;padding:7px 9px;background:#fff;color:var(--ink);min-width:0;width:100%}
.field:focus,button:focus-visible{outline:2px solid var(--focus);outline-offset:1px}
textarea.field{resize:vertical;line-height:1.35}
.btn{font:inherit;font-size:14px;border:1px solid #c9c9d0;background:#fff;color:var(--ink);border-radius:8px;padding:8px 14px;cursor:pointer;white-space:nowrap}
.btn:hover{background:#f0f0f3}
.btn.primary{background:var(--y);border-color:#d9ad00;font-weight:700}
.btn.primary:hover{background:#f5c400}
.btn.small{font-size:13px;padding:5px 10px}
.btn.wide{width:100%}
.btn:disabled{opacity:.6;cursor:wait}
.link{font:inherit;font-size:13px;background:none;border:0;padding:0;color:#2b5cab;cursor:pointer;text-decoration:underline;text-underline-offset:2px}
.link.danger,.danger{color:var(--danger)}
.muted{color:var(--muted)}
.small{font-size:13px}
.err{color:var(--danger)}
.appbar{display:flex;align-items:center;justify-content:space-between;padding:12px 28px;background:#fff;border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:700;font-size:17px}
.mark{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:7px;background:var(--y);font-weight:700}
.logout{display:flex;gap:12px;align-items:center;font-size:14px;color:var(--muted)}
.page{max-width:1180px;margin:0 auto;padding:28px}
h1{font-size:26px;margin:0 0 16px}
h2{font-size:15px;margin:0 0 10px;color:var(--muted);font-weight:500;text-transform:uppercase;letter-spacing:.04em}
.new-block{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px 26px;margin-bottom:28px}
.new-form .client{max-width:440px;margin-bottom:20px}
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.tile-group{display:flex;flex-direction:column;gap:8px}
.tile{font:inherit;font-size:16px;text-align:left;border:1px solid var(--line);background:#fafafa;border-radius:10px;padding:12px 14px;cursor:pointer}
.tile:hover{background:#fff8d6;border-color:#e6c200}
.history-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px}
.search{display:flex;gap:8px;width:360px}
.docs{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.docs th{text-align:left;font-size:12px;color:var(--muted);font-weight:500;padding:10px 14px;background:#fafafa;border-bottom:1px solid var(--line)}
.docs td{padding:11px 14px;border-bottom:1px solid var(--line);font-size:14px}
.docs tr:last-child td{border-bottom:0}
.docs a{text-decoration:none}
.docs a:hover{text-decoration:underline}
.vchip{display:inline-block;font-size:12px;border:1px solid var(--line);border-radius:5px;padding:1px 6px;margin-right:4px}
.row-actions{display:flex;gap:14px;justify-content:flex-end}
.empty{background:#fff;border:1px dashed #ccc;border-radius:12px;padding:30px;text-align:center;color:var(--muted)}
.pager{display:flex;gap:18px;justify-content:center;margin:18px 0}
.login-page .page{max-width:400px;padding-top:12vh}
.login-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:28px;display:flex;flex-direction:column;gap:8px}
.login-card h1{font-size:22px;margin:0}
.login-card label{font-size:13px;color:var(--muted);margin-top:6px}
.login-card .btn{margin-top:14px}
@media (max-width:820px){.tiles{grid-template-columns:1fr}.history-head{flex-direction:column;align-items:stretch}.search{width:auto}.page{padding:16px}}
