@import"https://fonts.googleapis.com/css2?family=DM+Mono&family=Shippori+Mincho:wght@400;600;800&display=swap";:root{font-family:Shippori Mincho,serif;color:#fff3d2;background:#21100d;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 50% 20%,#5c2418 0,#21100d 46%,#120605)}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,a:focus-visible{outline:2px solid #ffce63;outline-offset:4px}.topbar{position:relative;z-index:2;max-width:1080px;margin:auto;padding:24px;display:flex;justify-content:space-between;font-size:13px;letter-spacing:.06em}a{color:#ead7ae;text-decoration:none}.sound{border:1px solid #8e603c;color:#f3d391;background:#311713;border-radius:999px;padding:7px 12px}.halo{position:fixed;pointer-events:none;border-radius:50%;filter:blur(2px);opacity:.38}.halo-one{width:34vw;height:34vw;background:#b94322;left:-14vw;top:35vh}.halo-two{width:30vw;height:30vw;background:#deab38;right:-17vw;top:8vh}.sanctuary{position:relative;z-index:1;width:min(100% - 32px,650px);min-height:700px;margin:20px auto 50px;text-align:center}.kicker{color:#ddb268;font:11px DM Mono,monospace;letter-spacing:.18em}h1{margin:8px 0 0;color:#fff8e3;font-size:clamp(70px,18vw,132px);font-weight:600;line-height:.86;letter-spacing:.09em}h1 span{color:#d34e29}.subhead{margin:18px 0 44px;letter-spacing:.32em;font-size:14px}.preparation,.certificate{background:#f5e9c9;color:#321710;border:1px solid #ebcc8d;box-shadow:0 20px 65px #0f030399;padding:clamp(22px,6vw,50px);text-align:left;position:relative}.preparation:before,.certificate:before{content:"";position:absolute;inset:11px;border:1px solid #c78645;pointer-events:none}label,.choice-label{display:block;position:relative;z-index:1;font-size:15px;letter-spacing:.12em}input{width:100%;background:transparent;border:0;border-bottom:1px solid #b98052;padding:12px 2px;color:#321710;font-size:20px;outline:0}.choice-label{margin-top:30px;display:flex;justify-content:space-between}small{font-size:12px;letter-spacing:.06em;opacity:.75}.choice-list{margin:12px 0}.choice-input{display:flex;gap:10px;align-items:center}.choice-input i{font:10px DM Mono,monospace;color:#965128}.choice-input button{border:0;background:transparent;color:#7d3b2d;font-size:22px}.quiet-button{position:relative;z-index:1;border:0;padding:6px 0;background:transparent;color:#7b3e24}.begin,.action{position:relative;z-index:1;display:block;width:100%;margin-top:30px;padding:16px 22px;border:0;background:#4d1d16;color:#ffe8af;font-size:16px;letter-spacing:.1em}.begin b{float:right;font-size:22px;line-height:.6}.begin:disabled{cursor:not-allowed;opacity:.43}.ritual-stage{min-height:350px;padding:35px 0;display:grid;place-items:center;align-content:center;gap:20px}.ritual-stage p{letter-spacing:.12em}.bell{border:0;background:transparent;color:#ffce62;font-size:180px;line-height:.7;text-shadow:0 0 35px #ff9d2577}.action{width:min(100%,320px);margin:10px auto;border:1px solid #bd8443;background:#4b1c16}.prayer{color:#eab96d;font-size:18px}.cards{display:flex;align-items:flex-end;justify-content:center;min-height:220px;padding:20px 0}.card{width:min(29vw,145px);min-height:180px;display:grid;place-items:center;padding:12px;color:#4b2418;background:repeating-linear-gradient(90deg,#f6e7c3 0 3px,#efd9aa 3px 4px);border:1px solid #be8544;box-shadow:3px 8px 18px #0e030680;writing-mode:vertical-rl;letter-spacing:.18em}.seal{width:172px;height:172px;border:8px double #f0b850;border-radius:50%;color:#ffd77b;background:#8d1d19;box-shadow:0 13px #54100e,0 22px 35px #0008;font-size:72px;font-weight:800}.seal:active{transform:translateY(10px)!important;box-shadow:0 4px #54100e}.certificate{min-height:500px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.certificate>*{position:relative;z-index:1}.certificate>p{margin:0;letter-spacing:.5em;color:#a2512c}.certificate small{margin:14px}.line{width:55px;border-top:1px solid #b77045}.certificate h2{max-width:90%;margin:25px 0 8px;font-size:19px;font-weight:400}.certificate span{font-size:13px}.certificate strong{margin:30px 0;color:#9b261e;font-size:clamp(35px,9vw,56px)}.certificate em{font-style:normal;font-size:13px}footer{position:relative;z-index:1;padding:20px;text-align:center;color:#b99370;font-size:12px;letter-spacing:.08em}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important}}
