.access-shell{min-height:100dvh;overflow:auto;background:#101d19;color:#f0efde;padding:max(24px,env(safe-area-inset-top)) 20px max(24px,env(safe-area-inset-bottom));font:16px/1.55 system-ui,sans-serif}.access-card{max-width:560px;margin:3vh auto;padding:28px;border:1px solid #53624c;border-radius:18px;background:#19291f}.access-card h1{font:2rem Georgia,serif;letter-spacing:.12em}.access-card a{color:#d4e3bb}.access-card label{display:block;margin-top:14px}.access-card input{box-sizing:border-box;width:100%;font:inherit;padding:12px;border:1px solid #849272;border-radius:7px;background:#f0efde;color:#111f19}.access-actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.access-card button{font:inherit;cursor:pointer;padding:11px 15px;border:1px solid #9cab87;border-radius:8px;background:#c5d4aa;color:#132017;min-height:44px}.access-card button:disabled{opacity:.6;cursor:wait}.access-status{min-height:1.6em;color:#e5c18a}.access-card :focus-visible{outline:3px solid #e5c18a;outline-offset:3px}.access-reference{position:fixed;inset:0;z-index:1000;background:#101d19;overflow:auto;padding:16px}.access-reference-close{position:sticky;top:0;z-index:1;min-height:44px;padding:10px;font:inherit}.access-reference-body{max-width:1000px;margin:auto}.access-uid{overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;font-size:.85rem}.access-reference [data-book-confidence],.access-reference #confidence-status{display:none}.access-shell{position:fixed;inset:0;height:100dvh;min-height:0;box-sizing:border-box;overscroll-behavior:contain}.access-reference-close{background:#c5d4aa;color:#132017;border:1px solid #9cab87;border-radius:8px;cursor:pointer}.access-card .access-primary-link{display:inline-flex;align-items:center;box-sizing:border-box;min-height:48px;padding:12px 18px;border:1px solid #9cab87;border-radius:8px;background:#c5d4aa;color:#132017;font-weight:600;text-decoration:none}.access-demo-entry{padding-bottom:8px;margin-bottom:20px;border-bottom:1px solid #53624c}.access-demo-entry .access-primary-link{width:100%;justify-content:center;text-align:center}.access-demo-entry p{margin:12px 0}.access-demo-entry #access-demo-notice{font-size:.9rem}.access-progress{position:relative;display:flex;align-items:center;gap:14px;overflow:hidden;box-sizing:border-box;min-height:64px;margin:18px 0;padding:14px 16px;border:1px solid #d5b578;border-radius:12px;background:#24372b;box-shadow:0 5px 18px #0003}.access-progress .access-status{min-width:0;margin:0;color:#fff3d2;font-size:16px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}.access-spinner{flex:0 0 32px;width:32px;height:32px;box-sizing:border-box;border:3px solid #75846a;border-top-color:#ffdc98;border-radius:50%;animation:access-wait 1s linear infinite}.access-progress:after{content:"";position:absolute;left:0;bottom:0;width:35%;height:3px;background:#ffdc98;animation:access-sweep 1.8s linear infinite;pointer-events:none}.access-progress[data-loading-stage=idle]{min-height:0;padding:0;border:0;background:none;box-shadow:none}.access-progress[data-loading-stage=idle]:after{content:none;animation:none}.access-progress[data-loading-stage=idle]:has(.access-status:empty){display:none}.access-spinner[hidden],.access-reload[hidden]{display:none}.access-card .access-reload{margin-bottom:8px}.access-card .learner-guide{margin:18px 0}.access-card .problem-report{margin-top:20px}@keyframes access-wait{to{transform:rotate(360deg)}}@keyframes access-sweep{0%{transform:translate(-100%)}to{transform:translate(400%)}}@media(max-width:760px){.access-progress{padding:12px 14px}.access-progress .access-status{font-size:15px}}@media(prefers-reduced-motion:reduce){.access-spinner{animation:none;border-top-color:#ffdc98;border-right-color:#ffdc98}.access-progress:after{animation:none;transform:none;width:100%}}.reduce-motion .access-spinner{animation:none;border-right-color:#ffdc98}.reduce-motion .access-progress:after{animation:none;transform:none;width:100%}
