.companion-hero{padding:78px 0 42px;background:radial-gradient(circle at 70% 0,rgba(102,204,255,.22),transparent 38%),radial-gradient(circle at 20% 20%,rgba(57,255,20,.08),transparent 34%)}.companion-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) 260px;gap:32px;align-items:center}.progress-orb{position:relative;width:240px;height:240px;display:grid;place-items:center;justify-self:end}.progress-orb svg{position:absolute;inset:0;transform:rotate(-90deg)}.progress-orb circle{fill:none;stroke:rgba(143,226,255,.18);stroke-width:10}.progress-orb #ringFill{stroke:#39ff14;stroke-linecap:round;stroke-dasharray:327;stroke-dashoffset:327;filter:drop-shadow(0 0 12px rgba(57,255,20,.45));transition:stroke-dashoffset .3s ease}.progress-orb strong{font:900 3rem/1 Arial,sans-serif;color:#fff}.progress-orb span{position:absolute;bottom:58px;color:#8fe2ff;font:800 .75rem Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}.companion-note,.muted{color:#a8b6c7}.companion-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:30px auto 76px}.companion-panel{border:1px solid rgba(102,204,255,.18);border-radius:14px;background:linear-gradient(180deg,rgba(17,25,42,.8),rgba(7,10,18,.94));box-shadow:0 22px 70px rgba(0,0,0,.34);padding:22px}.companion-panel.wide{grid-column:1/-1}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.status-pill{border:1px solid rgba(57,255,20,.42);border-radius:999px;padding:8px 12px;color:#39ff14;background:rgba(57,255,20,.08);font:800 .68rem/1 Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase}.companion-form{display:grid;gap:14px}.companion-form label{display:grid;gap:7px;font:700 .74rem/1.3 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#8fe2ff}.companion-form input,.companion-form select,.companion-form textarea{width:100%;box-sizing:border-box;border:1px solid rgba(143,226,255,.32);border-radius:10px;background:rgba(4,8,15,.78);color:#f5fbff;padding:12px 13px;font:500 1rem/1.45 Georgia,serif}.companion-form textarea{min-height:110px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-row.four{grid-template-columns:1.5fr .7fr .7fr .9fr}.goal-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.goal-row label{border:1px solid rgba(143,226,255,.16);border-radius:10px;padding:10px;background:rgba(255,255,255,.035);display:flex!important;align-items:center;gap:8px}.goal-row input{width:auto}.recommendation-list,.journal-list,.achievement-list,.chapter-notes{display:grid;gap:12px}.mini-card,.answer-card{border:1px solid rgba(143,226,255,.16);border-radius:12px;background:rgba(255,255,255,.04);padding:14px}.mini-card h3,.answer-card h3{margin:.1rem 0 .45rem}.badge-row{display:flex;gap:8px;flex-wrap:wrap}.badge{display:inline-flex;align-items:center;border:1px solid rgba(143,226,255,.24);border-radius:999px;padding:7px 10px;background:rgba(102,204,255,.07);font:800 .68rem/1 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#b9ecff}.hidden{display:none!important}@media(max-width:900px){.companion-hero-grid,.companion-grid,.form-row,.form-row.four,.goal-row{grid-template-columns:1fr}.progress-orb{justify-self:center}.panel-head{align-items:flex-start;flex-direction:column}}@media(max-width:560px){.progress-orb{width:190px;height:190px}.progress-orb strong{font-size:2.35rem}.companion-panel{padding:18px}.actions .btn,.companion-form .btn{width:100%;justify-content:center}}