*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  background-color:#cdb78f;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.05 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  font-family:'Noto Serif SC',serif;-webkit-font-smoothing:antialiased;color:#221c14;
}
::selection{background:#9c3b2e;color:#f0e6d2;}
input,textarea,button{font-family:inherit;}
button{cursor:pointer;}
.boot{min-height:100vh;display:flex;align-items:center;justify-content:center;font-family:'Special Elite',monospace;letter-spacing:3px;color:#5d4f3a;}

@keyframes stampIn{0%{opacity:0;transform:rotate(-22deg) scale(2.6);}55%{opacity:1;}100%{opacity:.94;transform:rotate(-9deg) scale(1);}}
@keyframes slideUp{from{opacity:0;transform:translateY(12px);}to{opacity:1;transform:translateY(0);}}
@keyframes liftStamp{0%{opacity:.95;transform:rotate(-8deg) scale(1);}100%{opacity:0;transform:rotate(-26deg) scale(1.6) translate(30px,-60px);}}
@keyframes pulseDot{0%,100%{opacity:.35;}50%{opacity:1;}}

.dossier-scroll::-webkit-scrollbar{width:9px;height:9px;}
.dossier-scroll::-webkit-scrollbar-thumb{background:#a8916a;border-radius:5px;border:2px solid transparent;background-clip:padding-box;}
.dossier-scroll::-webkit-scrollbar-track{background:transparent;}

.mono{font-family:'Special Elite',monospace;}
.btn-press{transition:transform .08s,box-shadow .08s;}
.btn-press:active{transform:translateY(3px);box-shadow:none !important;}

.toast{
  position:fixed;left:50%;top:24px;transform:translateX(-50%) translateY(-80px);
  background:#221c14;color:#f0e6d2;padding:12px 22px;font-size:14px;letter-spacing:1px;
  border:1px solid #9c3b2e;box-shadow:0 10px 30px rgba(0,0,0,.4);z-index:200;opacity:0;
  transition:transform .3s cubic-bezier(.2,.8,.2,1),opacity .3s;pointer-events:none;max-width:80vw;
}
.toast.show{transform:translateX(-50%) translateY(0);opacity:1;}
.toast.err{border-color:#9c3b2e;background:#3a201a;}

input:focus,textarea:focus{outline:none;}
.ai-tag{position:absolute;top:24px;right:14px;width:32px;height:32px;border-radius:50%;background:#221c14;color:#f0e6d2;display:flex;align-items:center;justify-content:center;font-family:'Special Elite',monospace;font-size:11px;letter-spacing:1px;box-shadow:0 2px 5px rgba(0,0,0,.3);}
