:root{--ger-primary:#b83fc9;--ger-primary-hover:#a832b8;--ger-accent:#e858f7;--ger-dark:#180728;--ger-dark-soft:#351048;--ger-page-bg:#f7f5f8;--ger-surface:#fff;--ger-text:#322438;--ger-text-soft:#514457;--ger-muted:#827588;--ger-line:#e7dfe9;--ger-danger:#d82f66;--ger-success:#19a777;--ger-warning:#d89522;--ger-info:#31729d;--radius:12px;--shadow:0 8px 28px rgba(24,7,40,.08)}
*{box-sizing:border-box}
html{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ger-text);background:var(--ger-page-bg);line-height:1.45}
body{margin:0;min-width:320px}
a{color:#8c299b}
button,.button{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;border:0;border-radius:8px;background:var(--ger-primary);color:#fff;padding:.68rem .95rem;font:inherit;font-weight:700;text-decoration:none;cursor:pointer;transition:background-color .18s ease,transform .18s ease}
button:hover,.button:hover{background:var(--ger-primary-hover);transform:translateY(-1px)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgba(232,88,247,.42);outline-offset:2px}
input,select{width:100%;border:1px solid #d7cadb;border-radius:8px;padding:.68rem .75rem;background:#fff;color:var(--ger-text);font:inherit}
input:focus,select:focus{border-color:var(--ger-primary)}
label{display:grid;gap:.35rem;font-weight:650;color:var(--ger-text-soft)}
small,.muted{display:block;color:var(--ger-muted);font-weight:400}
.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}
.skip-link{position:fixed;top:-100px;left:1rem;z-index:50;background:#fff;padding:.7rem;border-radius:6px}.skip-link:focus{top:1rem}
.topbar{min-height:64px;display:flex;align-items:center;gap:.8rem;background:var(--ger-dark);border-bottom:1px solid rgba(232,88,247,.2);box-shadow:0 7px 24px rgba(24,7,40,.17);padding:.45rem 1.1rem;position:sticky;top:0;z-index:20}
.brand{flex:0 0 auto;padding:.1rem .3rem}.brand img{display:block;width:88px;height:auto}
.top-navigation{display:flex;align-items:center;gap:1px;min-width:max-content}
.top-navigation__link{display:inline-flex;align-items:center;height:36px;padding:0 .7rem;border-radius:7px;color:#d8cde0;text-decoration:none;white-space:nowrap;font-size:.78rem;font-weight:650;transition:background-color .18s ease,color .18s ease,transform .18s ease}
.top-navigation__link:hover,.top-navigation__link:focus{background:rgba(232,88,247,.1);color:#fff;transform:translateY(-1px)}
.top-navigation__link.is-active{background:linear-gradient(180deg,rgba(232,88,247,.2),rgba(232,88,247,.09));color:#fff;box-shadow:inset 0 -2px 0 var(--ger-accent)}
.quick-search{display:flex;gap:.35rem;max-width:350px;min-width:210px;flex:1;margin-left:auto}.quick-search input{min-width:0;border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.96)}.quick-search button{padding-inline:1rem}
.user-menu{display:flex;align-items:center;gap:.7rem;color:#e8dfea;font-size:.82rem;white-space:nowrap}.user-menu a,.link-button{color:#eadcf0}.user-menu form{display:inline}.link-button{background:none;padding:0}.link-button:hover{background:none;color:#fff;text-decoration:underline;transform:none}
.content{padding:1.25rem;max-width:1600px;width:100%;min-height:calc(100vh - 64px);margin:0 auto}.page-heading{display:flex;align-items:center;justify-content:space-between}.page-heading h1{font-size:1.55rem;margin:.25rem 0 1.1rem;color:var(--ger-dark)}
.panel{background:var(--ger-surface);border:1px solid var(--ger-line);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:1rem;padding:1rem}.panel h2{font-size:1rem;margin:0 0 .9rem}
.summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-bottom:1rem}.summary-grid article{background:linear-gradient(140deg,#fff,#fbf3fc);border:1px solid #edd8f1;border-radius:var(--radius);padding:1rem}.summary-grid strong{display:block;color:var(--ger-primary-hover);font-size:1.75rem}.summary-grid span{color:var(--ger-muted)}
.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.9rem}th{text-align:left;color:#716176;background:#faf7fb;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em}th,td{padding:.72rem;border-bottom:1px solid #eee8f0;vertical-align:top}tbody tr:hover{background:#fdf9fd}
.badge{display:inline-block;background:#f0e8f2;color:#5e4b64;border-radius:999px;padding:.24rem .58rem;font-size:.76rem;font-weight:750}.badge.success{background:#eaf9f4;color:#128461}.badge.danger{background:#fde9ef;color:var(--ger-danger)}
.status-badge{display:inline-flex;align-items:center;min-height:24px;padding:5px 9px;border-radius:20px;color:#fff;font-size:.7rem;font-weight:700;line-height:1.2;box-shadow:0 3px 8px rgba(24,7,40,.08)}
.status-color-cccccc{background-color:#ccc}.status-color-ffa500{background-color:#ffa500}.status-color-008f39{background-color:#008f39}.status-color-ff0000{background-color:#f00}.status-color-00ccff{background-color:#0cf}.status-color-990099{background-color:#909}.status-color-ff2222{background-color:#f22}.status-color-000000{background-color:#000}.status-color-a0522d{background-color:#a0522d}.status-color-827588{background-color:#827588}
.click-call-status{display:inline-flex;align-items:center;gap:7px;color:#8a808f;font-size:.72rem;font-weight:700}.click-call-status-square{width:12px;height:12px;flex:0 0 12px;border-radius:3px;background:#d8d2dc}.click-call-status.is-positive{padding:6px 9px;border-radius:7px;background:#eaf9f4;color:#128461}.click-call-status.is-positive .click-call-status-square{background:#19b887;box-shadow:0 0 0 3px rgba(25,184,135,.12)}
.instance{display:inline-block;color:#8a2498;font-weight:800}.action{font-weight:750}.empty{text-align:center;color:var(--ger-muted);padding:2rem}
.filters{display:flex;align-items:end;gap:.7rem;flex-wrap:wrap;background:#fff;border:1px solid var(--ger-line);border-radius:var(--radius);padding:1rem;margin-bottom:1rem}.filters label{min-width:150px;flex:1}.filters label:first-child{min-width:240px;flex:2}.secondary{background:#f0e8f2;color:#5a3f61}.secondary:hover{background:#e5d7e8;color:#3d2744}
.filters--clickToCall,.filters--leads,.filters--dataEntries{display:grid;align-items:end}.filters--clickToCall{grid-template-columns:repeat(5,minmax(0,1fr))}.filters--leads,.filters--dataEntries{grid-template-columns:repeat(4,minmax(0,1fr))}.filters--clickToCall label,.filters--leads label,.filters--dataEntries label,.filters--clickToCall label:first-child,.filters--leads label:first-child,.filters--dataEntries label:first-child{min-width:0}.filters--clickToCall>button,.filters--clickToCall>.button,.filters--leads>button,.filters--leads>.button,.filters--dataEntries>button,.filters--dataEntries>.button{width:100%;min-height:44px}
.pagination-nav{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.7rem;margin-bottom:1rem}.pagination-nav .prev{justify-self:start}.pagination-nav .next{justify-self:end}.pagination-current{color:var(--ger-muted);font-size:.82rem;font-weight:700}
.alert{border-radius:9px;padding:.8rem 1rem;margin-bottom:1rem}.alert.error{background:#fde9ef;color:var(--ger-danger)}.alert.warning{background:#fff4de;color:#85580c}.alert.success{background:#eaf9f4;color:#128461}
.provenance{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;background:#fbf1fc;border-left:4px solid var(--ger-accent);padding:.8rem 1rem;border-radius:8px;margin-bottom:1rem}.provenance span{color:var(--ger-muted)}.provenance code{color:#6d5274}
.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:0}.field{padding:.7rem;border-bottom:1px solid #eee8f0}.field dt{font-size:.75rem;text-transform:uppercase;color:var(--ger-muted);font-weight:750}.field dd{margin:.28rem 0 0;overflow-wrap:anywhere}.nested{border:1px solid var(--ger-line);border-radius:9px;padding:.8rem;margin:.75rem 0}.nested h2{color:var(--ger-primary-hover)}.nested-item{border-left:3px solid #dfb9e5;padding:.7rem;margin:.65rem 0}.nested-item h3{font-size:.9rem;margin:0 0 .5rem}.nested-list>.nested-item:nth-child(even){background:#fdfafd}
.dashboard-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.status-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.status-columns h3{font-size:.9rem}.status-list{list-style:none;padding:0;margin:0}.status-list li{display:flex;justify-content:space-between;gap:1rem;padding:.4rem 0;border-bottom:1px solid var(--ger-line)}
.dashboard-loading{display:flex;align-items:center;gap:1rem;min-height:110px}.dashboard-loading h2,.dashboard-loading p{margin:.15rem 0}.loading-spinner{width:34px;height:34px;border:4px solid #ecd9ef;border-top-color:var(--ger-accent);border-radius:50%;animation:dashboard-spin .8s linear infinite}@keyframes dashboard-spin{to{transform:rotate(360deg)}}
.search-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.result{display:grid;gap:.42rem;text-decoration:none;border:1px solid var(--ger-line);border-radius:9px;padding:.8rem}.result:hover{border-color:#d695df;background:#fdf7fe}.result-heading{display:flex;align-items:center;justify-content:space-between;gap:.7rem}.result-date{color:var(--ger-muted);font-size:.76rem;font-weight:650}.result-status{display:flex;align-items:center;justify-content:space-between;gap:.7rem;color:var(--ger-muted);font-size:.74rem}.partial{color:#85580c}
.form-panel{max-width:560px}.form-panel form{display:grid;gap:1rem}
.users-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.users-toolbar p{margin:0;color:var(--ger-muted)}.checkbox-row{display:flex;grid-template-columns:none;align-items:center;gap:.55rem}.checkbox-row input{width:auto;accent-color:var(--ger-primary)}.form-actions{display:flex;gap:.65rem;flex-wrap:wrap}.user-password-note{padding:.8rem;border:1px solid #ead9ed;border-radius:8px;background:#fdf8fe;color:var(--ger-text-soft)}
.login-shell{min-height:100vh;display:grid;place-items:center;padding:1.2rem;background:radial-gradient(circle at 80% 10%,rgba(232,88,247,.28),transparent 34%),linear-gradient(145deg,#180728,#351048)}
.login-card{width:min(100%,410px);background:#fff;border:1px solid rgba(232,88,247,.22);border-radius:16px;padding:2rem;box-shadow:0 18px 60px rgba(8,0,14,.38)}.login-card form{display:grid;gap:1rem}.login-card h1{text-align:center;margin:1rem 0 .2rem;color:var(--ger-dark)}.login-card>.muted{text-align:center;margin:0 0 1.2rem}.login-logo{display:block;width:145px;height:auto;margin:auto}
@media(max-width:1180px){.topbar{height:auto;flex-wrap:wrap}.top-navigation{order:4;flex-basis:100%;overflow-x:auto;padding-top:.15rem}.quick-search{max-width:none}.content{min-height:calc(100vh - 108px)}}
@media(max-width:900px){.summary-grid{grid-template-columns:repeat(2,1fr)}.detail-grid{grid-template-columns:repeat(2,1fr)}.dashboard-details{grid-template-columns:1fr}.user-menu span{display:none}.filters--clickToCall,.filters--leads,.filters--dataEntries{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.topbar{padding:.55rem .65rem}.brand img{width:72px}.quick-search{order:4;flex-basis:100%;min-width:0}.top-navigation{order:3}.top-navigation__link{height:34px;padding:0 .6rem;font-size:.74rem}.content{padding:.8rem;min-height:calc(100vh - 150px)}.summary-grid{grid-template-columns:1fr 1fr;gap:.6rem}.summary-grid article{padding:.75rem}.detail-grid,.search-results,.status-columns{grid-template-columns:1fr}.user-menu{margin-left:auto;gap:.55rem}.filters{align-items:stretch}.filters label{min-width:100%}.filters--clickToCall,.filters--leads,.filters--dataEntries{grid-template-columns:1fr}.users-toolbar{align-items:stretch;flex-direction:column}.users-toolbar .button{align-self:flex-start}.pagination-nav{grid-template-columns:1fr 1fr}.pagination-current{grid-column:1/-1;grid-row:1;text-align:center}.pagination-nav .prev,.pagination-nav .next{grid-row:2}.records-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.records-table,.records-table tbody,.records-table tr,.records-table td,.records-table th[scope=row]{display:block;width:100%}.records-table tr{border-bottom:2px solid var(--ger-line);padding:.45rem 0}.records-table td,.records-table th[scope=row]{display:grid;grid-template-columns:minmax(7rem,35%) minmax(0,1fr);gap:.6rem;border:0;padding:.4rem;text-align:left}.records-table td:before,.records-table th[scope=row]:before{content:attr(data-label);font-weight:750;color:var(--ger-muted)}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.loading-spinner{animation:none}button,.button,.top-navigation__link{transition:none}}
