:root{--cream: #f2eadf;--cream-deep: #e7dac8;--ink: #111111;--paper: #ffffff;--muted: #6a655f;--line: #ddd4c7;--shadow: 0 18px 45px rgba(17,17,17,.07);--radius: 20px}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--ink);background:linear-gradient(180deg,#fff,#fbf7f1)}a{color:var(--ink);text-decoration:none}button,.button-link{background:var(--ink);color:#fff;border:none;border-radius:999px;padding:.85rem 1.2rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-weight:700}.button-link--ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}input,select,textarea{width:100%;padding:.9rem 1rem;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);font:inherit}textarea{resize:vertical}label{display:grid;gap:.45rem;font-size:.95rem;font-weight:600}h1,h2,h3,p{margin:0}.muted{color:var(--muted)}.full-span{grid-column:1 / -1}.stack-gap{display:grid;gap:1rem}.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:1.15rem;box-shadow:var(--shadow)}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;color:var(--muted);margin-bottom:.35rem}.topnav{position:sticky;top:0;z-index:100;background:#ffffffeb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:1rem 1.25rem}.topnav__links{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.nav-pill{padding:.65rem .95rem;border-radius:999px;border:1px solid transparent;color:var(--muted);font-weight:700}.nav-pill--active,.nav-pill:hover{background:var(--cream);color:var(--ink);border-color:var(--line)}.nav-actions{display:flex;align-items:center;gap:.75rem}.user-chip{padding:.65rem .95rem;border-radius:999px;background:var(--cream);color:var(--ink);font-size:.9rem}.brand-mark{display:flex;align-items:center;gap:.85rem}.brand-mark__seal{width:56px;height:56px;border-radius:18px;background:var(--ink);color:var(--paper);display:grid;place-items:center;font-weight:800;font-size:1.2rem;box-shadow:var(--shadow)}.brand-mark__name{font-size:1.25rem;font-weight:800}.brand-mark__subtitle{color:var(--muted);font-size:.88rem}.content-wrap{padding:1.5rem;max-width:1360px;margin:0 auto}.page-hero{background:linear-gradient(180deg,var(--paper),#faf7f2);border:1px solid var(--line);border-radius:28px;padding:1.5rem;margin-bottom:1rem;box-shadow:var(--shadow)}.page-hero h1{font-size:clamp(1.8rem,4vw,2.5rem);margin-bottom:.35rem}.hero-copy{color:var(--muted);max-width:900px}.dashboard-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1rem}.stat-card{background:var(--cream);border:1px solid var(--line);border-radius:var(--radius);padding:1rem 1.1rem;display:grid;gap:.35rem}.stat-card span{color:var(--muted);font-size:.9rem}.stat-card strong{font-size:1.1rem}.grid{display:grid;gap:1rem}.cards-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.tile{background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:1.25rem;display:flex;justify-content:space-between;gap:1rem;box-shadow:var(--shadow)}.tile--action{min-height:170px}.tile h3{margin-bottom:.4rem}.tile p{color:var(--muted);line-height:1.45}.tile-arrow{font-size:1.5rem}.auth-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(180deg,#fff 0%,var(--cream) 100%);padding:1.5rem}.auth-card{width:min(460px,100%);background:#fff;border:1px solid var(--line);border-radius:28px;padding:2rem;display:grid;gap:1rem;box-shadow:var(--shadow)}.auth-grid{display:grid;gap:1rem}.auth-links{display:flex;justify-content:space-between;align-items:center}.status{background:var(--cream);padding:.9rem 1rem;border-radius:14px}.status--error{background:#f8e3e3}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.form-actions{display:flex;gap:.75rem;flex-wrap:wrap}.check-label{display:flex;align-items:center;gap:.5rem;align-self:end}.check-label input{width:auto}.toolbar{display:flex;gap:1rem;flex-wrap:wrap;align-items:end}.toolbar-search{min-width:min(100%,340px)}.data-table{width:100%;border-collapse:collapse;overflow:hidden}.data-table th,.data-table td{padding:.85rem .75rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.data-table thead th{font-size:.84rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.table-actions{display:flex;gap:.5rem;flex-wrap:wrap}.detail-banner{background:var(--cream);border:1px solid var(--line);border-radius:20px;padding:1rem 1.25rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:1rem}.detail-banner span{display:block;color:var(--muted);margin-bottom:.3rem}.report-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;margin-top:1rem}.report-card{background:var(--paper);border-radius:20px;padding:1rem;border:1px solid var(--line);box-shadow:var(--shadow)}.report-card h3{margin-bottom:.75rem}.report-card p{font-size:1.5rem;font-weight:800}.report-card.wide{grid-column:1 / -1}.report-list{margin:0;padding-left:1.2rem;display:grid;gap:.4rem}.compact-table th,.compact-table td{padding:.6rem}@media (max-width: 980px){.topnav{grid-template-columns:1fr}.topnav__links{justify-content:flex-start}.nav-actions{justify-content:space-between;flex-wrap:wrap}.dashboard-stats,.detail-banner{grid-template-columns:1fr}}.calendar-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:24px;align-items:start}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:12px;margin-top:24px}.calendar-weekday{text-align:center;font-weight:700;color:var(--muted);padding-bottom:10px}.calendar-day{min-height:110px;border:1px solid var(--line);border-radius:18px;background:#fff;color:var(--ink);padding:10px;display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;cursor:pointer;transition:.2s}.calendar-day:hover{border-color:#111;transform:translateY(-2px)}.calendar-day--selected{background:#111;color:#fff}.calendar-day--empty{border:none;background:transparent;cursor:default}.calendar-day-number{font-size:20px;font-weight:800;margin-bottom:8px}.calendar-events{display:flex;flex-direction:column;gap:6px;width:100%}.calendar-dot{border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dot-arraignment{background:#2f855a}.dot-bail-motion{background:#dd6b20}.dot-other-motion{background:#b7791f}.dot-further-proceedings{background:#718096}.dot-preliminary-hearing{background:#3182ce}.dot-trial{background:#c53030}.dot-jury-selection{background:#805ad5}.dot-resentencing-hearing{background:#6b46c1}.dot-sb-1437-hearing{background:#d53f8c}.docket-card{background:#fffaf5;border:1px solid var(--line);border-radius:20px;padding:18px;margin-bottom:16px;display:block}.docket-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:16px}@media (max-width:1100px){.calendar-layout{grid-template-columns:1fr}}.calendar-toolbar{background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:1.2rem;box-shadow:var(--shadow);display:flex;justify-content:space-between;gap:1rem;align-items:center;margin-bottom:1rem}.calendar-toolbar h2{font-size:1.7rem}.calendar-actions{display:flex;gap:.65rem;flex-wrap:wrap}.calendar-filters{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:1rem;background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:1rem;box-shadow:var(--shadow);margin-bottom:1rem}.calendar-pro-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(360px,.9fr);gap:1rem;align-items:start}.calendar-pro-panel,.daily-docket{background:var(--paper);border:1px solid var(--line);border-radius:28px;padding:1rem;box-shadow:var(--shadow)}.calendar-pro-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.calendar-pro-weekday{text-align:center;padding:.7rem 0;font-weight:900;color:var(--muted);text-transform:uppercase;font-size:.75rem;letter-spacing:.08em;border-bottom:1px solid var(--line)}.calendar-pro-day{min-height:124px;background:#fffaf5;color:var(--ink);border:1px solid #eadfD1;border-radius:18px;padding:.75rem;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:.55rem;box-shadow:none;transition:.15s ease}.calendar-pro-day:hover{border-color:var(--ink);transform:translateY(-1px)}.calendar-pro-empty{background:transparent;border:none;cursor:default}.calendar-pro-day-head{display:flex;justify-content:space-between;align-items:center}.calendar-pro-day-head span{font-size:1rem;font-weight:900}.calendar-pro-day-head strong{background:var(--ink);color:#fff;border-radius:999px;min-width:26px;height:26px;display:grid;place-items:center;font-size:.75rem}.calendar-pro-today{border:2px solid var(--ink)}.calendar-pro-selected{background:var(--ink);color:#fff}.calendar-pro-selected .court-chip{background:#fff;color:var(--ink)}.calendar-pro-events{display:grid;gap:.35rem}.court-chip{display:block;border-radius:999px;padding:.35rem .55rem;font-size:.72rem;font-weight:900;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.court-chip-arraignment,.hearing-pill-arraignment{background:#2f855a}.court-chip-bail-motion,.hearing-pill-bail-motion{background:#dd6b20}.court-chip-other-motion,.hearing-pill-other-motion{background:#b7791f}.court-chip-further-proceedings,.hearing-pill-further-proceedings{background:#718096}.court-chip-preliminary-hearing,.hearing-pill-preliminary-hearing{background:#3182ce}.court-chip-trial,.hearing-pill-trial{background:#c53030}.court-chip-jury-selection,.hearing-pill-jury-selection{background:#805ad5}.court-chip-resentencing-hearing,.hearing-pill-resentencing-hearing{background:#6b46c1}.court-chip-sb-1437-hearing,.hearing-pill-sb-1437-hearing{background:#d53f8c}.court-chip-unscheduled,.hearing-pill-unscheduled,.court-chip-more{background:#111}.daily-docket{position:sticky;top:110px}.daily-docket-head{border-bottom:1px solid var(--line);padding-bottom:1rem;margin-bottom:1rem}.daily-docket-head h2{font-size:1.45rem;margin-bottom:.25rem}.daily-docket-head p:last-child{color:var(--muted)}.empty-docket{background:#fffaf5;border:1px dashed var(--line);border-radius:20px;padding:1.2rem;color:var(--muted)}.docket-list{display:grid;gap:.85rem}.docket-pro-card{display:grid;grid-template-columns:88px 1fr auto;gap:1rem;align-items:start;background:#fffaf5;border:1px solid var(--line);border-radius:22px;padding:1rem;color:var(--ink);transition:.15s ease}.docket-pro-card:hover{border-color:var(--ink);transform:translateY(-1px)}.docket-time{display:grid;gap:.25rem;color:var(--muted)}.docket-time strong{color:var(--ink);font-size:1.05rem}.docket-title-row{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start;margin-bottom:.75rem}.docket-title-row h3{font-size:1.1rem}.hearing-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;color:#fff;padding:.4rem .65rem;font-size:.75rem;font-weight:900;white-space:nowrap}.docket-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem .8rem}.docket-details-grid p{color:var(--muted);font-size:.88rem}.docket-arrow{font-size:1.3rem;font-weight:900}@media (max-width: 1100px){.calendar-pro-layout{grid-template-columns:1fr}.daily-docket{position:static}}@media (max-width: 720px){.calendar-toolbar,.calendar-filters{grid-template-columns:1fr;display:grid}.calendar-pro-grid{gap:5px}.calendar-pro-day{min-height:88px;padding:.5rem;border-radius:14px}.court-chip{font-size:.62rem;padding:.25rem .4rem}.docket-pro-card,.docket-details-grid{grid-template-columns:1fr}}
