
  *{box-sizing:border-box;margin:0;padding:0}
  body{font-family:'Hanken Grotesk',system-ui,sans-serif;background:#faf8f1;color:#1d1b16;-webkit-font-smoothing:antialiased}
  button,input,select{font-family:inherit}
  @keyframes ap-fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
  @keyframes pipshake{0%,100%{transform:translateX(0)}15%,45%,75%{transform:translateX(-5px)}30%,60%,90%{transform:translateX(5px)}}
  .pipshake{animation:pipshake .55s ease-in-out 2;outline:2px solid #edbf45;outline-offset:3px;border-radius:10px}
  #nudgeGuide{position:fixed;z-index:9998;max-width:250px;background:#3a2e06;color:#fff;font-size:12.5px;font-weight:600;line-height:1.45;border-radius:11px;padding:10px 13px;box-shadow:0 10px 30px rgba(40,36,26,.28)}
  #nudgeGuide b{color:#fbe08a}
  .pipflash{animation:pipflash 1.4s ease-in-out 3;border-radius:8px;padding:2px 7px}
  @keyframes pipflash{0%,100%{box-shadow:0 0 0 0 rgba(237,191,69,0)}50%{box-shadow:0 0 0 6px rgba(237,191,69,.4)}}
  @keyframes pip-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-6%)}}
  .pip{position:relative;width:100%;height:100%;aspect-ratio:1;animation:pip-bob 3.6s ease-in-out infinite}
  .pip-body{position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 34% 28%,#f7d873,#efc24a 62%,#e3b23a);box-shadow:inset 0 -6% 12% rgba(120,90,16,.2),inset 0 4% 9% rgba(255,255,255,.38)}
  .pip-eye{position:absolute;width:13.5%;height:13.5%;border-radius:50%;background:#3a2e10;top:41%}
  .pip-eye-l{left:29%}.pip-eye-r{right:29%}
  .pip-smile{position:absolute;width:18%;height:9%;border:1.9px solid #3a2e10;border-top:0;border-radius:0 0 16px 16px;left:50%;transform:translateX(-50%);top:58%}
  .card{background:#fff;border:1px solid #ece7da;border-radius:18px;box-shadow:0 1px 2px rgba(28,27,25,.04),0 10px 26px rgba(28,27,25,.05);transition:transform .18s ease,box-shadow .18s ease}
  .lift:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(28,27,25,.1)}
  button{transition:transform .12s ease,box-shadow .12s ease}
  button:active{transform:scale(.97)}
  tbody tr{transition:background .15s ease}
  tbody tr:hover{background:#fbfaf5}
  .tophdr{position:sticky;top:0;z-index:60;background:rgba(250,248,241,.88);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);margin:0 -10px 20px;padding:8px 10px;border-radius:0 0 16px 16px}
  .stat .ic{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;margin-bottom:9px}
  .t-gold{background:linear-gradient(135deg,#fdf3d3,#f7e3a8);border-color:#f1e3c7}
  .t-terra{background:#fbece1;border-color:#f1d9c5}
  .t-sage{background:#eef5e7;border-color:#d8e8c9}
  .authwrap{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 16px;background:radial-gradient(120% 60% at 50% -8%,#fdf3d3 0%,#faf8f1 55%)}
  .auth{max-width:400px;width:100%;margin:0;background:#fff;border:1px solid #ece7da;border-radius:20px;padding:34px 30px 30px;box-shadow:0 24px 54px rgba(40,36,26,.12),0 2px 6px rgba(40,36,26,.05)}
  .auth h1{font-size:23px;font-weight:800;margin-bottom:5px;font-family:'Bricolage Grotesque',sans-serif;text-align:center;letter-spacing:-.01em}
  .auth p{font-size:13px;color:#6f6a5f;margin-bottom:14px;text-align:center}
  .auth label{display:block;font-size:12px;font-weight:600;color:#6f6a5f;margin:15px 0 5px}
  .auth input{width:100%;border:1px solid #e4ddcc;border-radius:10px;padding:11px 13px;font-size:14px;transition:border-color .15s ease,box-shadow .15s ease}
  .auth input:focus{border-color:#e3b23a;box-shadow:0 0 0 3px rgba(237,191,69,.18);outline:none}
  .auth .sub{width:100%;margin-top:22px;background:#edbf45;color:#3a2e06;border:1px solid #e8c869;border-radius:11px;padding:13px;font-weight:700;font-size:14.5px;cursor:pointer}
  .auth .err{color:#c0473f;font-size:12.5px;margin-top:10px;min-height:16px}
  .link{border:none;background:none;color:#a8852a;cursor:pointer;font-size:12.5px;padding:0}
  @keyframes pip-dance{0%,100%{transform:translateY(0) rotate(-7deg)}20%{transform:translateY(-17%) rotate(8deg)}40%{transform:translateY(-3%) rotate(-6deg)}60%{transform:translateY(-13%) rotate(7deg)}80%{transform:translateY(0) rotate(-4deg)}}
  .pip-dance{animation:pip-dance .8s ease-in-out infinite!important}
  .overlay{position:fixed;inset:0;z-index:90;background:radial-gradient(130% 80% at 50% 28%,#fdf6e0,#faf8f1);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px;text-align:center;animation:ap-fade .25s ease}
  @keyframes blink2{0%,100%{opacity:.22}50%{opacity:1}}
  .ld span{display:inline-block;width:9px;height:9px;border-radius:50%;background:#edbf45;margin:0 4px;animation:blink2 1s infinite}
  .ld span:nth-child(2){animation-delay:.18s}.ld span:nth-child(3){animation-delay:.36s}
  a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,[role=button]:focus-visible{outline:2px solid #b9923a;outline-offset:2px;border-radius:6px}
  @media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
