:root{font-family:Inter,Arial,sans-serif;color:#1b2940;background:#f5f7fb;font-size:14px}*{box-sizing:border-box}body{margin:0}a{color:#315dae;text-decoration:none}a:hover{text-decoration:underline}button,input,textarea{font:inherit}button,a,input,textarea{touch-action:manipulation}button{cursor:pointer}.hidden{display:none!important}.header{height:78px;padding:14px 32px;background:#fff;border-bottom:1px solid #e3e8ef;display:flex;align-items:center;justify-content:space-between}.brand{font-size:22px;color:#111b2e;font-weight:800;letter-spacing:-.7px}.brand span{display:block;color:#94a0b4;font-size:10px;letter-spacing:.14em;text-transform:uppercase;margin-top:4px}.button{display:inline-block;border:1px solid #dce3ef;background:#fff;border-radius:9px;padding:10px 14px;color:#47607d;font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap}.button.primary{background:#215cff;color:#fff;border-color:#215cff}.button:hover{filter:brightness(.97);text-decoration:none}.button:disabled{opacity:.5}.layout{display:grid;grid-template-columns:210px minmax(0,1fr);min-height:calc(100vh - 78px)}aside{padding:32px 20px;background:#fff;border-right:1px solid #e3e8ef}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.14em;color:#93a0b3}nav{margin-top:22px}nav a{display:block;padding:12px 16px;border-radius:9px;font-weight:700;color:#6c7c93;margin:6px 0}nav a.selected{background:#ecf2ff;color:#215cff}.sidebar-note{font-size:11px;color:#9aa6b7;line-height:1.6;margin-top:40px}.main{width:100%;max-width:1650px;min-width:0;margin:0 auto;padding:34px}.page-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:28px}.page-head h1{font-size:32px;letter-spacing:-1px;line-height:1.2;margin:9px 0 0}.actions{display:flex;gap:9px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:32px}.metrics>div,.panel{border:1px solid #e2e8f1;border-radius:14px;background:#fff;box-shadow:0 3px 15px #1e334603}.metrics>div{padding:20px 23px}.metrics span{display:block;color:#8695a9;font-size:12px}.metrics strong{display:block;font-size:29px;margin-top:10px}.panel{padding:24px}h2{font-size:18px;letter-spacing:-.3px;margin:0 0 14px}h3{font-size:14px;margin:0}.list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.list-toolbar h2{margin:0}.list-toolbar input{max-width:340px}.client-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.client-card{display:flex;flex-direction:column;min-width:0;padding:22px}.client-card-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px}.avatar{display:grid;place-items:center;width:44px;height:44px;background:#edf3ff;color:#3b64ae;border-radius:12px;font-size:13px;font-weight:800}.badge{display:inline-block;font-size:10px;color:#7d8ca2;background:#f2f5f9;padding:6px 9px;border-radius:7px;font-weight:600}.badge.warning{color:#a76a16;background:#fff2d9}.client-card h2{margin:0 0 6px;line-height:1.35;overflow-wrap:anywhere}.client-card h2 a{color:#263d5d}.person-name{font-size:12px;color:#8b98ac;margin:0 0 19px}.contact-lines{display:grid;gap:8px;font-size:12px;overflow-wrap:anywhere;margin-bottom:22px}.contact-lines a{color:#6b7f9d}.meeting-strip{background:#f8faff;border:1px solid #edf1f8;border-radius:8px;padding:12px;margin-top:auto}.meeting-strip span{display:block;color:#a0abbb;letter-spacing:.08em;font-size:9px;font-weight:700}.meeting-strip strong{display:block;font-size:12px;color:#60758f;margin-top:7px;font-weight:500}.card-open{font-size:11px;font-weight:700;margin-top:18px}.detail-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:22px;align-items:start}.client-contact{display:flex;flex-wrap:wrap;gap:12px 24px;padding:18px 0 26px;font-size:12px;color:#71829a}.back{display:inline-block;font-size:12px;margin-bottom:10px}.client-form{display:grid;grid-template-columns:1fr 1fr;gap:17px}.wide{grid-column:1/-1}label{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:700;color:#8090a6}input:not([type=checkbox]),textarea{width:100%;border:1px solid #dce4ef;border-radius:8px;padding:11px;background:#fff;color:#293b55;min-width:0}textarea{resize:vertical;line-height:1.55}input:focus,textarea:focus{outline:2px solid #215cff22;border-color:#215cff}.form-heading{border-top:1px solid #edf0f5;padding-top:18px;display:flex;justify-content:space-between;gap:10px}.form-heading span{font-size:10px;color:#9aa6b7}.task-add{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:13px;padding:15px;background:#f8faff;border-radius:10px;margin-bottom:24px}.task-add button{grid-column:1/-1;justify-self:start}.task{border-bottom:1px solid #edf1f6;padding:16px 0}.task-check{display:flex;flex-direction:row;align-items:flex-start;gap:12px;font-size:13px;font-weight:600;color:#344963;line-height:1.6;overflow-wrap:anywhere}.task-check input{margin-top:4px;accent-color:#215cff;width:17px;height:17px;flex-shrink:0}.task.done .task-check span{text-decoration:line-through;color:#9aa6b7}.task-meta{display:flex;gap:16px;align-items:flex-start;margin:10px 0 0 29px;font-size:10px;color:#91a0b5;flex-wrap:wrap}.task.overdue .task-meta>span{color:#c45f31}.task details form{display:grid;gap:12px;margin-top:12px;min-width:220px}summary{cursor:pointer;font-size:11px;color:#8294ac}.completed{margin-top:25px}.completed>summary{padding:12px;background:#f7f9fc;border-radius:8px}.note-text{white-space:pre-wrap;overflow-wrap:anywhere}.meeting-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.meeting{color:inherit}.meeting-time{color:#215cff;font-size:13px;font-weight:700;margin-bottom:18px}.meeting p{font-size:12px;color:#8a9bb0}.empty{padding:25px;color:#91a0b5;font-size:12px;text-align:center}.muted{color:#8a9bb0;font-size:12px;line-height:1.7}.login{max-width:490px;margin:80px auto;padding:35px;background:#fff;border:1px solid #e2e8f1;border-radius:16px}.login h1{font-size:30px;letter-spacing:-.8px}.login p{color:#8695a9;font-size:13px;line-height:1.7}.login form{display:grid;gap:18px;margin-top:25px}.status:empty{display:none}.status{background:#edf4ff;color:#3d62a4;padding:11px 32px;margin:0;font-size:12px}.form-status{margin-left:12px}.new-client{max-width:850px}.new-client .back{margin-bottom:25px}:focus-visible{outline:2px solid #215cff;outline-offset:3px}
@media(max-width:1250px){.client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid{grid-template-columns:1fr}.main{padding:28px 22px}.layout{grid-template-columns:180px minmax(0,1fr)}}@media(max-width:750px){.layout{display:block}aside{padding:8px 12px;position:sticky;top:0;z-index:3;border-bottom:1px solid #e3e8ef}.sidebar-note,aside>.eyebrow{display:none}nav{display:flex;gap:8px;margin:0}nav a{font-size:12px;margin:0;padding:10px 15px}.header{height:70px;padding:12px 18px}.main{padding:26px 16px}.page-head{flex-wrap:wrap}.page-head h1{font-size:27px}.actions{flex-wrap:wrap}.metrics{grid-template-columns:1fr 1fr;gap:10px}.metrics>div{padding:16px}.client-grid,.meeting-list{grid-template-columns:1fr}.list-toolbar{align-items:stretch;flex-direction:column;gap:12px}.list-toolbar input{max-width:none}.client-form{grid-template-columns:1fr}.wide{grid-column:auto}.panel{padding:20px}.task-add{grid-template-columns:1fr}.task-add button{grid-column:auto}.login{margin:45px 16px;padding:28px}.brand{font-size:20px}}
