/* Functional pages prioritize their controls over decorative headings. */
.owner-star { color:#789a19; font-size:.9em; }
/* Keep the star beside its label; the broader mypage-row span rule uses grid. */
.mypage-row .membership-role-label { display:inline-flex; align-items:center; gap:4px; white-space:nowrap; }
.mypage-row .membership-role-label .owner-star { display:inline; }
.page-section-title { display:flex; align-items:baseline; gap:10px; margin-bottom:12px; min-width:0; }
.page-section-title .page-title-en { flex:none; color:#68757c; font:700 10px 'DM Sans',sans-serif; letter-spacing:.04em; }
.inner-page .page-main .page-section-title h2 { margin:0; font-size:22px; line-height:1.4; }
.page-section-title .page-title-en { white-space:nowrap; }
.managed-team-actions .team-other-actions { position:relative; }
.managed-team-actions .team-other-actions > a { display:flex; min-height:44px; margin-top:6px; }
@media(max-width:760px) {
  .inner-page .detail-hero > .team-profile-card { padding:16px; gap:12px; }
  .inner-page .team-profile-card .team-profile-visual { width:128px; max-width:128px; justify-self:start; }
  .inner-page .team-profile-card .team-profile-actions { padding-top:10px; gap:8px; }
  .inner-page .page-main .page-section-title h2 { font-size:20px; }
  .page-section-title { gap:8px; }
  .page-section-title .page-title-en { font-size:9px; }
  .inner-page .managed-team-actions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); width:100%; gap:8px; }
  .inner-page .managed-team-actions > a { width:auto; min-width:0; padding:10px 6px; text-align:center; font-size:13px; }
  .inner-page .managed-team-actions > .primary-link { grid-column:span 2; }
}
.inner-page .page-main { padding-top:28px; padding-bottom:40px; }
.inner-page .page-main h1 { font-size:32px; line-height:1.35; letter-spacing:-.02em; margin:0 0 10px; overflow-wrap:anywhere; }
.inner-page .page-main .kicker { margin:0 0 6px; font-size:11px; }
.inner-page .page-main :is(.dashboard-heading,.chat-heading,.team-management-heading,.mypage-heading,.notebook-heading,.exchange-page-heading,.ops-heading) { gap:12px 20px; margin-bottom:18px; align-items:center; }
.inner-page .page-main :is(.dashboard-heading,.chat-heading,.team-management-heading,.mypage-heading,.notebook-heading,.exchange-page-heading,.ops-heading) p { margin:6px 0 0; font-size:14px; line-height:1.6; }
.inner-page :is(.chat-shell,.team-calendar-shell,.notebook) { width:min(100%,1180px); max-width:none; margin:0 auto; padding:0; }
.inner-page .exchange-shell { padding-top:0; }
.inner-page .ops-shell { margin-top:0; }
.inner-page .page-main .team-management-list { margin-top:20px; }
.inner-page .page-main .team-feature-nav { margin:16px 0; }
.inner-page .page-main .team-management-tabs { margin-top:18px; margin-bottom:18px; }
.inner-page .page-main .team-admin-nav { margin-top:18px; margin-bottom:18px; }
.conversation-heading .conversation-team-name { color:#657078; font-size:14px; margin:0; overflow-wrap:anywhere; }
.conversation-info { border:1px solid #dfe5df; border-radius:8px; background:#fff; margin:12px 0 16px; }
.conversation-info > summary { min-height:44px; padding:12px 16px; cursor:pointer; font-size:14px; font-weight:700; }
.conversation-info-content { padding:0 16px 16px; }
.conversation-info-content > p { margin:0 0 12px; font-size:14px; line-height:1.6; }
.conversation-info .inquiry-target-card { margin:0; padding:16px; }
.conversation-members { margin:0; border-radius:8px; }
.conversation-members > summary { padding:12px 16px; min-height:44px; font-size:14px; font-weight:700; cursor:pointer; }
.conversation-members > summary span { margin-left:8px; color:#657078; font-size:13px; }
.exchange-conditions > summary { font-size:16px; padding:0; min-height:44px; }
.exchange-conditions > summary small { font-size:13px; font-weight:400; color:#657078; margin-left:8px; }
.exchange-conditions:not([open]) { margin:0; }
.exchange-conditions[open] { margin:0; }
@media(max-width:760px) {
  .inner-page .page-main { padding:16px 16px 28px; }
  .inner-page .page-main h1 { font-size:24px; line-height:1.35; margin:0 0 6px; }
  .inner-page .page-main :is(.dashboard-heading,.chat-heading,.team-management-heading,.mypage-heading,.notebook-heading,.exchange-page-heading,.ops-heading) { gap:8px; margin-bottom:12px; }
  /* The Japanese title already identifies the screen; English labels add height. */
  .inner-page .page-main :is(.dashboard-heading,.chat-heading,.team-management-heading,.mypage-heading,.notebook-heading,.exchange-page-heading,.ops-heading) .kicker,
  .inner-page .exchange-shell > .kicker { display:none; }
  .inner-page .page-main .panel-heading { margin-bottom:16px; gap:10px; }
  .inner-page .page-main .panel-heading h2 { font-size:20px; margin:0 0 6px; }
  .inner-page .page-main .panel-heading p { margin:0; font-size:14px; line-height:1.6; }
  .inner-page .page-main .team-management-tabs { margin:12px 0; }
  .inner-page .page-main .team-management-tabs button { min-height:44px; }
  .inner-page .page-main .team-feature-nav { margin:12px 0; }
  .inner-page .page-main .team-feature-nav a { min-height:44px; padding:10px 8px; }
  .inner-page .conversation-heading { flex-direction:row; align-items:center; }
  .inner-page .conversation-heading > div { min-width:0; }
  .inner-page .conversation-heading > .pill-btn { width:auto; flex-shrink:0; padding:10px 12px; font-size:13px; }
  .inner-page .conversation-info { margin:8px 0 12px; }
  .inner-page .chat-shell .chat-log:has(> .chat-empty) { min-height:0; }
  .inner-page .chat-shell .chat-empty { padding:24px 12px; }
  .inner-page .exchange-detail-caption { font-size:14px; margin:6px 0 12px; }
  .inner-page .exchange-decision { margin:12px 0; }
  .inner-page .exchange-decision .exchange-status { padding:12px; }
  .inner-page .exchange-decision .exchange-status h3 { font-size:18px; margin:6px 0 8px; }
  .inner-page .exchange-decision .exchange-status p { font-size:13px; line-height:1.6; margin-top:8px; }
  .inner-page .exchange-decision .exchange-approval-list { gap:8px; }
  .inner-page .exchange-next-step { padding:8px; }
  .inner-page .exchange-decision-action { padding:8px 12px; }
}
@media(max-width:900px) {
  .inner-page .team-chat-layout > .conversation-members { grid-row:auto; }
}

/* My Teams: restrained role badges, grouped cards and one consistent action area. */
.inner-page .my-team-dashboard .team-management-list { gap:12px; margin-top:24px; }
.inner-page .my-team-dashboard .team-group-heading { font-size:14px; line-height:1.5; font-weight:700; color:#53616b; margin:0 0 2px; letter-spacing:0; }
.inner-page .my-team-dashboard .team-group-heading-next { margin-top:20px; }
.inner-page .my-team-dashboard .team-management-list > article { position:relative; grid-template-columns:56px minmax(0,1fr) 280px; gap:16px; padding:20px 76px 20px 20px; border-radius:14px; border-color:#e0e5df; box-shadow:0 3px 12px rgba(16,28,42,.025); }
.inner-page .my-team-dashboard .managed-team-icon { width:56px; height:56px; font-size:26px; align-self:start; margin-top:4px; }
.inner-page .my-team-dashboard .managed-team-main { min-width:0; }
.inner-page .my-team-dashboard .managed-team-main h2 { font-size:21px; margin:7px 0 4px; letter-spacing:-.015em; overflow-wrap:anywhere; }
.inner-page .my-team-dashboard .managed-team-role { display:inline-flex; align-items:center; gap:4px; padding:3px 8px; margin:0; border-radius:5px; background:#f0f3ec; color:#566749; font-size:11px; line-height:1.5; letter-spacing:0; }
.inner-page .my-team-dashboard .managed-team-main > p:last-child { font-size:12px; color:#69757c; line-height:1.6; }
.inner-page .my-team-dashboard .managed-team-actions { display:grid; grid-column:auto; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; width:100%; }
.inner-page .my-team-dashboard .managed-team-actions > a { display:flex; width:auto; min-width:0; min-height:44px; padding:9px 6px; border:1px solid transparent; border-radius:7px; background:#f2f4f1; font-size:12px; white-space:nowrap; gap:4px; }
.inner-page .my-team-dashboard .managed-team-actions > a:hover { background:#e8ede4; border-color:#c8d4bd; }
.inner-page .my-team-dashboard .managed-team-actions > .primary-link { grid-column:1 / -1; min-height:36px; padding:6px 12px; background:#c9f43b; border-color:#c9f43b; color:#101c2a; font-size:12px; }
.inner-page .my-team-dashboard .managed-team-actions > .primary-link:hover { background:#b9e42b; border-color:#b9e42b; }
.inner-page .my-team-dashboard .unread-badge { min-width:18px; height:18px; padding:0 4px; font-size:10px; }
.inner-page .my-team-dashboard .team-other-actions { position:absolute; top:18px; right:16px; z-index:1; }
.inner-page .my-team-dashboard .team-other-actions[open] { z-index:5; }
.inner-page .my-team-dashboard .team-other-actions > summary { display:flex; align-items:center; justify-content:center; list-style:none; width:44px; height:44px; padding:0; border-radius:8px; color:#53616b; font-size:26px; line-height:1; }
.inner-page .my-team-dashboard .team-other-actions > summary::-webkit-details-marker { display:none; }
.inner-page .my-team-dashboard .team-other-actions > summary:hover,.inner-page .my-team-dashboard .team-other-actions[open] > summary { background:#f0f3ec; }
.inner-page .my-team-dashboard .team-menu-panel { position:absolute; top:48px; right:0; width:190px; padding:6px; border:1px solid #dde4d8; border-radius:10px; background:#fff; box-shadow:0 8px 28px rgba(16,28,42,.12); }
.inner-page .my-team-dashboard .team-menu-panel a { display:flex; justify-content:flex-start; min-height:44px; width:100%; padding:10px; margin:0; border:0; border-radius:6px; font-size:12px; }
.inner-page .my-team-dashboard .team-menu-panel a:hover { background:#f0f3ec; }
.inner-page .my-team-dashboard .team-activity-notice { border-radius:8px; padding:14px; font-size:13px; }
@media(max-width:1000px) {
  .inner-page .my-team-dashboard .team-management-list > article { grid-template-columns:56px minmax(0,1fr); padding-right:20px; }
  .inner-page .my-team-dashboard .managed-team-main { padding-right:44px; }
  .inner-page .my-team-dashboard .managed-team-actions { grid-column:1 / -1; }
}
@media(max-width:760px) {
  .inner-page .my-team-dashboard .team-management-list > article { grid-template-columns:48px minmax(0,1fr); gap:14px 12px; padding:16px; }
  .inner-page .my-team-dashboard .managed-team-icon { width:48px; height:48px; font-size:23px; }
  .inner-page .my-team-dashboard .managed-team-main h2 { font-size:18px; }
  .inner-page .my-team-dashboard .team-other-actions { top:12px; right:10px; }
  .inner-page .my-team-dashboard .team-group-heading-next { margin-top:14px; }
}
