/* Enrollimon personalities and a cabinet of cosmetic keepsakes. */
.companion-modal{max-width:930px;width:100%;background:#fffdf6;padding:32px;overflow-y:auto}
.companion-panel,.companion-collection,.companion-detail{color:var(--ink,#243d36);min-width:0}
.companion-kicker{display:block;font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:10px;font-weight:700;line-height:1.65;letter-spacing:1.25px;color:#786333}
.companion-panel-heading{padding-right:24px}.companion-panel-heading h2{font-size:31px;line-height:1.2;letter-spacing:-.7px;margin:9px 0 12px}.companion-panel-heading>p{font-size:14px;line-height:1.8;color:#667266;max-width:650px}
.companion-profile{display:grid;grid-template-columns:220px minmax(0,1fr);align-items:center;gap:30px;margin-top:25px;padding:20px 27px 20px 17px;background:radial-gradient(ellipse at 24% 45%,#f3e6bd,transparent 60%),linear-gradient(115deg,#f6f0dc,#f1f4e8);border:1px solid #dcd9c0;border-radius:18px;box-shadow:0 4px 0 #ece5d2}
.companion-portrait{position:relative;display:grid;place-items:center;min-width:0;height:224px}.companion-portrait-image{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block;filter:drop-shadow(0 10px 10px #635a2a18)}.companion-portrait-orbit{position:absolute;right:4%;top:5%;font-size:34px;color:#a88542;transform:rotate(12deg)}
.companion-portrait-charm{position:absolute;right:0;bottom:7px;display:grid;place-items:center;width:54px;height:54px;border:1px solid #b4924b;border-radius:50%;background:#f4e6b8;box-shadow:0 3px 0 #b69a5a66;transform:rotate(8deg)}.companion-portrait-charm .companion-glyph{width:30px;height:30px;color:#765a24}
.companion-profile-copy{min-width:0}.companion-profile-copy h3{font-size:32px;line-height:1.3;letter-spacing:-.6px;overflow-wrap:anywhere;margin:5px 0 4px;color:#245749}.companion-species{display:block;font-size:12px;line-height:1.7;color:#68765d;overflow-wrap:anywhere}.companion-personality-trait{display:inline-flex;align-items:center;gap:6px;margin-top:13px;font-size:12px;font-weight:650;color:#46644f;border:1px solid #cdd9be;background:#f7faef;padding:6px 10px;border-radius:20px;max-width:100%;line-height:1.6}.companion-personality-trait>.icon{width:16px;height:16px;flex-shrink:0}.companion-personality-description{font-size:14px;line-height:1.85;color:#5b6b59;margin-top:9px;max-width:490px}
.companion-text-action{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;border:0;background:none;padding:8px 0;font-size:12px;font-weight:600;color:#426a58;text-decoration:underline;text-underline-offset:4px;line-height:1.6;text-align:left}.companion-text-action>.icon{width:14px;height:14px;flex-shrink:0}.companion-profile-copy>.companion-text-action{display:flex;justify-content:flex-start;margin-top:3px}
.companion-preview-note{margin-top:14px;padding:13px 14px;background:#f4f5e7;border:1px solid #d9dfc6;border-radius:10px;text-align:left;color:#536b49;font-size:12px;line-height:1.85}.companion-preview-note strong{display:block;font-size:12px;line-height:1.7;color:#476340}.companion-preview-note p{font-size:12px;line-height:1.85;margin-top:6px;color:#68775b}.companion-preview-note small{display:block;font-size:10px;line-height:1.9;margin-top:6px;color:#707c60}
.companion-charm{display:inline-flex;align-items:center;gap:7px;border:1px solid #bfaa72;background:#fcf4dc;color:#725925;border-radius:24px;min-height:44px;padding:7px 12px;font-size:12px;line-height:1.5;max-width:100%;text-align:left;vertical-align:middle;margin:10px 0 0;box-shadow:0 2px 0 #dbc89655}.companion-charm span{overflow-wrap:anywhere}.companion-charm:hover{background:#f6e9bd;border-color:#a4843e}.companion-glyph{display:block;width:25px;height:25px;flex-shrink:0}.companion-charm .companion-glyph{width:22px;height:22px}
.companion-reaction{display:flex;align-items:flex-start;gap:13px;border:1px solid #d5dec8;border-left:3px solid #98ad7e;background:#f2f6e9;border-radius:4px 13px 13px 4px;padding:16px 18px;margin:21px 0;color:#43634b;text-align:left}.companion-reaction-mark{font-size:23px;line-height:1.3;color:#8a9f62;flex-shrink:0}.companion-reaction>div{min-width:0}.companion-reaction p{font-size:14px;line-height:1.85;margin:0;color:#3b5b45}.companion-reaction span:not(.companion-reaction-mark){display:block;font-size:11px;line-height:1.8;color:#627254;margin-top:6px;overflow-wrap:anywhere}
.companion-name-section{padding:24px 0 26px;border-bottom:1px solid #e3dcc7}.companion-name-section h3,.companion-cabinet h3,.companion-new-keepsakes h3{font-size:23px;line-height:1.4;letter-spacing:-.45px;margin:5px 0 9px}.companion-name-section>div>p,.companion-cabinet>p,.companion-collection>p{font-size:13px;line-height:1.85;color:#647261}.companion-name-section>.button{margin-top:15px;font-size:13px;min-height:44px}.companion-nickname-form{margin-top:19px}.companion-nickname-form>label{display:block;font-size:13px;font-weight:650;line-height:1.6;color:#3e5a49;margin-bottom:8px}.companion-nickname-form>label>span{font-weight:400;font-size:11px;color:#697866;margin-left:8px}.companion-name-input-row{display:flex;align-items:stretch;gap:10px}.companion-name-input-row>input{display:block;width:100%;min-width:0;min-height:48px;padding:11px 13px;border:1px solid #cbd5bd;border-radius:9px;background:#fffef9;font-size:16px;line-height:1.5;color:#2d5142;outline-offset:3px}.companion-name-input-row>input::placeholder{color:#8c9782}.companion-name-input-row>input[aria-invalid=true]{border-color:#a65c40;background:#fff9f0}.companion-name-input-row>.button{flex-shrink:0;min-height:48px;font-size:13px;gap:10px;white-space:nowrap}.companion-form-help{font-size:11px;line-height:1.85;color:#6a7764;margin:9px 0 0}.companion-form-error{font-size:13px;line-height:1.75;color:#8d492e;background:#fbefdf;border:1px solid #e6c6a6;border-radius:7px;padding:11px 13px;margin-top:12px}.companion-form-error[hidden]{display:none}.companion-nickname-form>.companion-text-action{margin-top:4px}
.companion-cabinet{padding:25px 0 0}.companion-cabinet-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:9px}.companion-cabinet-heading>div{min-width:0}.companion-cabinet-heading h3,.companion-cabinet-heading h2{margin-bottom:0}.companion-count{flex-shrink:0;font-size:11px;font-weight:600;line-height:1.6;color:#71643d;border:1px solid #d8cda8;border-radius:20px;padding:6px 10px;background:#fbf5e5;white-space:nowrap}
.companion-keepsake-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-top:19px}.companion-keepsake{position:relative;display:flex;flex-direction:column;align-items:center;min-width:0;padding:17px 12px 15px;border:1px solid #ddd7c4;border-bottom-width:3px;background:#f7f5eb;border-radius:13px;text-align:center;color:#56674f;transition:background .15s,border-color .15s,transform .15s}.companion-keepsake:hover{background:#f3efdf;border-color:#b7b48e;transform:translateY(-2px)}.companion-keepsake.unlocked{background:linear-gradient(145deg,#f9f3df,#fffdf4);border-color:#d7c796;color:#6c5527}.companion-keepsake.unlocked:hover{background:#f5ebca;border-color:#b5964d}.companion-keepsake.equipped{border-color:#7c9b65;background:linear-gradient(145deg,#e8eed8,#fcfcf0);box-shadow:0 0 0 1px #a3b78d}.companion-keepsake-emblem{position:relative;display:grid;place-items:center;width:62px;height:65px;border:1px solid #dad6c1;background:#eeeee1;border-radius:22px 22px 25px 25px;box-shadow:inset 0 0 0 4px #ffffff66,0 3px 0 #dedac4;margin:0 0 13px;color:#78836c}.unlocked .companion-keepsake-emblem{border-color:#bda769;background:#f1df9f;box-shadow:inset 0 0 0 4px #faf1d799,0 3px 0 #d6c083;color:#7a5c25}.equipped .companion-keepsake-emblem{border-color:#8b9b67;background:#e8edcc;color:#566b3b;box-shadow:inset 0 0 0 4px #f8fbe499,0 3px 0 #bfcea5}.companion-keepsake-emblem>.companion-glyph{width:34px;height:34px}.companion-keepsake-equipped{position:absolute;right:-7px;top:-7px;display:grid;place-items:center;width:23px;height:23px;background:#486b48;border:2px solid #fffdf6;border-radius:50%;font-size:14px;color:#f3e9bf}.companion-keepsake>strong{font-size:13px;font-weight:650;line-height:1.6;overflow-wrap:anywhere}.companion-keepsake-status{display:flex;align-items:center;justify-content:center;gap:5px;font-size:11px;line-height:1.7;margin-top:7px;color:#6d755f}.unlocked .companion-keepsake-status{color:#786231}.equipped .companion-keepsake-status{color:#4c6b40}.companion-keepsake-status>.icon{width:12px;height:12px;flex-shrink:0}.companion-keepsake-requirement{display:block;font-size:10px;line-height:1.75;margin-top:7px;color:#69715f;max-width:165px}.companion-keepsake-note{display:flex;align-items:flex-start;gap:7px;font-size:11px!important;line-height:1.85!important;margin-top:16px;color:#6e755f!important}.companion-keepsake-note>.icon{width:15px;height:15px;flex-shrink:0;margin-top:3px}
.companion-panel-footer,.companion-collection-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:22px;margin-top:21px;border-top:1px solid #e3dcc7}.companion-panel-footer>span,.companion-collection-footer>span{font-size:11px;line-height:1.8;color:#6a755f;max-width:340px}.companion-panel-footer>.button,.companion-collection-footer>.button{font-size:12px;min-height:44px;gap:12px;flex-shrink:0}
.companion-collection{padding:28px;margin:28px 0;background:linear-gradient(150deg,#fffdf5,#f8f2df);border:1px solid #dfd2b0;border-radius:17px;box-shadow:0 4px 0 #ece3cd}.companion-collection h2{font-size:27px;line-height:1.4;letter-spacing:-.5px;margin-top:5px}.companion-collection .companion-keepsake-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.companion-collection-footer{margin-top:20px;padding-top:19px}
.companion-detail-modal{max-width:550px;width:100%;background:#fffdf6;padding:37px 33px;overflow-y:auto}.companion-detail{text-align:center}.companion-detail-emblem{display:grid;place-items:center;width:110px;height:116px;margin:5px auto 25px;background:#eceee0;border:1px solid #cfd3bd;border-radius:34px 34px 40px 40px;color:#7a846b;box-shadow:inset 0 0 0 7px #ffffff77,0 5px 0 #dedec6;transform:rotate(-5deg)}.companion-detail.unlocked .companion-detail-emblem{background:#f3dfa0;border-color:#c1a260;color:#806125;box-shadow:inset 0 0 0 7px #fff6d866,0 5px 0 #d9c083}.companion-detail-emblem>.companion-glyph{width:62px;height:62px}.companion-detail h2{font-size:29px;line-height:1.35;letter-spacing:-.7px;margin:9px 0 14px;padding:0!important;overflow-wrap:anywhere}.companion-detail-description{font-size:14px;line-height:1.85;color:#62705c}.companion-detail-requirement{display:flex;align-items:flex-start;gap:12px;text-align:left;padding:18px;margin-top:25px;border:1px solid #d8dfc9;background:#f2f5e9;border-radius:12px}.companion-detail-requirement>span{display:grid;place-items:center;width:31px;height:33px;border-radius:9px;border:1px solid #cad6ba;color:#71875f;background:#e8eedc;flex-shrink:0}.companion-detail-requirement>span>.icon{width:17px;height:17px}.companion-detail-requirement h3{font-size:14px;line-height:1.6;color:#456246;margin:0}.companion-detail-requirement p{font-size:13px;line-height:1.8;color:#64735a;margin-top:6px}.companion-detail-progress{display:block;font-size:11px;line-height:1.7;color:#697c5c;margin-top:8px}.companion-detail-note{font-size:12px;line-height:1.9;color:#6d775f;margin-top:21px}.companion-detail .full{font-size:13px;min-height:48px;margin-top:22px;gap:12px}.companion-detail-buddy-note{display:block;font-size:11px;line-height:1.8;color:#6d775f;margin-top:10px;overflow-wrap:anywhere}.companion-detail>.companion-text-action{margin-top:13px}
.companion-new-keepsakes{margin:23px 0;padding:21px;text-align:left;border:1px solid #d8c38d;border-radius:13px;background:linear-gradient(130deg,#f7edce,#fff9e9)}.companion-new-keepsakes h3{font-size:21px}.companion-new-keepsakes>div{display:grid;gap:9px;margin-top:15px}.companion-new-keepsakes button{display:flex;align-items:center;gap:12px;min-height:61px;background:#fffaf0;border:1px solid #dfd2a9;border-radius:9px;padding:12px;color:#755c2f;text-align:left}.companion-new-keepsakes button:hover{background:#f8f0d8;border-color:#bda461}.companion-new-keepsakes button>.companion-glyph{width:29px;height:29px}.companion-new-keepsakes button>span{min-width:0;flex:1}.companion-new-keepsakes strong{display:block;font-size:13px;line-height:1.7;overflow-wrap:anywhere}.companion-new-keepsakes small{display:block;font-size:11px;line-height:1.8;color:#746b4f}.companion-new-keepsakes button>.icon{width:15px;height:15px;flex-shrink:0}
@media(max-width:760px){.companion-modal{padding:28px 24px}.companion-profile{grid-template-columns:175px minmax(0,1fr);gap:20px;padding:18px}.companion-portrait{height:200px}.companion-profile-copy h3{font-size:29px}.companion-personality-description{font-size:13px}.companion-keepsake-grid,.companion-collection .companion-keepsake-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.companion-keepsake{padding:15px 10px}.companion-panel-footer{align-items:flex-start}.companion-panel-footer>span{max-width:260px}.companion-collection{padding:24px}}
@media(max-width:620px){.companion-modal{padding:29px 20px 23px}.companion-panel-heading{padding-right:24px}.companion-panel-heading h2{font-size:27px;margin:10px 0 12px}.companion-panel-heading>p{font-size:13px;line-height:1.85}.companion-kicker{font-size:10px;letter-spacing:1px}.companion-profile{grid-template-columns:116px minmax(0,1fr);gap:14px;padding:17px 13px;margin-top:21px;align-items:center;border-radius:14px}.companion-portrait{height:170px}.companion-portrait-orbit{font-size:23px;right:-4px;top:3px}.companion-portrait-charm{width:39px;height:41px;right:0;bottom:0}.companion-portrait-charm .companion-glyph{width:24px;height:24px}.companion-profile-copy>.companion-kicker{font-size:10px;letter-spacing:.5px}.companion-profile-copy h3{font-size:25px;line-height:1.3;margin:5px 0 6px}.companion-species{font-size:11px}.companion-personality-trait{font-size:11px;line-height:1.6;padding:4px 7px;gap:5px;margin-top:9px}.companion-personality-trait>.icon{width:13px;height:13px}.companion-personality-description{font-size:12px;line-height:1.85;margin-top:8px}.companion-profile-copy>.companion-text-action{font-size:11px;line-height:1.7;margin-top:5px}.companion-profile-copy>.companion-charm{font-size:11px;padding:6px 8px;gap:5px;margin-top:9px}.companion-charm .companion-glyph{width:20px;height:20px}.companion-reaction{padding:14px 13px;gap:9px;margin:20px 0;border-radius:4px 10px 10px 4px}.companion-reaction p{font-size:13px;line-height:1.9}.companion-reaction span:not(.companion-reaction-mark){font-size:11px}.companion-reaction-mark{font-size:20px}.companion-name-section{padding:19px 0 23px}.companion-name-section h3,.companion-cabinet h3{font-size:22px}.companion-name-section>div>p,.companion-cabinet>p,.companion-collection>p{font-size:12px;line-height:1.9}.companion-nickname-form{margin-top:17px}.companion-name-input-row{flex-direction:column;gap:9px}.companion-name-input-row>.button{justify-content:center;font-size:13px}.companion-name-input-row>input{font-size:16px}.companion-form-help{font-size:11px;line-height:1.9}.companion-cabinet{padding-top:24px}.companion-cabinet-heading{align-items:flex-start;gap:13px;flex-wrap:wrap}.companion-count{font-size:11px;margin-top:2px}.companion-cabinet-heading .companion-count{margin-top:0}.companion-keepsake-grid,.companion-collection .companion-keepsake-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:17px}.companion-keepsake{padding:16px 10px 14px;border-radius:11px}.companion-keepsake>strong{font-size:12px;line-height:1.7}.companion-keepsake-emblem{width:58px;height:62px;margin-bottom:12px}.companion-keepsake-emblem>.companion-glyph{width:32px;height:32px}.companion-keepsake-status{font-size:11px;margin-top:6px}.companion-keepsake-requirement{font-size:10px;line-height:1.85;margin-top:6px}.companion-keepsake-note{font-size:11px!important;line-height:1.9!important}.companion-panel-footer,.companion-collection-footer{flex-direction:column;align-items:stretch;gap:14px;margin-top:22px;padding-top:19px}.companion-panel-footer>span,.companion-collection-footer>span{max-width:none;font-size:11px;line-height:1.9}.companion-panel-footer>.button,.companion-collection-footer>.button{justify-content:center;font-size:12px}.companion-collection{padding:22px 17px;margin:23px 0;border-radius:14px}.companion-collection h2{font-size:24px;line-height:1.4;margin-top:7px}.companion-detail-modal{padding:33px 24px 27px}.companion-detail h2{font-size:27px;line-height:1.4}.companion-detail-description{font-size:13px;line-height:1.9}.companion-detail-emblem{width:99px;height:106px;margin-bottom:23px}.companion-detail-emblem>.companion-glyph{width:55px;height:55px}.companion-detail-requirement{padding:16px 13px;gap:10px}.companion-detail-requirement p{font-size:12px;line-height:1.9}.companion-detail-note{font-size:12px;line-height:1.9}.companion-detail .full{font-size:12px}.companion-new-keepsakes{padding:18px 15px}.companion-new-keepsakes h3{font-size:21px;line-height:1.5}.companion-new-keepsakes strong{font-size:12px}.companion-new-keepsakes button{padding:11px;gap:10px}}
@media(max-width:620px){.companion-profile-copy>.companion-text-action,.companion-profile-copy>.companion-charm{font-size:12px}}
@media(max-width:370px){.companion-modal{padding:29px 18px 22px}.companion-profile{grid-template-columns:94px minmax(0,1fr);gap:11px;padding:16px 10px}.companion-portrait{height:161px}.companion-profile-copy h3{font-size:23px}.companion-personality-trait{font-size:10px}.companion-cabinet-heading h3{font-size:21px}.companion-collection{padding:21px 15px}.companion-keepsake{padding:15px 8px 13px}}
@media(prefers-reduced-motion:reduce){.companion-keepsake{transition:none}.companion-keepsake:hover{transform:none}}
.companion-workbench-trait{display:inline-block;margin-top:8px;font-size:12px;line-height:1.7;color:#4b654d}
.alchemy-workbench-buddy-copy>.companion-text-action{display:block;font-size:12px;min-height:44px;margin-top:4px}
.alchemy-workbench-buddy-copy>.companion-charm{margin-top:9px}
.companion-settings-action{margin-top:10px}
.companion-buddy-name{display:block;font-size:11px;font-weight:500;line-height:1.6;overflow-wrap:anywhere;max-width:100%}
.alchemy-workbench-buddy-copy h2,.buddy-settings-copy h2,.daily-card>p{overflow-wrap:anywhere}
.expedition-play-buddy .companion-species,.workshop-play-buddy .companion-species,.workshop-reveal-buddy-art .companion-species{font-size:10px;line-height:1.6}
