@keyframes app-loading-fade{0%{opacity:1}100%{opacity:0;visibility:hidden;pointer-events:none}}
@keyframes logo-breathe{0%,100%{transform:scale(.96) rotate(-2deg);filter:drop-shadow(0 0 0 rgba(201,220,157,0)) brightness(0) invert(1)}50%{transform:scale(1.04) rotate(2deg);filter:drop-shadow(0 0 14px rgba(201,220,157,.35)) brightness(0) invert(1)}}
@keyframes logo-orbit{to{transform:rotate(360deg)}}
@keyframes loading-dot{0%,80%,100%{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-4px)}}
@keyframes content-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@keyframes content-fade{from{opacity:0}to{opacity:1}}
@keyframes chart-grow{from{transform:scaleY(0)}to{transform:scaleY(1)}}

.app-loading{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;background:linear-gradient(145deg,#102d25,#1d4b3d);transition:opacity .35s ease,visibility .35s ease}.app-loading.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.app-loading-card{text-align:center;color:#edf2e9;min-width:190px}.app-loading-logo{position:relative;width:122px;height:84px;margin:0 auto 12px;display:grid;place-items:center}.app-loading-logo span{position:absolute;inset:7px 9px;border:1px solid #c9dc9d66;border-radius:50%;border-top-color:#c9dc9d;animation:logo-orbit 2.3s linear infinite}.app-loading-logo img{width:108px;max-height:76px;object-fit:contain;filter:brightness(0) invert(1);mix-blend-mode:normal;animation:logo-breathe 2.4s ease-in-out infinite}.app-loading-title{margin:0;font:18px Georgia,serif;color:#c9dc9d}.app-loading-text{margin:7px 0 0;color:#b9cbbd;font-size:10px;letter-spacing:.08em;text-transform:uppercase}.app-loading-dots{display:flex;justify-content:center;gap:4px;margin-top:12px}.app-loading-dots i{width:5px;height:5px;border-radius:50%;background:#c9dc9d;animation:loading-dot 1.2s ease-in-out infinite}.app-loading-dots i:nth-child(2){animation-delay:.15s}.app-loading-dots i:nth-child(3){animation-delay:.3s}
.app-site .page-wrap{animation:content-fade .35s ease both}.app-site .page-wrap>.page-heading,.app-site .page-wrap>.hero-card,.app-site .page-wrap>.kpi-grid,.app-site .page-wrap>.dashboard-grid,.app-site .page-wrap>.lower-grid,.app-site .page-wrap>.capture-layout,.app-site .page-wrap>.editor-layout,.app-site .page-wrap>.history-panel{animation:content-rise .55s cubic-bezier(.2,.7,.2,1) both}.app-site .page-wrap>.hero-card{animation-delay:.06s}.app-site .page-wrap>.kpi-grid{animation-delay:.12s}.app-site .page-wrap>.dashboard-grid{animation-delay:.18s}.app-site .page-wrap>.lower-grid{animation-delay:.24s}.app-site .page-wrap>.capture-layout,.app-site .page-wrap>.editor-layout,.app-site .page-wrap>.history-panel{animation-delay:.08s}.app-site .metric-card{animation:content-rise .55s cubic-bezier(.2,.7,.2,1) both}.app-site .metric-card:nth-child(2){animation-delay:.06s}.app-site .metric-card:nth-child(3){animation-delay:.12s}.app-site .metric-card:nth-child(4){animation-delay:.18s}.app-site .bar{transform-origin:bottom;animation:chart-grow .75s cubic-bezier(.2,.8,.2,1) both}.app-site .app-alert{animation:content-rise .4s ease both}
.public-site main>section,.public-site .public-footer{animation:content-fade .7s ease both}.public-site .public-hero-copy{animation:content-rise .8s cubic-bezier(.2,.7,.2,1) .12s both}.public-site .hero-stamp{animation:content-rise .8s ease .35s both}.public-site .feature-image img,.public-site .operation-photo img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}.public-site .feature-image:hover img,.public-site .operation-photo:hover img{transform:scale(1.035)}.login-card{animation:content-rise .65s cubic-bezier(.2,.7,.2,1) .08s both}
.primary-button,.hero-button,.public-cta,.quick-action,.main-nav a,.login-link{transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}.primary-button:hover,.hero-button:hover,.public-cta:hover,.login-link:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(23,56,47,.16)}.quick-action:hover{transform:translateX(4px)}.is-submitting{opacity:.75}.is-submitting .primary-button{position:relative;pointer-events:none}.is-submitting .primary-button:after{content:"";display:inline-block;width:11px;height:11px;margin-left:8px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;vertical-align:-1px;animation:logo-orbit .7s linear infinite}.app-site.is-navigating .app-loading,.public-site.is-navigating .app-loading,.login-page.is-navigating .app-loading{opacity:1;visibility:visible;pointer-events:auto}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.app-loading{transition:none}.app-loading.is-hidden{display:none}.public-site .feature-image:hover img,.public-site .operation-photo:hover img{transform:none}}
