.bits{grid-template-columns:repeat(3,1fr);gap:14px 28px}.bits span{font:25px/1.3 serif;letter-spacing:3px}.cast-line b{font:18px/1.5 serif;letter-spacing:2px}.cast-line{flex-wrap:wrap}.numbers{margin:30px 0 0}.result{padding-bottom:80px}.footer{position:relative;left:auto;bottom:auto;transform:none;margin:55px auto 0}.profile{overflow:auto;max-height:100vh}.local-action{background:var(--rice);border:0;padding:10px 18px;font:14px Huiwen,serif;color:#4b463e;cursor:pointer;margin:12px 10px 12px 0}.card-layer,.birth-layer{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;background:#eeeee8bb;backdrop-filter:blur(14px);opacity:0;transition:opacity .65s ease}.card-layer.open,.birth-layer.open{opacity:1}.card-layer[hidden],.birth-layer[hidden]{display:none}.card-scroll{max-height:calc(100dvh - 110px);overflow:auto;padding:30px 32px 50px;scrollbar-width:thin}.oracle-card{position:relative;background:#f5f1e8;color:#30343a;width:min(660px,calc(100vw - 64px));padding:46px 48px 30px;box-shadow:0 22px 80px #49403018;transform:translateY(65px) rotate(1deg);opacity:0;transition:transform 1s cubic-bezier(.16,1,.3,1),opacity .8s;isolation:isolate}.open .oracle-card{transform:none;opacity:1}.oracle-card:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.12;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 140'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.card-date{font:11px Huiwen,serif;letter-spacing:2px;color:#888176}.card-heading{display:flex;align-items:center;justify-content:space-between;margin:35px 0}.card-theme{font:60px/1.2 Huiwen,serif;letter-spacing:12px;margin:0}.card-hex{width:70px;display:flex;flex-direction:column-reverse;gap:6px;opacity:.8}.card-hex i{height:4px}.card-subtitle{font-size:13px;letter-spacing:3px;color:#736b5d}.card-question{font-size:13px;line-height:1.8;margin:22px 0 34px;color:#777064;overflow-wrap:anywhere}.card-copy{display:grid;grid-template-columns:1fr 1fr;gap:28px 32px}.card-copy small{font-size:11px;letter-spacing:2px;color:#8c8170;display:block;margin-bottom:9px}.card-copy p{font-size:13px;line-height:2;margin:0;overflow-wrap:anywhere}.card-reserve{height:80px;display:flex;align-items:end;font-size:10px;color:#aaa294;letter-spacing:3px}.card-actions{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);display:flex;gap:22px;z-index:2}.card-actions button{width:46px;height:46px;border:0;background:#f6f1e7e8;border-radius:50%;color:#6a6257;cursor:pointer;box-shadow:0 5px 25px #4d45301a;display:grid;place-items:center}.card-actions svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.25}.birth-sheet{background:#fff;padding:40px;width:min(450px,90vw);max-height:85vh;overflow:auto}.birth-sheet h2{font:28px Huiwen,serif}.birth-sheet p{font-size:12px;color:#908a80}.birth-sheet label{display:block;margin:18px 0;font-size:13px}.birth-sheet input{display:block;width:100%;padding:12px;background:#f7f3eb;border:0;margin-top:8px;font:14px Huiwen,serif}.birth-sheet small{color:#a19b90;font-size:11px}.history-list{display:grid;gap:9px;margin-bottom:35px}.history-list button{border:0;background:#f8f5ef;padding:13px 16px;text-align:left;color:#767063;font:13px Huiwen,serif;cursor:pointer}.card-hint{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:60;font:12px Huiwen,serif;color:#7f786c;animation:breathe 2s infinite;pointer-events:none;text-align:center}.card-hint[hidden]{display:none}button:disabled{opacity:.4;cursor:wait}@media(max-width:600px){.oracle-card{padding:30px 25px 25px;width:calc(100vw - 36px)}.card-scroll{padding:18px 10px 30px}.card-theme{font-size:48px}.card-copy{grid-template-columns:1fr;gap:24px}.numbers code{grid-template-columns:repeat(2,1fr);gap:10px}.bits span{font-size:19px;letter-spacing:2px}.card-hint{width:90vw}}@media(prefers-reduced-motion:reduce){.card-layer,.birth-layer,.oracle-card{transition:none}.card-hint{animation:none}}
.history-hint{position:static;margin:12px 0 0;font:12px Huiwen,serif;color:#928b7e;opacity:.6;animation:breathe 2.5s infinite}.history-hint[hidden]{display:none}.home-back{margin-left:auto;border:0;background:transparent;padding:8px 0;color:#82796b;font:13px Huiwen,serif;cursor:pointer}.home-back[hidden]{display:none}.photo-upload{margin-top:24px;text-align:center}.photo-label{color:#8d8475;cursor:pointer;font-size:12px}.photo-upload p{font-size:10px;color:#aaa293;margin:7px 0}.photo-upload input{max-width:100%}#photoThumbs{display:flex;justify-content:center;gap:12px;margin-top:12px}#photoThumbs button{position:relative;border:0;background:transparent;padding:0;cursor:pointer}#photoThumbs img{width:55px;height:65px;object-fit:cover;filter:saturate(.5)}#photoThumbs span{position:absolute;right:3px;top:0;color:#fff;text-shadow:0 1px 3px #000}.card-photo-panel{display:block;width:calc(100% + 40px);margin:15px -20px 40px;mix-blend-mode:multiply}.oracle-card:before{opacity:.035}.birth-sheet select{font:13px Huiwen,serif;padding:9px;background:#f5f1e8;border:0;max-width:100%;margin-top:8px}#birthPicker{background:#faf8f2;padding:12px;margin:8px 0}#birthPicker[hidden]{display:none}.picker-top{display:flex;gap:12px}.picker-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;max-height:235px;overflow:auto;margin-top:12px}.picker-grid button{border:0;background:#eee8dd;padding:9px 3px;color:#625b4e;font:13px Huiwen,serif;cursor:pointer}.birth-sheet input[readonly]{cursor:pointer}.question{padding-bottom:40px}@media(prefers-reduced-motion:reduce){.history-hint{animation:none}}
.card-copy p{white-space:pre-line}

.birth-time-field{margin:18px 0}.birth-sheet .birth-time-field label{margin:0}.birth-time-control{display:flex;align-items:stretch;gap:8px;margin-top:8px}.birth-sheet .birth-time-control input{flex:1;min-width:0;width:0;margin:0}.birth-time-clear{flex:none;min-width:44px;min-height:44px;padding:0 10px;border:0;background:transparent;color:#625b4e;font:13px Huiwen,serif;cursor:pointer}.birth-time-clear:hover{background:#eee8dd}.birth-time-clear:focus-visible{outline:2px solid #625b4e;outline-offset:2px}
