/* Progressive polish within the existing burgundy, blush and cream system. */
:root{--experience-focus:#bc5475;--experience-soft:#fbf0f4}
.experience-group-page{max-width:1280px;width:calc(100% - 64px)}
.experience-group-layout{grid-template-columns:270px minmax(0,1fr);gap:18px;height:clamp(580px,calc(100dvh - 225px),860px);align-items:stretch}
.experience-group-sidebar{display:flex;flex-direction:column;margin-bottom:0;padding:20px 14px;background:#fffafc;overflow:hidden}
.experience-sidebar-heading{padding:0 8px 16px}.experience-sidebar-heading .eyebrow{font-size:9px;color:var(--muted)}.experience-sidebar-heading h2{font-size:19px;margin:6px 0 0}
.experience-group-links{overflow-y:auto;min-height:0;flex:1}.experience-group-links .list-row{gap:10px;justify-content:flex-start;border:0;border-radius:10px;padding:13px 10px;margin-bottom:5px;font-size:13px;font-weight:600;line-height:1.6}.experience-group-links .list-row>span:last-child{min-width:0;overflow-wrap:anywhere}.experience-group-links .avatar{flex:0 0 30px;width:30px;height:30px}.experience-sidebar-footer{display:block;padding:14px 8px 0;border-top:1px solid var(--line);font-size:12px}
.experience-group-conversation{display:flex;flex-direction:column;min-width:0;min-height:0;margin-bottom:0;padding:0;border-radius:14px;box-shadow:0 8px 28px #6c26340b;background:#fffdfd}
.experience-group-head{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 16px;flex:0 0 auto;margin:0;padding:20px 24px 13px}.experience-group-title{min-width:0}.experience-group-title .pill{font-size:10px;padding:3px 7px;margin:0}.experience-group-title h1{font-size:22px;line-height:1.45;margin:7px 0 0;overflow-wrap:anywhere}.experience-group-context{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px 20px;font-size:12px}.experience-group-context>.text-link{font-size:12px;min-height:32px;display:inline-flex;align-items:center}
.experience-menu{position:relative;align-self:start;font-size:12px}.experience-menu>summary{display:flex;align-items:center;justify-content:center;min-width:60px;min-height:40px;padding:8px 12px;list-style:none;border:1px solid var(--line);border-radius:9px;cursor:pointer;background:#fff}.experience-menu>summary::-webkit-details-marker{display:none}.experience-menu[open]>summary{color:var(--deep);background:var(--experience-soft);border-color:#dba7b7}.experience-menu-panel{position:absolute;right:0;top:calc(100% + 8px);z-index:15;width:270px;max-width:calc(100vw - 54px);padding:16px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 12px 36px #532b3920}.experience-menu-panel .hint{font-size:12px}.experience-menu-panel .text-button{font-size:13px}.experience-leave-confirm{border-top:1px solid var(--line);margin-top:12px;padding-top:8px}.experience-leave-confirm p{margin:0 0 12px}.experience-leave-confirm summary{min-height:36px}.experience-leave-confirm .button{width:100%}
.experience-roster{position:relative;margin:0;font-size:12px}.experience-roster>summary{min-height:32px;display:flex;align-items:center;cursor:pointer;color:var(--green);padding:4px 8px;border-radius:7px}.experience-roster-list{position:absolute;top:calc(100% + 6px);right:0;z-index:12;width:260px;max-height:230px;overflow-y:auto;padding:6px 10px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 30px #532b3915}.experience-roster .list-row{justify-content:flex-start;gap:10px;padding:9px 3px;font-size:13px}.experience-roster small{margin-left:auto;font-size:10px;color:var(--muted)}
.experience-history-note{flex:0 0 auto;margin:0!important;padding:8px 24px;background:var(--experience-soft);border-bottom:1px solid #f4e6ec;color:#80606c!important;font-size:11px!important}
.experience-group-messages{flex:1;min-height:100px;max-height:none;overflow-y:auto;overscroll-behavior:contain;padding:24px;scrollbar-width:thin;background:linear-gradient(#fffdfd,#fff)}.experience-group-messages .bubble{max-width:84%;border-radius:14px 14px 14px 4px;padding:11px 15px;box-shadow:none}.experience-group-messages .bubble.mine{border-radius:14px 14px 4px 14px;background:#b72755;color:#fff}.experience-group-messages .bubble small{display:flex;gap:14px;justify-content:space-between;font-size:11px}.experience-group-messages .mine small{color:#f4d7e1}.experience-group-messages .bubble p{margin:6px 0 0;font-size:14px;line-height:1.75;overflow-wrap:anywhere}.experience-group-messages .group-report{font-size:11px;line-height:1.5;padding:5px 0 0;min-height:28px;opacity:.72;text-decoration:none}.experience-group-messages .bubble:hover .group-report,.experience-group-messages .group-report:focus-visible{opacity:1;text-decoration:underline;text-underline-offset:3px}
.experience-chat-empty{align-self:center;margin:auto;max-width:340px;padding:32px 18px;text-align:center}.experience-chat-empty h2{font-size:22px;line-height:1.45;margin:13px 0 8px}.experience-chat-empty p{font-size:13px;color:var(--muted);line-height:1.8;margin:0}.experience-chat-empty .text-button{margin-top:12px;min-height:42px;font-size:13px}
.experience-composer-area{flex:0 0 auto;padding:0 20px 14px;background:#fff}.experience-composer{margin:0;border:1px solid #e2cad4;padding:8px;border-radius:12px;align-items:flex-end;gap:10px;background:#fff}.experience-composer textarea{border:0;border-radius:6px;min-height:48px;max-height:130px;resize:vertical;padding:7px 8px;line-height:1.6;outline:0;font-size:14px;background:transparent}.experience-composer:focus-within{border-color:#be6d87;box-shadow:0 0 0 3px #f8e9ef}.experience-composer .button{flex-shrink:0;min-height:44px;padding:10px 18px}.experience-composer-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;font-size:10px;color:var(--muted)}.experience-composer-foot .text-link{font-size:11px;min-height:28px;display:inline-flex;align-items:center}
.experience-group-entry{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px 20px;margin:16px 0 22px;border:1px solid #ead6df;background:linear-gradient(110deg,#fffdfb,#fcf0f4);border-radius:12px;box-shadow:none}.experience-group-entry h2{font-size:17px;line-height:1.4;margin:0 0 6px}.experience-group-entry .hint{font-size:12px;margin:0}.experience-group-entry-action{flex:0 0 auto}.experience-group-entry form{margin:0}.experience-group-entry .button{font-size:13px;padding:10px 17px;min-height:44px}
.experience-profile{max-width:860px!important}.experience-page-heading{margin-bottom:24px}.experience-page-heading h1{margin:8px 0 10px}.experience-page-heading .eyebrow{font-size:10px;color:var(--deep)}.experience-profile-identity{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;justify-content:space-between;padding:22px 26px}.experience-profile-identity .owner-box{margin:0;padding:0;border:0;background:none;flex:1}.experience-profile-identity>.hint{flex-basis:100%;font-size:12px}.experience-profile-identity .text-link{font-size:12px;min-height:36px;display:inline-flex;align-items:center}.experience-profile-form{margin:0}.experience-form-section{min-width:0;margin:0 0 22px;padding:22px 26px 26px;border:1px solid var(--line);border-radius:14px;box-shadow:0 8px 28px #6c26340b}.experience-form-section legend{float:left;width:100%;padding:0;margin:0 0 8px;font-size:19px;font-weight:700;color:var(--ink)}.experience-form-section legend span{font-size:10px;font-weight:500;color:var(--deep);background:var(--experience-soft);border-radius:5px;padding:4px 7px;margin-left:8px;vertical-align:middle}.experience-form-section>.hint{clear:both;font-size:12px;margin-bottom:20px}.experience-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 20px;clear:both}.experience-field{min-width:0;font-size:14px}.experience-field-wide{grid-column:1/-1}.experience-field label{display:block;font-size:13px;font-weight:600;color:#624650;margin-bottom:8px}.experience-field input:not([type=checkbox]),.experience-field textarea,.experience-field select{display:block;width:100%;min-width:0;border:1px solid #e3d3da;border-radius:9px;padding:11px 12px;min-height:46px;color:var(--ink);background:#fffdfb;font-size:14px}.experience-field input[type=file]{font-size:12px;padding:10px}.experience-field textarea{resize:vertical;min-height:100px}.experience-field input[type=checkbox]{accent-color:var(--green);margin-right:8px}.experience-field .helptext{display:block;font-size:11px;line-height:1.6;color:var(--muted);margin-top:7px}.experience-field .errorlist{margin:0 0 8px;padding:0;list-style:none;font-size:12px;color:#9d344a}.experience-field.has-errors input,.experience-field.has-errors textarea{border-color:#b14361}.experience-section-note{margin:18px 0 0!important}.experience-profile-save{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;border:1px solid var(--line);border-radius:12px;background:#fffdfbf5;backdrop-filter:blur(12px)}.experience-profile-save .hint{font-size:12px}.experience-profile-save .button{min-width:130px}
.experience-profile :focus-visible,.experience-group-page :focus-visible,.experience-group-entry :focus-visible{outline:2px solid var(--experience-focus);outline-offset:3px}.experience-profile input:focus,.experience-profile textarea:focus{border-color:#be6d87;box-shadow:0 0 0 3px #f8e9ef;outline:0}.experience-group-page .list-row,.experience-group-page .text-link,.experience-group-page .button,.experience-group-entry .button,.experience-profile .button{transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.experience-group-page .list-row:hover{background:#fbf1f5}.experience-group-page .button:active,.experience-group-entry .button:active,.experience-profile .button:active{transform:translateY(1px)}.experience-group-page .button:hover,.experience-profile .button:hover{box-shadow:0 4px 12px #96202e16}
form.is-submitting{cursor:progress}form.is-submitting button[type=submit],form.is-submitting button:not([type]),form.is-submitting button[name=action]{pointer-events:none;opacity:.7}form.is-submitting [aria-busy=true]::after{content:'';display:inline-block;flex:0 0 auto;width:11px;height:11px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:experience-spin .7s linear infinite;margin-left:4px}@keyframes experience-spin{to{transform:rotate(360deg)}}
@media(max-width:900px){.experience-group-page{width:calc(100% - 40px)}.experience-group-layout{grid-template-columns:220px minmax(0,1fr)}.experience-group-title h1{font-size:20px}.experience-group-head{padding:16px 18px 12px}}
@media(max-width:700px){.experience-group-page{width:auto}.experience-group-layout{grid-template-columns:1fr;height:calc(100dvh - 230px);min-height:540px;max-height:820px}.experience-group-sidebar{display:none}.experience-group-conversation{padding:0;min-height:0;overflow:visible}.experience-group-head{padding:14px 16px 10px;gap:9px 12px}.experience-group-title h1{font-size:19px}.experience-menu>summary{min-width:55px;min-height:40px;padding:8px 10px}.experience-group-context{gap:4px 10px}.experience-group-context>.text-link,.experience-roster{font-size:11px}.experience-roster-list{position:fixed;left:20px;right:20px;top:calc(110px + env(safe-area-inset-top));width:auto;max-height:45dvh}.experience-history-note{padding:7px 16px;font-size:10px!important}.experience-group-messages{min-height:100px;padding:18px 14px;max-height:none}.experience-group-messages .bubble{max-width:90%;padding:10px 13px}.experience-group-messages .bubble p{font-size:13px}.experience-group-messages .group-report{min-height:32px;font-size:11px;opacity:.82}.experience-composer-area{padding:0 12px 10px}.experience-composer{flex-direction:row;gap:6px;padding:6px}.experience-composer textarea{font-size:16px;min-height:46px;max-height:96px}.experience-composer .button{font-size:12px;padding:10px 12px;min-height:44px}.experience-composer-foot{gap:8px;margin-top:5px}.experience-composer-foot .text-link{font-size:10px;min-height:30px}.experience-shortcut{display:none}.experience-chat-empty h2{font-size:19px}.experience-group-entry{padding:16px;flex-wrap:wrap;gap:12px}.experience-group-entry h2{font-size:16px}.experience-group-entry .hint{font-size:11px}.experience-group-entry-action{width:100%}.experience-group-entry-action .button{width:100%}.experience-profile-identity{padding:18px}.experience-form-section{padding:18px;margin-bottom:18px}.experience-form-section legend{font-size:17px}.experience-field-grid{grid-template-columns:1fr;gap:20px}.experience-field-wide{grid-column:auto}.experience-field input:not([type=checkbox]),.experience-field textarea,.experience-field select{font-size:16px}.experience-profile-save{position:sticky;bottom:78px;z-index:4;padding:12px 14px}.experience-profile-save .button{min-width:110px}.experience-profile-save .hint{font-size:11px}}
@media(prefers-reduced-motion:reduce){.experience-group-page *,.experience-group-entry *,.experience-profile *,form.is-submitting *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
/* Five destinations keep mobile navigation usable without horizontal scrolling.
   Native details provides disclosure semantics; overflow must remain visible for More. */
.experience-mobile-nav{display:none}
@media(max-width:700px){
  nav.experience-mobile-nav{display:flex;position:fixed;inset:auto 0 0;z-index:50;height:calc(68px + env(safe-area-inset-bottom));gap:3px;justify-content:center;overflow:visible;padding:6px max(8px,env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));background:#fffdfbf7;border-top:1px solid var(--line);backdrop-filter:blur(14px)}
  .experience-mobile-nav>.experience-mobile-destination,.experience-mobile-nav>.experience-mobile-more{flex:1 1 0;min-width:0;max-width:150px}
  .experience-mobile-nav>.experience-mobile-destination,.experience-mobile-more>summary{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:54px;padding:5px 3px;border:0;border-radius:9px;list-style:none;font-size:12px;line-height:1.3;color:#7b626d;text-align:center;cursor:pointer}
  .experience-mobile-more{position:static}
  .experience-mobile-more>summary::-webkit-details-marker{display:none}
  .experience-mobile-nav>.experience-mobile-destination span,.experience-mobile-more>summary span{font-size:10px;line-height:1.3;margin:0;white-space:nowrap}
  .experience-mobile-nav img{display:block;width:21px;height:21px;opacity:.85}
  .experience-mobile-nav>.selected,.experience-mobile-more[open]>summary,.experience-mobile-more.selected>summary{background:#f5e6ec;color:var(--deep);font-weight:700}
  .experience-mobile-nav>.selected{border:0}
  .experience-mobile-panel{position:absolute;bottom:calc(100% + 8px);right:max(16px,env(safe-area-inset-right));z-index:2;width:250px;max-width:calc(100vw - 32px);max-height:60dvh;overflow-y:auto;padding:7px;background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:0 12px 36px #532b3920}
  .experience-mobile-panel>a{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;flex:none;min-width:0;width:100%;min-height:46px;padding:11px 14px;border:0;border-radius:8px;font-size:14px;line-height:1.5;color:var(--ink);white-space:normal}
  .experience-mobile-panel>a:hover,.experience-mobile-panel>a[aria-current=page]{background:var(--experience-soft);color:var(--deep)}
  .experience-mobile-nav :focus-visible{outline:2px solid var(--experience-focus);outline-offset:2px}
}
