.companion-party{position:fixed;inset:0;pointer-events:none;z-index:4}.companion{position:absolute;margin:0;filter:drop-shadow(0 9px 16px #314b3a26)}.companion-button{display:block;padding:0;border:0;background:transparent;pointer-events:auto;cursor:pointer}.companion-button:hover,.companion-button:focus-visible{background:transparent;transform:scale(1.04)}.companion-button:focus-visible{outline:2px solid #809b72;outline-offset:3px;border-radius:50%}.companion img{display:block;width:112px;height:112px;object-fit:contain}.companion figcaption{position:absolute;min-width:150px;max-width:190px;padding:9px 12px;border:1px solid #d9dfcb;border-radius:14px;background:#fffdf4f5;box-shadow:0 7px 20px #3a44351a;color:#63705e;font-size:10px;line-height:1.45;opacity:0;visibility:hidden;transform:translateY(5px);transition:opacity .2s ease,transform .2s ease}.companion.speaking figcaption{opacity:1;visibility:visible;transform:translateY(0)}.companion figcaption strong{display:block;color:#405344;font-size:11px}.companion-1{right:18px;bottom:18px}.companion-1 figcaption{right:88px;bottom:74px}.companion-2{right:22px;top:37%}.companion-2 img{width:92px;height:92px}.companion-2 figcaption{right:72px;top:0}.companion-3{left:244px;bottom:18px}.companion-3 img{width:82px;height:82px}.companion-3 figcaption{left:66px;bottom:50px}

.exercise-guide{display:grid;grid-template-columns:minmax(180px,300px) minmax(180px,1fr);gap:18px;align-items:center;margin:16px 0 6px;padding:15px;border:1px solid #dce4d4;border-radius:16px;background:linear-gradient(135deg,#fbfaf1,#eff4eb)}.exercise-guide-motion,.exercise-guide-static{width:100%;background-image:var(--guide-image);background-repeat:no-repeat;background-position:0 var(--guide-y);border-radius:12px;box-shadow:inset 0 0 0 1px #ffffff80}.exercise-guide-motion{aspect-ratio:4/3;background-size:200% 400%}.exercise-guide-static{display:none;aspect-ratio:8/3;background-size:100% 400%;background-position:center var(--guide-y)}.exercise-guide figcaption{margin:0;color:#65705e;font-size:11px;line-height:1.65}.exercise-guide figcaption strong{display:block;margin-bottom:5px;color:#475c49;font:700 16px Manrope,system-ui,sans-serif}.movement-help[open]{padding-bottom:4px}.movement-help[open]>summary{color:#4d6c51}.movement-help .record-note{margin-left:2px}

.bond-overlay{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:24px;background:#26342ed9;backdrop-filter:blur(8px);overflow:auto}.bond-dialog{width:min(1080px,100%);max-height:calc(100vh - 48px);overflow:auto;padding:34px;border:1px solid #e2d6b8;border-radius:24px;background:linear-gradient(145deg,#fffef9,#eff3e9);box-shadow:0 24px 80px #101b1666}.bond-dialog>h2{margin:7px 0 8px;font:600 34px 'Cormorant Garamond',Georgia,serif;color:#42564a}.bond-dialog>p{max-width:720px;color:#758073;font-size:13px;line-height:1.7}.form-choice{display:flex;gap:12px;align-items:center;margin:20px 0;padding:12px 16px;border:1px solid #d8deca;border-radius:12px;background:#fffdf7}.form-choice legend{padding:0 7px;color:#566957;font-weight:700;font-size:12px}.form-choice label{display:flex;flex-direction:row;gap:7px;align-items:center;margin:0;padding:7px 13px;border-radius:999px;background:#edf2e7}.form-choice input{width:auto}.starter-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.starter-card{overflow:hidden;border:1px solid #dcd8c8;border-radius:16px;background:#fffefa}.starter-card>img{display:block;width:100%;height:155px;object-fit:contain;background:radial-gradient(circle,#f7f0d8,#edf0e7)}.starter-card>div{padding:14px}.starter-card h3,.bonded-card h3,.egg-card h3{margin:0;font:600 23px 'Cormorant Garamond',Georgia,serif;color:#485b4f}.starter-card small{text-transform:uppercase;letter-spacing:1px;color:#9b865d;font-size:8px}.starter-card p,.bonded-card p,.egg-card p{min-height:48px;color:#7f887a;font-size:10px;line-height:1.55}.starter-card button{width:100%;font-size:10px}.bond-status{min-height:18px;margin:14px 0 0;color:#6e815d;font-size:11px}

.bond-sanctuary{background:linear-gradient(145deg,#fffef9,#f0f4e9)}.bonded-grid,.egg-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.bonded-card,.egg-card{display:grid;grid-template-columns:135px 1fr;gap:16px;padding:14px;border:1px solid #e1dccd;border-radius:16px;background:#fffefa}.bonded-card.active{border-color:#aebd8e;box-shadow:0 0 0 3px #dfe9cc}.bonded-card>img{width:135px;height:150px;object-fit:contain;align-self:center}.bonded-card label,.egg-card label{font-size:9px}.bonded-card select,.egg-card select{margin-top:5px;padding:8px}.bonded-card button,.egg-card button{margin-top:9px;width:100%;font-size:10px}.egg-heading{display:flex;justify-content:space-between;gap:18px;align-items:end;margin:28px 0 13px;padding-top:22px;border-top:1px solid #e1dfd3}.egg-heading h3{margin:0;font:600 23px 'Cormorant Garamond',Georgia,serif}.egg-heading p{margin:4px 0 0;color:#879080;font-size:11px}.egg-heading>strong{font-size:10px;color:#9b875b}.companion-egg{display:grid;place-items:center;width:125px;height:150px;align-self:center;border:2px solid #d9c58f;border-radius:50% 50% 44% 44%/58% 58% 42% 42%;background:radial-gradient(circle at 42% 34%,#fff9dd,#ded3a5 72%,#b69c65);overflow:hidden;box-shadow:inset -12px -10px 22px #7b6d3b24,0 8px 18px #4b49331a}.companion-egg img{width:92px;height:92px;object-fit:contain;filter:grayscale(.65) opacity(.58)}.all-bonded{margin:24px 0 0;padding:18px;border-radius:14px;background:#eff4e4;color:#667b57;text-align:center}

.guild-home .page-heading{display:none}.guild-home #app{gap:24px}.guild-room{position:relative;isolation:isolate;aspect-ratio:3/2;min-height:520px;overflow:hidden;border:1px solid #bda979;border-radius:22px;background:#d9c69d url('/art/guild-hall-room.png?v=guild-1') center/cover no-repeat;box-shadow:0 18px 40px #39483c24}.guild-room:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#16211966 0,transparent 28%,transparent 65%,#16211966 100%);pointer-events:none}.guild-room-heading{position:absolute;z-index:3;top:20px;left:22px;padding:14px 18px;border:1px solid #f4e8c399;border-radius:14px;background:#fffdf2e8;box-shadow:0 7px 22px #26352b2e}.guild-room-heading p{margin:0;color:#8d774c;font-size:8px;letter-spacing:1.7px}.guild-room-heading h2{margin:3px 0 0;font:600 27px 'Cormorant Garamond',Georgia,serif;color:#3f5347}.guild-room-heading span{display:block;color:#778274;font-size:9px}.guild-room-links{position:absolute;inset:0;z-index:2}.room-link{position:absolute;display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid #eadcb4cc;border-radius:12px;background:#fffdf0e8;box-shadow:0 5px 16px #1c2c2330;color:#465b4e;text-decoration:none;transition:transform .18s ease,background .18s ease}.room-link:hover,.room-link:focus-visible{transform:translateY(-3px) scale(1.02);background:#fffef8}.room-link:focus-visible{outline:3px solid #e9ce79;outline-offset:2px}.room-link>b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#e9efdf;color:#6d805c}.room-link span{font-size:10px;font-weight:800;line-height:1.2}.room-link small{display:block;margin-top:2px;color:#8b9184;font-size:7px;font-weight:500}.quest-board{left:2.5%;top:35%}.journal-desk{left:18%;top:55%}.training-door{left:49%;top:38%}.progress-map{right:3%;top:31%}.care-shelf{right:4%;top:55%}.reward-chest{right:6%;bottom:7%}.archive-ledger{left:3%;bottom:8%}.room-companion{position:absolute;z-index:4;left:58%;bottom:5%;margin:0;filter:drop-shadow(0 12px 15px #1d2d2640)}.room-companion .companion-button{pointer-events:auto}.room-companion img{display:block;width:165px;height:165px;object-fit:contain}.room-companion figcaption{position:absolute;right:132px;bottom:115px;width:190px;padding:12px 14px;border:1px solid #e6d7ad;border-radius:15px;background:#fffdf5f5;box-shadow:0 9px 24px #1f2f2738;color:#63705e;font-size:10px;line-height:1.5;opacity:0;visibility:hidden;transform:translateY(6px);transition:.2s ease}.room-companion.speaking figcaption{opacity:1;visibility:visible;transform:translateY(0)}.room-companion figcaption strong{display:block;color:#405344;font-size:13px}.room-companion figcaption small{display:block;margin-top:6px;color:#9a9078;font-size:8px}.guild-room-prompt{position:absolute;z-index:3;left:50%;bottom:15px;transform:translateX(-50%);padding:8px 14px;border-radius:999px;background:#263a30c9;color:#fffbed;font-size:9px;letter-spacing:.3px;white-space:nowrap}

@media(prefers-reduced-motion:no-preference){.companion-1 img{animation:companion-bob 4.6s ease-in-out infinite}.companion-2 img{animation:companion-tilt 5.4s ease-in-out infinite}.companion-3 img{animation:companion-hop 6.2s ease-in-out infinite}.exercise-guide-motion{animation:guide-two-step 4.8s steps(1,end) infinite}@keyframes companion-bob{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-7px) rotate(1deg)}}@keyframes companion-tilt{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(3deg)}}@keyframes companion-hop{0%,82%,100%{transform:translateY(0)}88%{transform:translateY(-9px)}93%{transform:translateY(0)}}@keyframes guide-two-step{0%,46%{background-position:0 var(--guide-y)}54%,100%{background-position:100% var(--guide-y)}}}
@media(prefers-reduced-motion:reduce){.exercise-guide-motion{display:none}.exercise-guide-static{display:block}}
@media(max-width:1300px){.companion-2,.companion-3{display:none}.companion-1 img{width:88px;height:88px}.starter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){.companion-party{position:static;display:flex;justify-content:center;gap:8px;padding:0 16px 18px}.companion{position:relative!important;inset:auto!important}.companion img{width:70px!important;height:70px!important}.companion-1 figcaption,.companion-2 figcaption,.companion-3 figcaption{left:50%;right:auto;bottom:64px;top:auto;transform:translate(-50%,5px)}.companion.speaking figcaption{transform:translate(-50%,0)}.companion-2{display:block}.exercise-guide{grid-template-columns:1fr}.exercise-guide figcaption{text-align:center}.bond-dialog{padding:24px}.starter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bonded-grid,.egg-grid{grid-template-columns:1fr}.guild-room{aspect-ratio:auto;min-height:690px;padding:300px 14px 18px;background-color:#edf0e7;background-size:auto 300px;background-position:center top;background-repeat:no-repeat}.guild-room:after{background:linear-gradient(180deg,transparent 230px,#edf0e7 300px)}.guild-room-heading{top:12px;left:12px;padding:10px 13px}.guild-room-heading h2{font-size:22px}.guild-room-links{position:relative;z-index:3;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.room-link{position:static!important;transform:none!important;min-height:50px;background:#fffef8}.room-companion{left:50%;bottom:auto;top:137px;transform:translateX(-50%)}.room-companion img{width:120px;height:120px}.room-companion figcaption{right:auto;left:50%;bottom:95px;transform:translate(-50%,6px);width:170px}.room-companion.speaking figcaption{transform:translate(-50%,0)}.guild-room-prompt{position:relative;left:auto;bottom:auto;transform:none;margin:14px auto 0;text-align:center;white-space:normal}}
@media(max-width:620px){.companion-party{gap:2px}.companion img{width:62px!important;height:62px!important}.exercise-guide{padding:11px;gap:12px}.exercise-guide figcaption strong{font-size:14px}.bond-overlay{padding:10px}.bond-dialog{max-height:calc(100vh - 20px);padding:20px 15px;border-radius:18px}.bond-dialog>h2{font-size:28px}.starter-grid{grid-template-columns:1fr}.starter-card{display:grid;grid-template-columns:105px 1fr}.starter-card>img{height:100%;min-height:170px}.form-choice{flex-wrap:wrap}.bonded-card,.egg-card{grid-template-columns:100px 1fr;gap:10px;padding:10px}.bonded-card>img{width:100px;height:130px}.companion-egg{width:94px;height:125px}.companion-egg img{width:74px;height:74px}.egg-heading{align-items:flex-start}.egg-heading>strong{display:none}}
