.apk-modal { position: fixed; inset: 0; width: 100%; max-width: none; height: 100%; max-height: none; margin: 0; padding: 24px; border: 0; background: transparent; color: #342f2b; overflow: auto; }
.apk-modal[open] { display: grid; place-items: center; }
.apk-modal::backdrop { background: rgb(37 36 30 / 48%); backdrop-filter: blur(9px); animation: apk-fade-in 240ms ease both; }
.apk-modal-panel { position: relative; box-sizing: border-box; width: min(480px, 100%); margin: auto; padding: 32px; border: 1px solid #fff; border-radius: 30px; background: radial-gradient(ellipse at top right, #fff0db, transparent 65%), #fffdf8; box-shadow: 0 28px 100px #28231c30; animation: apk-panel-in 300ms cubic-bezier(.2,.8,.2,1) both; }
.apk-modal-close { position: absolute; top: 16px; right: 16px; display: grid; place-items: center; width: 36px; height: 36px; padding: 0; border: 1px solid #e7e0d6; border-radius: 50%; background: #ffffffb3; color: #756d62; font: 25px/1 sans-serif; cursor: pointer; }
.apk-modal-icon { display: block; border-radius: 16px; box-shadow: 0 8px 24px #df9f6a1c; margin-bottom: 20px; }
.apk-modal-eyebrow { color: #b26f49; font-size: 12px; letter-spacing: 1px; }
.apk-modal-panel h2 { margin: 10px 0; font-size: clamp(21px, 5vw, 26px); line-height: 1.4; font-weight: 600; letter-spacing: -.5px; }
.apk-modal-panel p { line-height: 1.7; }
#apk-modal-description { margin: 0; color: #7f776d; font-size: 14px; }
.apk-modal-status { margin: 20px 0 12px; color: #958b7e; font-size: 12px; }
.apk-modal-options { display: grid; gap: 12px; }
.apk-modal-options[hidden] { display: none; }
.apk-modal-option { display: grid; gap: 9px; padding: 18px 20px; border: 1px solid #e4ded3; border-radius: 18px; background: #ffffffb3; color: #494137; text-decoration: none; transition: transform 180ms ease, box-shadow 180ms ease; }
.apk-modal-option:hover { transform: translateY(-2px); box-shadow: 0 10px 24px #57442a15; }
.apk-modal-option--primary { border-color: #eccbb2; background: linear-gradient(120deg, #fff5e8, #fffaf3); color: #654d3d; }
.apk-modal-option-top, .apk-modal-option-bottom { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.apk-modal-option-top strong { font-size: 17px; font-weight: 600; }
.apk-modal-badge { padding: 3px 8px; border-radius: 20px; background: #f9e5cf; color: #9b633f; font-size: 10px; }
.apk-modal-arch { font-size: 11px; opacity: .6; }
.apk-modal-option-description { font-size: 12px; line-height: 1.7; opacity: .78; }
.apk-modal-option-bottom { margin-top: 7px; font-size: 11px; }
.apk-modal-option-bottom > span { opacity: .6; }
.apk-modal-option-bottom b { padding: 7px 12px; border-radius: 20px; background: #f6efe6; color: #9b633f; font-size: 12px; font-weight: 500; }
.apk-modal-option--primary .apk-modal-option-bottom b { background: #f7e2cc; }
.apk-modal-option[aria-disabled="true"] { opacity: .6; cursor: wait; transform: none; box-shadow: none; }
.apk-download-action { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-width: 108px; min-height: 32px; box-sizing: border-box; }
.apk-download-ring { flex: 0 0 18px; width: 18px; height: 18px; fill: none; stroke-width: 2; transform: rotate(-90deg); }
.apk-download-ring[hidden] { display: none; }
.apk-download-ring-track { stroke: currentColor; opacity: .18; }
.apk-download-ring-value { stroke: currentColor; stroke-linecap: round; stroke-dasharray: 100; stroke-dashoffset: calc(100 - var(--download-progress, 0)); transition: stroke-dashoffset 180ms ease; }
.apk-download-ring[data-state="pending"] { animation: apk-ring-spin 900ms linear infinite; }
.apk-download-ring[data-state="pending"] .apk-download-ring-value { stroke-dasharray: 28 72; stroke-dashoffset: 0; }
.apk-modal-option:has(.apk-download-ring:not([hidden])) { opacity: 1; }
.apk-modal-wechat { margin: 18px 0 0; color: #a86645; font-size: 12px; }
@keyframes apk-ring-spin { to { transform: rotate(270deg); } }
.apk-modal-harmony { display: inline-block; margin-top: 12px; color: #a87655; font-size: 11px; text-decoration: underline; text-underline-offset: 4px; }
.apk-modal a:focus-visible, .apk-modal button:focus-visible { outline: 3px solid #e5ad76; outline-offset: 4px; }
.apk-modal.is-closing::backdrop { animation: apk-fade-out 180ms ease both; }
.apk-modal.is-closing .apk-modal-panel { animation: apk-panel-out 180ms ease both; }
@keyframes apk-fade-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes apk-panel-in { from { opacity: 0; transform: translateY(20px) scale(.96); } to { opacity: 1; transform: none; } }
@keyframes apk-fade-out { to { opacity: 0; } }
@keyframes apk-panel-out { to { opacity: 0; transform: translateY(10px) scale(.98); } }
@media (max-width: 540px) { .apk-modal { padding: 16px; }.apk-modal-panel { padding: 26px 22px; border-radius: 24px; }.apk-modal-option { padding: 16px; } }
@media (prefers-reduced-motion: reduce) { .apk-modal::backdrop, .apk-modal-panel, .apk-modal.is-closing::backdrop, .apk-modal.is-closing .apk-modal-panel { animation: none; }.apk-modal-option, .apk-download-ring-value { transition: none; }.apk-download-ring[data-state="pending"] { animation: none; } }
