*,*:before,*:after{box-sizing:border-box}*{margin:0}html{interpolate-size:allow-keywords}body{line-height:1.5;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p{overflow-wrap:break-word;text-wrap:pretty}h1,h2,h3,h4,h5,h6{overflow-wrap:break-word;text-wrap:balance}#root,#app{isolation:isolate}:root{font-family:ui-rounded,SF Pro Rounded,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;color-scheme:light dark;--color-red: #ef3340;--color-blue: #0047ab;--color-yellow: #ffd400;--color-bg: #ffffff;--color-surface: #ffffff;--color-ink: #14171a;--color-ink-soft: #4a4e55;--color-shadow: #14171a;--radius-lg: 28px;--radius-md: 18px;--radius-sm: 12px;--border-width: 3px;--shadow-offset: 6px;--shadow-block: var(--shadow-offset) var(--shadow-offset) 0 0 var(--color-shadow);--shadow-block-sm: 4px 4px 0 0 var(--color-shadow);--ease-pop: cubic-bezier(.34, 1.56, .64, 1)}@media(prefers-color-scheme:dark){:root{--color-bg: #14171a;--color-surface: #1e2226;--color-ink: #f5f6f8;--color-ink-soft: #c2c6cc;--color-shadow: #f5f6f8}}body{min-height:100dvh;background-color:var(--color-bg);color:var(--color-ink)}.page{max-width:80ch;margin-inline:auto;padding:2rem}.page--wide{max-width:72rem}.page h1{font-size:clamp(2rem,4vw,2.75rem);font-weight:800;letter-spacing:-.02em;margin-bottom:.5rem}.page__lede{color:var(--color-ink-soft);font-size:1.05rem;max-width:60ch;margin-bottom:1.75rem}.app-shell{min-height:100dvh;display:flex;flex-direction:column}.app-header{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;padding:1rem 1.5rem;background-color:var(--color-surface);border-bottom:var(--border-width) solid var(--color-ink);position:sticky;top:0;z-index:10}.app-header__brand{font-size:1.5rem;font-weight:800;letter-spacing:-.02em}.app-nav{display:flex;flex-wrap:wrap;gap:.5rem}.app-nav__link{display:inline-flex;align-items:center;padding:.5rem 1rem;border-radius:var(--radius-sm);border:var(--border-width) solid transparent;color:var(--color-ink);font-weight:700;text-decoration:none;transition:transform .2s var(--ease-pop),border-color .15s ease,background-color .15s ease}.app-nav__link:hover{border-color:var(--color-ink);transform:translateY(-2px)}.app-nav__link--active{background-color:var(--color-blue);border-color:var(--color-ink);color:#fff}.button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.7rem 1.25rem;border-radius:var(--radius-sm);border:var(--border-width) solid var(--color-ink);font-weight:800;font-size:.95rem;cursor:pointer;background-color:var(--color-surface);color:var(--color-ink);box-shadow:var(--shadow-block-sm);transition:transform .15s var(--ease-pop),box-shadow .15s var(--ease-pop)}.button:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 0 var(--color-shadow)}.button:active{transform:translate(1px,1px);box-shadow:2px 2px 0 0 var(--color-shadow)}.button--primary{background-color:var(--color-yellow);color:var(--color-ink)}.button--danger{background-color:var(--color-red);color:#fff}.button--ghost{background-color:transparent}.summary-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1.25rem;margin-bottom:2rem}.summary-card{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;padding:1.5rem;border-radius:var(--radius-lg);border:var(--border-width) solid var(--color-ink);background-color:var(--color-surface);color:var(--color-ink);text-decoration:none;box-shadow:var(--shadow-block);transition:transform .2s var(--ease-pop),box-shadow .2s var(--ease-pop)}.summary-card:hover{transform:translate(-3px,-3px) rotate(-1deg);box-shadow:9px 9px 0 0 var(--color-shadow)}.summary-card__icon{font-size:1.75rem}.summary-card__count{font-size:2.25rem;font-weight:800;line-height:1}.summary-card__label{font-weight:700;color:var(--color-ink-soft)}.summary-card--red{background-color:color-mix(in srgb,var(--color-red) 12%,var(--color-surface))}.summary-card--blue{background-color:color-mix(in srgb,var(--color-blue) 12%,var(--color-surface))}.summary-card--yellow{background-color:color-mix(in srgb,var(--color-yellow) 20%,var(--color-surface))}.stat-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:2rem}.stat-pill{padding:.6rem 1.1rem;border-radius:999px;border:var(--border-width) solid var(--color-ink);background-color:var(--color-surface);font-weight:600}.stat-pill strong{font-weight:800}.banner{padding:1.25rem 1.5rem;border-radius:var(--radius-md);border:var(--border-width) solid var(--color-ink);background-color:color-mix(in srgb,var(--color-yellow) 25%,var(--color-surface));box-shadow:var(--shadow-block-sm);margin-bottom:2rem}.toolbar{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem;align-items:center}.toolbar__search{flex:1 1 220px;padding:.65rem 1rem;border-radius:var(--radius-sm);border:var(--border-width) solid var(--color-ink);background-color:var(--color-surface);color:var(--color-ink);font-size:1rem}.toolbar__filter select{padding:.65rem .9rem;border-radius:var(--radius-sm);border:var(--border-width) solid var(--color-ink);background-color:var(--color-surface);color:var(--color-ink);font-weight:600}.toolbar__add{margin-left:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.record-list{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}.card{padding:1.25rem;border-radius:var(--radius-md);border:var(--border-width) solid var(--color-ink);background-color:var(--color-surface);box-shadow:var(--shadow-block-sm);display:flex;flex-direction:column;gap:.6rem;transition:transform .2s var(--ease-pop),box-shadow .2s var(--ease-pop)}.card:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 0 var(--color-shadow)}.card__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.card__header h3{font-size:1.15rem;font-weight:800}.card__meta{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem}.card__meta div{display:flex;flex-direction:column;gap:.1rem}.card__meta dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--color-ink-soft);font-weight:700}.card__meta dd{font-weight:600}.card__notes{color:var(--color-ink-soft);font-size:.95rem}.card__notes--note{white-space:pre-wrap;color:var(--color-ink)}.card__timestamp{font-size:.8rem;color:var(--color-ink-soft)}.card__actions{display:flex;gap:.5rem;margin-top:auto;padding-top:.5rem}.badge{display:inline-flex;align-items:center;padding:.3rem .75rem;border-radius:999px;border:2px solid var(--color-ink);font-size:.78rem;font-weight:800;white-space:nowrap;background-color:var(--color-surface);color:var(--color-ink)}.badge--new,.badge--pending,.badge--unread{background-color:var(--color-yellow);color:var(--color-ink)}.badge--contacted,.badge--booked,.badge--confirmed,.badge--scheduled,.badge--replied{background-color:var(--color-blue);color:#fff}.badge--completed{background-color:var(--color-ink);color:var(--color-bg)}.badge--lost,.badge--cancelled,.badge--no-show{background-color:var(--color-red);color:#fff}.empty-state{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;padding:2.5rem;border-radius:var(--radius-lg);border:var(--border-width) dashed var(--color-ink);color:var(--color-ink-soft)}.empty-state__icon{font-size:2.5rem}.empty-state h3{color:var(--color-ink);font-size:1.3rem;font-weight:800}.empty-state .button{margin-top:.5rem}.modal-backdrop{position:fixed;inset:0;background-color:#14171a8c;display:flex;align-items:center;justify-content:center;padding:1.5rem;z-index:100;animation:fade-in .15s ease}.modal{width:min(560px,100%);max-height:min(88dvh,720px);overflow-y:auto;background-color:var(--color-surface);border-radius:var(--radius-lg);border:var(--border-width) solid var(--color-ink);box-shadow:10px 10px 0 0 var(--color-shadow);padding:1.5rem;animation:pop-in .25s var(--ease-pop)}.modal__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.modal__header h2{font-size:1.4rem;font-weight:800}.modal__close{border:var(--border-width) solid var(--color-ink);background-color:var(--color-surface);color:var(--color-ink);border-radius:var(--radius-sm);width:2.25rem;height:2.25rem;font-size:1.25rem;line-height:1;cursor:pointer;transition:transform .15s var(--ease-pop)}.modal__close:hover{transform:scale(1.1) rotate(8deg)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes pop-in{0%{opacity:0;transform:scale(.9) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.form{display:flex;flex-direction:column;gap:1rem}.form__row{display:flex;gap:1rem;flex-wrap:wrap}.form__row .form__field{flex:1 1 180px}.form__field{display:flex;flex-direction:column;gap:.35rem;font-weight:700;font-size:.9rem}.form__field input,.form__field select,.form__field textarea{padding:.65rem .85rem;border-radius:var(--radius-sm);border:var(--border-width) solid var(--color-ink);background-color:var(--color-surface);color:var(--color-ink);font-weight:500;font-family:inherit;font-size:1rem}.form__field textarea{resize:vertical}.form__actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem}
