.companion-page{margin:0;background:#17121e;color:#f8eed7;font-family:system-ui,sans-serif;min-height:100dvh}.companion-page-head{max-width:800px;margin:auto;padding:24px;display:flex;justify-content:space-between;gap:20px}.companion-page a{color:#ecd491}#ggCompanionPage{max-width:760px;margin:0 auto;padding:0 16px 40px}.gg-companion{box-sizing:border-box;background:linear-gradient(140deg,#2d2337,#19141f);color:#f8eed7;border:1px solid #a98a4d;border-radius:20px;padding:20px;margin:16px 0;font:15px/1.5 system-ui;box-shadow:0 12px 30px #0002}.gg-companion *{box-sizing:border-box}.gg-companion h2,.gg-companion h3{color:#f5dfaa;margin:0 0 12px;line-height:1.2}.gg-companion h2{font:700 25px/1.2 Georgia,serif}.gg-companion p{color:#ded2e6}.gg-companion-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.gg-companion-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.gg-companion button,.gg-companion a.gg-button{min-height:44px;padding:9px 14px;border:1px solid #bd9c51;border-radius:12px;background:#e7ca7e;color:#241a2e;font:750 14px/1.25 system-ui;text-decoration:none;cursor:pointer}.gg-companion button:disabled{opacity:.5;cursor:wait}.gg-companion button.secondary{background:#382e43;color:#f8eed7}.gg-companion label{display:block;margin:12px 0;color:#f7ecd4}.gg-companion input:not([type=checkbox]),.gg-companion select{display:block;width:100%;min-height:44px;padding:9px;border:1px solid #7f6b8e;border-radius:10px;background:#fff9ee;color:#211929;font:15px system-ui}.gg-companion input[type=checkbox]{width:18px;height:18px;vertical-align:middle;margin-right:8px}.gg-companion fieldset{min-width:0;margin:16px 0;border:1px solid #77627c;border-radius:12px}.gg-companion legend{color:#e7ca7e}.gg-companion-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.gg-companion-list{display:grid;gap:10px}.gg-companion-row{padding:14px;border:1px solid #64516d;border-radius:14px;background:#ffffff08}.gg-companion-row h3{font:700 16px system-ui;margin-bottom:5px}.gg-companion-row small,.gg-companion small{color:#d5c8de}.gg-companion [role=status]{min-height:1.5em;white-space:pre-wrap;overflow-wrap:anywhere}.gg-companion-warning{padding:10px 12px;border-left:3px solid #e8c86b;background:#6c512933}.gg-companion summary{cursor:pointer;padding:8px 0;color:#f0d99d;font-weight:700}.gg-companion-dialog{padding:0;border:0;background:transparent;color:inherit;width:min(640px,calc(100vw - 20px));max-height:90dvh;overflow:auto}.gg-companion-dialog::backdrop{background:#08050ed9}.gg-companion-dialog .gg-companion{margin:0}.gg-companion a{color:#efd594}.gg-companion-care{position:fixed;z-index:2147483000;left:12px;right:12px;bottom:max(10px,env(safe-area-inset-bottom));max-width:520px;margin:0 auto}.gg-companion-celebrate{animation:companionHappy .7s ease-in-out 2}@keyframes companionHappy{50%{filter:drop-shadow(0 0 15px #f8d976);scale:1.02}}.gg-companion [hidden]{display:none!important}@media(max-width:420px){.gg-companion{padding:15px}.gg-companion-grid{grid-template-columns:1fr}.gg-companion-head{align-items:flex-start}.gg-companion-head h2{font-size:22px}}@media(prefers-reduced-motion:reduce){.gg-companion-celebrate{animation:none}}

/* Compact until deliberately expanded; native details supports keyboard and touch. */
.gg-companion-smart{padding:10px 14px;margin:10px 0}.gg-companion-smart>summary{min-height:44px;padding:3px 20px 3px 0;position:relative}.gg-companion-smart>summary span{font-size:16px}.gg-companion-smart>summary small{display:block;font-size:11px;font-weight:400}.gg-companion-smart[open]>summary{margin-bottom:12px;border-bottom:1px solid #77627c;padding-bottom:12px}.gg-companion-smart .gg-companion-head small{display:none}.gg-companion-smart [role=status]:empty{display:none}
