:root{color-scheme:dark;--bg:#080d18;--paper:#121c2b;--paper2:#162337;--edge:#29374a;--cream:#f5f2e9;--muted:#9aa8bb;--gold:#dfc083;--mint:#5cd7bf;--red:#f29592;font:15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-weight:400}
*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;color:var(--cream);background:radial-gradient(ellipse at 90% -12%,#263543 0%,transparent 38%),linear-gradient(180deg,#0a101c,#080d18 60%);min-height:100dvh}
button,input{font:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:3px}a{color:var(--mint)}.hidden{display:none!important}
.header{padding:24px 20px 14px;display:flex;justify-content:space-between;align-items:center;gap:12px;max-width:980px;margin:auto}
.brand{display:flex;align-items:center;gap:12px}.brandmark{width:46px;height:46px;border:1px solid rgba(223,192,131,.6);border-radius:14px;background:linear-gradient(145deg,#1d3040,#080d18);color:var(--gold);display:grid;place-items:center;font-family:Georgia,serif;font-size:30px;position:relative;box-shadow:0 8px 20px #0005}.brandmark span{position:absolute;font:15px/1 Arial;right:5px;top:5px;color:var(--mint)}.brand strong{display:block;font-size:19px;letter-spacing:.2px}.brand small{display:block;color:var(--muted);font-size:11px;letter-spacing:.2px}.security{font:600 10px/1.3 monospace;letter-spacing:1px;color:var(--mint);border:1px solid #29443e;background:#102520;border-radius:15px;padding:7px 10px;white-space:nowrap}
.content{max-width:980px;margin:auto;padding:0 20px 132px}.eyebrow{font:600 10px/1.5 -apple-system,sans-serif;letter-spacing:2.4px;color:var(--gold);text-transform:uppercase}.eyebrow span{color:var(--mint)}.hero{margin:20px 0 24px}.hero h1{font-size:clamp(36px,6vw,64px);line-height:1.08;letter-spacing:-1.6px;margin:13px 0 12px;font-weight:650}.hero em{color:var(--gold);font-style:normal;font-family:Georgia,serif;font-weight:400;letter-spacing:-1.3px}.hero p{margin:0;color:var(--muted);max-width:440px;font-size:14px}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:10px 0 31px}
.stat{padding:17px 12px;background:linear-gradient(135deg,#1b2939,#111927);border:1px solid #314055;border-radius:16px;min-height:114px}.stat small{font-size:9px;letter-spacing:1.4px;color:var(--gold);font-weight:700;display:block}.stat strong{font-size:32px;font-weight:600;line-height:1.5;display:block;letter-spacing:-1px}.stat span{font-size:11px;color:var(--muted)}.sectionline{display:flex;justify-content:space-between;align-items:flex-end;margin:0 0 17px;gap:12px}.sectionline h2{font-size:24px;line-height:1.15;margin:4px 0 0;letter-spacing:-.5px}.small-add,.primary{background:var(--gold);border:1px solid #f7da9e;color:#171c25;font-weight:750;border-radius:12px;padding:11px 15px}.small-add{font-size:12px;white-space:nowrap}
.search{height:48px;background:#131d2d;border:1px solid var(--edge);border-radius:12px;display:flex;align-items:center;gap:10px;padding:0 15px;margin:0 0 14px;color:var(--gold)}.search span{font-size:25px}.search input{border:0;outline:0;background:transparent;min-width:0;width:100%;color:var(--cream);font-size:14px}.search input::placeholder{color:#8190a6}
.case-list{display:grid;gap:11px}.case-card,.panel,.empty{background:linear-gradient(145deg,#152133,#111a29);border:1px solid var(--edge);border-radius:17px;padding:16px;box-shadow:0 8px 26px #0002}.case-card{display:block;color:inherit;text-align:left;width:100%;transition:background .2s}.case-card:active{background:#24344a}.card-header{display:flex;justify-content:space-between;gap:8px;align-items:center}.card-number{font-size:16px;letter-spacing:.1px;font-weight:680}.pill{padding:4px 8px;border-radius:14px;border:1px solid #315448;background:#162f2a;color:#81dec2;font-size:10px;white-space:nowrap}.pill.error{background:#3b2529;border-color:#694046;color:#ffaaa9}.pill.pending{background:#353022;border-color:#5c4c32;color:#ecc78f}.case-court{color:var(--muted);font-size:13px;margin-top:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-footer{display:flex;justify-content:space-between;gap:10px;padding-top:13px;margin-top:12px;border-top:1px solid #273447;font-size:12px;color:var(--muted)}.card-footer strong{color:var(--gold);font-weight:600}.empty{text-align:center;padding:32px 20px}.empty .symbol{font-size:34px;color:var(--gold);margin-bottom:10px}.empty h3{font-size:18px;margin:0 0 5px}.empty p{color:var(--muted);font-size:13px;margin:0 0 20px}.outline{color:var(--gold);background:transparent;border:1px solid #5b5446;border-radius:13px;padding:13px 16px;font-weight:650;width:100%;margin-top:15px}.outline:disabled,.primary:disabled{opacity:.45}.muted{color:var(--muted);font-size:13px}.panel{margin-bottom:12px}.panel strong{font-size:15px}.panel p{color:var(--muted);font-size:13px;margin:7px 0 0}.danger{color:var(--red);border-color:#745053}.nav{position:fixed;bottom:0;left:0;right:0;background:rgba(10,16,27,.96);backdrop-filter:blur(12px);border-top:1px solid #253548;padding:10px 10px max(13px,env(safe-area-inset-bottom));display:flex;justify-content:space-around;z-index:10}.nav button{min-width:90px;background:none;border:0;color:#8798af;font-size:11px;font-weight:600;padding:4px 12px;display:grid;gap:1px;place-items:center}.nav button span{font-size:22px}.nav button.active{color:var(--gold)}
.overlay{position:fixed;inset:0;background:#000b;z-index:30;display:flex;align-items:flex-end;justify-content:center}.sheet{width:100%;max-width:700px;max-height:90dvh;overflow:auto;background:#142031;border:1px solid #3d5065;border-radius:24px 24px 0 0;padding:25px 22px max(28px,env(safe-area-inset-bottom));box-shadow:0 -12px 55px #0008;position:relative}.sheet h2{margin:6px 36px 18px 0;font-size:24px;line-height:1.2}.close{position:absolute;right:17px;top:16px;color:#aab7c8;background:#2d394b;border:0;width:34px;height:34px;border-radius:50%;font-size:24px;line-height:20px}.field{display:block;color:var(--muted);font-size:12px;letter-spacing:.3px;margin:14px 0}.field input{display:block;width:100%;margin-top:8px;background:#091522;color:var(--cream);padding:14px;border-radius:12px;border:1px solid var(--edge);outline:none;font-size:14px}.sheet .primary{width:100%;margin-top:10px;padding:15px}.sheet .note{font-size:12px;color:#a2b2c5;margin-top:14px}.detail-grid{display:grid;gap:10px;margin:18px 0}.detail-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:2px 12px;border-bottom:1px solid #2c3b50;padding-bottom:10px}.detail-row span{color:var(--muted);font-size:12px}.detail-row strong{font-size:13px;max-width:74%;text-align:right;overflow-wrap:anywhere}.action-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.action-row button{font-size:12px}.event-item{background:#142133;border:1px solid #32455b;border-radius:14px;padding:15px;margin-bottom:10px}.event-date{color:var(--gold);font-weight:700;font-size:15px}.event-item h3{font-size:14px;margin:6px 0 4px}.event-item p{color:var(--muted);font-size:12px;margin:0}.event-item a{font-size:12px}.auth-gate{position:fixed;inset:0;z-index:100;background:#080d18;display:grid;place-items:center;padding:20px}.gate-card{text-align:center;max-width:360px}.gate-card .brandmark{margin:0 auto 20px}.gate-card p{color:var(--muted)}.gate-card a{display:block;border-radius:12px;background:var(--gold);color:#151c27;text-decoration:none;padding:13px;margin-top:20px;font-weight:700}#alert{font-size:13px;color:var(--red);padding-top:12px;min-height:15px}
@media(min-width:680px){.stats{gap:17px}.stat{padding:22px}.case-list{grid-template-columns:repeat(2,minmax(0,1fr))}.case-list .empty{grid-column:1/-1}.header{padding-top:32px}.hero{margin-top:32px}.sheet{border-radius:24px;margin-bottom:30px;padding-bottom:25px}.overlay{align-items:center}}
/* Public landing: shares design tokens with the protected Mini App, without JS. */
.landing{overflow:hidden}.landing .header{padding-top:30px}.brand-link{text-decoration:none;color:inherit}
.landing .content{padding-bottom:0}.landing-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;background:var(--gold);color:#111927!important;text-decoration:none;border:1px solid var(--gold);font-weight:750;border-radius:12px;padding:11px 18px;white-space:nowrap}
.landing-button.ghost{color:var(--gold)!important;background:transparent;border-color:#685b43}
.landing-hero{padding:80px 0 90px;max-width:900px}
.landing-hero h1{font-size:clamp(39px,8vw,78px);font-weight:660;line-height:1.07;letter-spacing:-2px;margin:16px 0 24px}
.landing-hero h1 em,.landing-bottom em{color:var(--gold);font-family:Georgia,serif;font-weight:400;font-style:normal}
.landing-hero p{font-size:clamp(15px,2vw,19px);line-height:1.7;max-width:670px;color:var(--muted)}
.landing-actions{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0}
.landing-hero .fineprint{font-size:12px;max-width:680px}
.landing-features{border-top:1px solid var(--edge);padding:60px 0 84px}
.landing-features h2{font-size:clamp(28px,5vw,46px);letter-spacing:-1.5px;margin:8px 0 30px}
.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.feature-grid .panel{padding:25px 22px;min-height:200px}.feature-grid h3{font-size:19px;margin:15px 0 7px}.feature-grid p{font-size:14px;line-height:1.65}
.feature-mark{font:700 14px/1.3 Georgia,serif;color:var(--gold)}
.landing-bottom{padding:70px 0 100px;border-top:1px solid var(--edge)}
.landing-bottom h2{font-size:clamp(32px,6vw,58px);line-height:1.16;letter-spacing:-1px;margin:13px 0 32px}
.landing-footer{max-width:980px;margin:auto;padding:18px 20px 40px;border-top:1px solid var(--edge);display:flex;justify-content:space-between;gap:24px;font-size:11px;color:var(--muted)}
@media(max-width:600px){.landing-hero{padding:58px 0 65px}.landing-features{padding:50px 0}.feature-grid{grid-template-columns:1fr}.landing-footer{display:block}.landing-footer span{display:block;margin:0 0 9px}.landing .header .brand small{display:none}}

.card-quality{font-size:11px;color:var(--gold);margin-top:9px;line-height:1.45}
.pill.partial{background:#352e25;border-color:#75603e;color:#edc887}

/* Operational overview: touch targets, freshness and compact navigation. */
body.modal-open{overflow:hidden}
.hero h1{font-size:clamp(30px,5vw,46px);letter-spacing:-1px}
.hero{margin:22px 0}.hero p{max-width:600px}
.stat{min-height:108px}.stat span{display:block;font-size:10px;line-height:1.4}
.toolbar{display:flex;gap:8px;align-items:center}
.refresh{color:var(--gold);border:1px solid var(--edge);background:var(--paper);border-radius:12px;min-width:44px;min-height:44px;font-size:23px}
.filters{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}
.filters button{min-height:44px;border:1px solid var(--edge);border-radius:22px;background:var(--paper);color:var(--muted);padding:9px 13px;font-size:12px}
.filters button[aria-pressed="true"]{border-color:var(--gold);background:#302b24;color:var(--gold)}
.card-freshness{font-size:11px;color:var(--muted);margin-top:11px;line-height:1.5}
.pill.paused{background:#29303d;border-color:#4d5a71;color:#c0c9d6}
.card-header{align-items:flex-start;flex-wrap:wrap}.card-number{overflow-wrap:anywhere}
.card-footer{flex-wrap:wrap}.card-footer span,.card-footer strong{overflow-wrap:anywhere;min-width:0}
.small-add,.close,.nav button{min-height:44px}.close{min-width:44px}
.case-card:focus-visible,.delivery-item:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.delivery-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;width:100%;text-align:left;color:var(--cream);border:0;border-top:1px solid var(--edge);background:transparent;padding:15px 0}
.delivery-item strong{font-size:13px;overflow-wrap:anywhere}.delivery-item small{grid-column:1/-1;font-size:11px}
.panel h3{margin:0;font-size:15px}.panel #notification-list{margin-top:12px}
#dialog-status{color:var(--red);font-size:13px;overflow-wrap:anywhere}
[aria-busy="true"]{opacity:.6;pointer-events:none}
@media(max-width:400px){.content{padding-left:14px;padding-right:14px}.header{padding-left:14px;padding-right:14px}.stat{padding:14px 9px}.stat small{font-size:8px;letter-spacing:.8px}.stat strong{font-size:28px}.filters button{padding:9px 11px}.security span{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}


/* UX v2.1 - motion conveys hierarchy; it is never required to understand an action. */
:root{--motion-fast:160ms;--motion-enter:280ms}
.case-card{transition:transform var(--motion-fast) ease,border-color var(--motion-fast) ease,box-shadow var(--motion-fast) ease,background var(--motion-fast) ease;animation:deloradar-enter var(--motion-enter) ease both}
.case-card:nth-child(2n){animation-delay:35ms}
.case-card:nth-child(3n){animation-delay:70ms}
.pill{font-weight:700;letter-spacing:.03em;display:inline-flex;align-items:center;gap:5px}
.pill::before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:currentColor;flex:none}
.filters button,.nav button,.refresh,.small-add,.primary,.outline{transition:background-color var(--motion-fast) ease,color var(--motion-fast) ease,border-color var(--motion-fast) ease,transform var(--motion-fast) ease}
.nav button.active{background:linear-gradient(180deg,rgba(223,192,131,.10),transparent);border-radius:12px}
.nav button.active span{transform:translateY(-1px)}
.overlay:not(.hidden) .sheet{animation:deloradar-sheet 240ms cubic-bezier(.19,.85,.32,1) both}
.sheet .detail-row{align-items:flex-start}
.sheet .detail-row strong{line-height:1.45}
@media(hover:hover) and (pointer:fine){
  .case-card:hover{transform:translateY(-2px);border-color:#697a88;box-shadow:0 14px 34px #0005}
  .filters button:hover,.outline:hover{border-color:var(--gold)}
  .primary:hover,.small-add:hover{background:#f1d49b}
}
@keyframes deloradar-enter{from{opacity:.25;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@keyframes deloradar-sheet{from{opacity:.45;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){
  .case-card,.overlay:not(.hidden) .sheet{animation:none!important}
  .case-card,.filters button,.nav button,.refresh,.small-add,.primary,.outline{transition:none!important}
  .nav button.active span{transform:none}
}


/* Published participants: visible role hierarchy without leaking into public landing. */
.people-section{margin:18px 0;border-top:1px solid var(--edge);padding-top:16px}
.people-section h3{margin:0 0 12px;font-size:16px;color:var(--cream)}
.participant-item{padding:12px 14px;margin-bottom:8px;display:flex;flex-direction:column;gap:3px;background:rgba(25,40,56,.78);border:1px solid var(--edge);border-radius:12px;overflow-wrap:anywhere}
.participant-role{font-size:11px;font-weight:700;letter-spacing:.02em;color:var(--gold)}
.participant-item strong{font-size:14px;font-weight:600}
.participant-item small{font-size:11px;line-height:1.45}
