*,*: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{--color-bg: #0f1012;--color-card: #1b1d21;--color-card-raised: #22252a;--color-accent: #ff6b1a;--color-danger: #ff3b30;--color-success: #35d07f;--color-text: #ffffff;--color-text-secondary: #a7a7a7;--radius-lg: 20px;--radius-md: 12px;--shadow-card: 0 12px 32px rgba(0, 0, 0, .45);--shadow-card-soft: 0 6px 18px rgba(0, 0, 0, .35);--ease-out: cubic-bezier(.22, 1, .36, 1);font-family:system-ui,-apple-system,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;color-scheme:dark;color:var(--color-text)}body{min-height:100dvh;background-color:var(--color-bg);color:var(--color-text)}.page{max-width:560px;margin-inline:auto;padding:2.5rem 1.25rem 4rem}.court__header{text-align:center;margin-bottom:2rem}.wordmark{font-size:clamp(2.1rem,9vw,3rem);font-weight:800;letter-spacing:.02em;margin:0;color:var(--color-text)}.wordmark__accent{color:var(--color-accent)}.court__tagline{font-size:1.15rem;font-weight:600;color:var(--color-text);margin-top:.6rem}.court__description{font-size:.98rem;color:var(--color-text-secondary);margin-top:.35rem}.card{background:var(--color-card);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-card-soft);color:var(--color-text)}.form-card{display:flex;flex-direction:column;gap:1.35rem}.field{display:flex;flex-direction:column;gap:.5rem}.field__label{font-weight:600;font-size:.95rem;color:var(--color-text)}.field__input{border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);padding:.85rem 1rem;font-size:1.05rem;background:var(--color-card-raised);color:var(--color-text);transition:box-shadow .15s var(--ease-out),border-color .15s var(--ease-out)}.field__input::placeholder{color:var(--color-text-secondary)}.field__input:focus-visible{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 35%,transparent)}.field__input--textarea{resize:vertical;font-family:inherit}.checkbox-field{display:flex;align-items:center;gap:.65rem;font-size:.95rem;color:var(--color-text-secondary)}.checkbox-field input{width:1.15rem;height:1.15rem;accent-color:var(--color-accent)}.btn{border:none;border-radius:var(--radius-md);padding:1rem 1.5rem;font-size:1.05rem;font-weight:700;cursor:pointer;transition:transform .15s var(--ease-out),box-shadow .15s var(--ease-out),opacity .15s var(--ease-out)}.btn:active:not(:disabled){transform:scale(.98)}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn:disabled{cursor:not-allowed;opacity:.4}.btn--primary{background:var(--color-accent);color:#1a0d04;width:100%;box-shadow:0 8px 20px color-mix(in srgb,var(--color-accent) 45%,transparent)}.btn--secondary{background:var(--color-card-raised);color:var(--color-text);border:1px solid rgba(255,255,255,.12)}.btn--ghost{background:transparent;color:var(--color-text-secondary);border:1px solid rgba(255,255,255,.1)}.roast-panel{display:flex;flex-direction:column;gap:1rem}.roast-toggle{display:flex;align-items:center}.roast-toggle__input{position:absolute;width:1px;height:1px;opacity:0}.roast-toggle__label{display:flex;align-items:center;gap:.75rem;font-weight:700;font-size:1rem;cursor:pointer}.roast-toggle__switch{position:relative;flex:none;width:3.1rem;height:1.75rem;border-radius:999px;background:var(--color-card-raised);border:1px solid rgba(255,255,255,.12);transition:background-color .2s var(--ease-out)}.roast-toggle__switch:before{content:"";position:absolute;top:2px;left:2px;width:1.35rem;height:1.35rem;border-radius:50%;background:var(--color-text-secondary);transition:transform .2s var(--ease-out),background-color .2s var(--ease-out)}.roast-toggle__input:checked+.roast-toggle__label .roast-toggle__switch{background:color-mix(in srgb,var(--color-danger) 35%,var(--color-card-raised))}.roast-toggle__input:checked+.roast-toggle__label .roast-toggle__switch:before{background:var(--color-danger);transform:translate(1.35rem)}.roast-toggle__input:focus-visible+.roast-toggle__label .roast-toggle__switch{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-accent) 35%,transparent)}.roast-levels{border:none;padding:0;margin:0}.roast-levels__legend{font-size:.85rem;font-weight:600;color:var(--color-text-secondary);padding:0;margin-bottom:.6rem}.roast-levels__options{display:flex;gap:.5rem;flex-wrap:wrap}.roast-level{display:flex;align-items:center;gap:.4rem;padding:.5rem .9rem;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:var(--color-card-raised);color:var(--color-text-secondary);font-size:.9rem;font-weight:600;cursor:pointer;transition:border-color .15s var(--ease-out),color .15s var(--ease-out)}.roast-level input{position:absolute;width:1px;height:1px;opacity:0}.roast-level--active{border-color:var(--color-danger);color:var(--color-text);background:color-mix(in srgb,var(--color-danger) 18%,var(--color-card-raised))}.loading-card{margin-top:2rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2.5rem 1.5rem}.loading-card__gavel{font-size:2.5rem;animation:gavel-tap .9s var(--ease-out) infinite}@keyframes gavel-tap{0%,to{transform:rotate(0)}50%{transform:rotate(-18deg)}}.loading-card__message{font-size:1.05rem;font-weight:600;color:var(--color-text-secondary)}.verdict-card{margin-top:2rem;text-align:center;animation:verdict-in .42s var(--ease-out);border:1px solid rgba(255,255,255,.06)}@keyframes verdict-in{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.verdict-card__eyebrow{font-weight:800;text-transform:uppercase;letter-spacing:.14em;font-size:.8rem;color:var(--color-text-secondary);margin:0}.verdict-card__item{font-size:1.1rem;font-weight:700;margin:.6rem 0 1rem;color:var(--color-text)}.verdict-card__headline{font-size:clamp(1.5rem,6vw,2rem);font-weight:800;letter-spacing:-.01em;margin:0 0 1.1rem}.verdict-card--not-guilty .verdict-card__headline{color:var(--color-success)}.verdict-card--suspicious .verdict-card__headline{color:var(--color-accent)}.verdict-card--guilty .verdict-card__headline{color:var(--color-danger)}.verdict-card__roast{font-size:1.05rem;font-style:italic;line-height:1.6;color:var(--color-text);margin-bottom:1rem}.verdict-card__explanation{font-size:.95rem;line-height:1.6;color:var(--color-text-secondary);margin:0}.verdict-actions{display:flex;gap:.75rem;margin-top:1.25rem}.verdict-actions .btn{flex:1;width:auto}.share-card{margin-top:1.75rem;padding:1.75rem;border-radius:var(--radius-lg);background:linear-gradient(155deg,var(--color-card) 0%,#14151a 100%);border:1px solid rgba(255,255,255,.08);text-align:center;box-shadow:var(--shadow-card)}.share-card__brand{font-weight:800;letter-spacing:.08em;font-size:1.1rem;margin:0}.share-card__label{font-size:.75rem;font-weight:700;letter-spacing:.14em;color:var(--color-text-secondary);margin:.35rem 0 1.25rem}.share-card__item{font-size:1.2rem;font-weight:700;margin:0;text-transform:capitalize}.share-card__cost{font-size:1.6rem;font-weight:800;color:var(--color-accent);margin:.2rem 0 1rem}.share-card__verdict{display:inline-block;font-weight:800;font-size:.95rem;padding:.5rem 1rem;border-radius:999px;margin:0 0 1rem}.share-card__verdict--not-guilty{background:color-mix(in srgb,var(--color-success) 18%,transparent);color:var(--color-success)}.share-card__verdict--suspicious{background:color-mix(in srgb,var(--color-accent) 18%,transparent);color:var(--color-accent)}.share-card__verdict--guilty{background:color-mix(in srgb,var(--color-danger) 18%,transparent);color:var(--color-danger)}.share-card__roast{font-size:.95rem;font-style:italic;color:var(--color-text-secondary);margin:0 0 1.25rem}.share-card__footer{font-size:.8rem;color:var(--color-text-secondary);margin:0}.share-button{margin-top:1rem}.criminal-record{margin-top:2.5rem}.criminal-record__title{font-size:.9rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-secondary);margin:0 0 1rem}.criminal-record__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.criminal-record__entry{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.06)}.criminal-record__entry:last-child{border-bottom:none;padding-bottom:0}.criminal-record__entry-item{font-size:.95rem;text-transform:capitalize}.criminal-record__badge{font-size:.75rem;font-weight:800;letter-spacing:.04em;padding:.3rem .7rem;border-radius:999px;flex:none}.criminal-record__badge--not-guilty{background:color-mix(in srgb,var(--color-success) 18%,transparent);color:var(--color-success)}.criminal-record__badge--suspicious{background:color-mix(in srgb,var(--color-accent) 18%,transparent);color:var(--color-accent)}.criminal-record__badge--guilty{background:color-mix(in srgb,var(--color-danger) 18%,transparent);color:var(--color-danger)}.bottom-cta{margin-top:2.75rem;text-align:center;padding-top:2rem;border-top:1px solid rgba(255,255,255,.06)}.bottom-cta__prompt{font-size:1rem;font-weight:600;color:var(--color-text-secondary);margin:0 0 1rem}.bottom-cta .btn{max-width:320px;margin-inline:auto}
