:root{
  --mipf-surface: var(--mi-surface, #ffffff);
  --mipf-surface-muted: var(--mi-surface-muted, #eef3f9);
  --mipf-border: var(--mi-border, #d9e2ef);
  --mipf-border-strong: var(--mi-border-strong, #c8d5e6);
  --mipf-text: var(--mi-text, #192335);
  --mipf-text-soft: var(--mi-text-soft, #62718e);
  --mipf-primary: var(--mi-primary, #2563eb);
  --mipf-shadow: var(--mi-shadow, 0 12px 40px rgba(31, 55, 93, 0.08));
  --mipf-radius: var(--mi-radius, 14px);
  --mipf-radius-pill: var(--mi-radius-pill, 999px);
}

.mipf-page{
  display:grid;
  gap:24px;
}

.mipf-page__head,
.mipf-section__head,
.mipf-topic-single__head{
  display:flex;
  gap:16px;
  justify-content:space-between;
  align-items:flex-start;
  flex-wrap:wrap;
}

.mipf-section{
  display:grid;
  gap:16px;
}

.mipf-section__title{
  margin:0;
  color:var(--mipf-text);
}

.mipf-boards,
.mipf-topics,
.mipf-replies{
  display:grid;
  gap:16px;
}

.mipf-boards{
  grid-template-columns:repeat(auto-fit, minmax(min(100%, 240px), 300px));
  justify-content:flex-start;
  align-items:stretch;
}

.mipf-boards > *{
  min-width:0;
}

.mipf-boards > .mipf-empty-card{
  grid-column:1 / -1;
  max-width:none;
}

.mipf-board-card,
.mipf-topic-card,
.mipf-reply-card,
.mipf-empty-card{
  background:var(--mipf-surface);
  border:1px solid var(--mipf-border);
  border-radius:20px;
  box-shadow:var(--mipf-shadow);
  padding:20px;
}

.mipf-board-card__title,
.mipf-topic-card__title{
  margin:0 0 8px;
  color:var(--mipf-text);
}

.mipf-topic-card__title a{
  color:var(--mipf-text);
  text-decoration:none;
}

.mipf-topic-card__title a:hover{
  color:var(--mipf-primary);
}

.mipf-board-card__desc,
.mipf-topic-card__excerpt,
.mipf-topic-single__meta,
.mipf-reply-card__meta,
.mipf-empty-card,
.mipf-hint{
  color:var(--mipf-text-soft);
}

.mipf-board-card__meta,
.mipf-topic-card__meta,
.mipf-topic-card__badges,
.mipf-topic-single__meta,
.mipf-reply-card__meta{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  font-size:14px;
}

.mipf-topic-card__header{
  display:flex;
  gap:12px;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
}

.mipf-topic-card__board{
  color:var(--mipf-text-soft);
  font-size:14px;
  font-weight:600;
}

.mipf-badge{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  border-radius:var(--mipf-radius-pill);
  background:var(--mipf-surface-muted);
  border:1px solid var(--mipf-border);
  color:var(--mipf-text);
  font-size:13px;
  font-weight:700;
}

.mipf-badge--type{
  background:color-mix(in srgb, var(--mipf-primary) 10%, var(--mipf-surface) 90%);
  border-color:color-mix(in srgb, var(--mipf-primary) 24%, var(--mipf-border) 76%);
  color:var(--mipf-primary);
}

.mipf-badge--solved{
  color:#027a48;
}

.mipf-form{
  display:grid;
  gap:16px;
}

.mipf-form__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}

.mipf-field{
  margin:0;
}

.mipf-field label{
  display:block;
  font-weight:600;
  margin-bottom:8px;
  color:var(--mipf-text);
}

.mipf-field input[type="text"],
.mipf-field input[type="email"],
.mipf-field input[type="password"],
.mipf-field select,
.mipf-field textarea{
  width:100%;
  border:1px solid var(--mipf-border);
  border-radius:var(--mipf-radius);
  background:var(--mipf-surface);
  color:var(--mipf-text);
  padding:12px 14px;
}

.mipf-field textarea{
  min-height:180px;
  resize:vertical;
}

.mipf-field input[type="text"]:focus,
.mipf-field input[type="email"]:focus,
.mipf-field input[type="password"]:focus,
.mipf-field select:focus,
.mipf-field textarea:focus{
  outline:none;
  border-color:var(--mipf-primary);
  box-shadow:0 0 0 3px color-mix(in srgb, var(--mipf-primary) 16%, transparent);
}

.mipf-form__actions{
  display:flex;
  justify-content:flex-end;
}

.mipf-linked-prompt,
.mipf-notice{
  margin-top:16px;
  padding:14px 16px;
  border-radius:14px;
  background:var(--mipf-surface-muted);
  border:1px solid var(--mipf-border);
  color:var(--mipf-text);
}

.mipf-notice--error{
  border-color:#ef4444;
  color:#991b1b;
}

.mipf-topic-single__content,
.mipf-reply-card__content{
  color:var(--mipf-text);
}

@media (max-width: 820px){
  .mipf-form__grid{
    grid-template-columns:1fr;
  }
}

@media (max-width: 640px){
  .mipf-boards{
    grid-template-columns:1fr;
  }

  .mipf-board-card{
    max-width:none;
  }
}


.mipf-editor{
  display:grid;
  gap:10px;
}

.mipf-editor__toolbar{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:10px;
  border:1px solid var(--mipf-border);
  border-radius:14px;
  background:var(--mipf-surface-muted);
}

.mipf-editor__button{
  appearance:none;
  border:1px solid var(--mipf-border);
  background:var(--mipf-surface);
  color:var(--mipf-text);
  border-radius:999px;
  min-height:34px;
  padding:0 12px;
  font-size:13px;
  font-weight:600;
  cursor:pointer;
}

.mipf-editor__button:hover{
  border-color:var(--mipf-primary);
  color:var(--mipf-primary);
}

.mipf-editor__help{
  margin-top:8px;
  color:var(--mipf-text-soft);
  font-size:13px;
}

.mipf-editor__help code,
.mipf-inline-code{
  display:inline-block;
  padding:2px 6px;
  border-radius:8px;
  background:var(--mipf-surface-muted);
  border:1px solid var(--mipf-border);
  color:var(--mipf-text);
  font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size:.95em;
}

.mipf-prompt-block,
.mipf-code-block,
.mipf-quote-block{
  margin:18px 0;
}

.mipf-prompt-block,
.mipf-code-block{
  border:1px solid var(--mipf-border);
  border-radius:18px;
  overflow:hidden;
  background:var(--mipf-surface);
  box-shadow:var(--mipf-shadow);
}

.mipf-prompt-block{
  border-left:4px solid var(--mipf-primary);
}

.mipf-prompt-block__label,
.mipf-code-block__label{
  display:flex;
  align-items:center;
  min-height:42px;
  padding:0 14px;
  background:var(--mipf-surface-muted);
  border-bottom:1px solid var(--mipf-border);
  color:var(--mipf-text);
  font-size:13px;
  font-weight:700;
  letter-spacing:.01em;
}

.mipf-prompt-block__body,
.mipf-code-block__body{
  margin:0;
  padding:16px;
  overflow:auto;
  background:var(--mipf-surface);
  color:var(--mipf-text);
  font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size:14px;
  line-height:1.6;
  white-space:pre-wrap;
}

.mipf-code-block__body{
  white-space:pre;
}

.mipf-quote-block{
  margin-left:0;
  padding:14px 16px;
  border-left:4px solid var(--mipf-border-strong);
  background:var(--mipf-surface-muted);
  border-radius:14px;
  color:var(--mipf-text);
}

.mipf-topic-single__content p,
.mipf-reply-card__content p{
  color:var(--mipf-text);
}

.mipf-linked-prompt-card{
  margin-top:18px;
  margin-bottom:18px;
  border:1px solid var(--mipf-border);
  border-radius:18px;
  background:var(--mipf-surface);
  box-shadow:var(--mipf-shadow);
  overflow:hidden;
}

.mipf-linked-prompt-card__head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  padding:12px 16px;
  background:var(--mipf-surface-muted);
  border-bottom:1px solid var(--mipf-border);
}

.mipf-linked-prompt-card__badge,
.mipf-linked-prompt-card__status{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  border-radius:999px;
  background:var(--mipf-surface);
  border:1px solid var(--mipf-border);
  color:var(--mipf-text);
  font-size:12px;
  font-weight:700;
}

.mipf-linked-prompt-card__title{
  margin:0;
  padding:16px 16px 4px;
  color:var(--mipf-text);
}

.mipf-linked-prompt-card__desc{
  margin:0;
  padding:0 16px 8px;
  color:var(--mipf-text-soft);
}

.mipf-linked-prompt-card__meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  padding:0 16px 14px;
  color:var(--mipf-text-soft);
  font-size:14px;
}

.mipf-linked-prompt-card__actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  padding:0 16px 16px;
}

.mipf-linked-prompt-card__unavailable{
  padding:0 16px 16px;
  color:var(--mipf-text-soft);
}

.mipf-linked-prompt--unavailable{
  margin-top:16px;
}

.mipf-prompt-discussion-panel{
  margin-top:14px;
  padding:14px 16px;
  border:1px solid var(--mipf-border);
  border-radius:16px;
  background:var(--mipf-surface);
  box-shadow:var(--mipf-shadow);
}

.mipf-prompt-discussion-panel__head{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:10px;
}

.mipf-prompt-discussion-panel__text{
  margin:0 0 10px;
  color:var(--mipf-text);
}

.mipf-prompt-discussion-panel__meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:12px;
  color:var(--mipf-text-soft);
  font-size:14px;
}

.mipf-topic-single.is-locked{}


.mipf-prompt-block__labelRow{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:42px;
  padding:0 14px;
  background:var(--mipf-surface-muted);
  border-bottom:1px solid var(--mipf-border);
}

.mipf-copy-prompt-button,
.mipf-reply-card__quote{
  appearance:none;
  border:1px solid var(--mipf-border);
  background:var(--mipf-surface);
  color:var(--mipf-text);
  border-radius:999px;
  min-height:34px;
  padding:0 12px;
  font-size:13px;
  font-weight:600;
  cursor:pointer;
}

.mipf-copy-prompt-button:hover,
.mipf-reply-card__quote:hover{
  border-color:var(--mipf-primary);
  color:var(--mipf-primary);
}

.mipf-reply-card__actions{
  margin-top:14px;
  display:flex;
  justify-content:flex-end;
}


.mipf-board-card{
  padding:0;
  overflow:hidden;
  width:100%;
  max-width:300px;
  height:100%;
}

.mipf-board-card__link{
  display:flex;
  flex-direction:column;
  height:100%;
  padding:20px;
  color:inherit;
  text-decoration:none;
}

.mipf-board-card__desc{
  margin:0 0 16px;
}

.mipf-board-card__meta{
  margin-top:auto;
}

.mipf-board-card__link:hover .mipf-board-card__title{
  color:var(--mipf-primary);
}

.mipf-sort-chips{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.mipf-sort-chip,
.mipf-page-link{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 14px;
  border-radius:999px;
  border:1px solid var(--mipf-border);
  background:var(--mipf-surface);
  color:var(--mipf-text);
  text-decoration:none;
  font-size:13px;
  font-weight:700;
}

.mipf-sort-chip:hover,
.mipf-page-link:hover,
.mipf-topic-card__board a:hover,
.mipf-breadcrumbs a:hover{
  color:var(--mipf-primary);
  border-color:var(--mipf-primary);
}

.mipf-sort-chip.is-active,
.mipf-page-link.is-active{
  background:var(--mipf-primary);
  color:#fff;
  border-color:var(--mipf-primary);
}

.mipf-pagination{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:4px;
}

.mipf-breadcrumbs{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin-bottom:8px;
  color:var(--mipf-text-soft);
  font-size:14px;
}

.mipf-breadcrumbs a{
  color:var(--mipf-text-soft);
  text-decoration:none;
}

.mipf-board-summary{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  color:var(--mipf-text-soft);
  font-size:14px;
}

.mipf-topic-card__board a{
  color:var(--mipf-text-soft);
  text-decoration:none;
}


.mipf-topic-single__actions{
  margin-top:16px;
}

.mipf-reply-card__actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
  align-items:flex-start;
}

.mipf-reply-card__quote,
.mipf-report-box__summary{
  appearance:none;
  border:1px solid var(--mipf-border);
  background:var(--mipf-surface-muted);
  color:var(--mipf-text);
  border-radius:999px;
  min-height:34px;
  padding:0 12px;
  font-size:13px;
  font-weight:600;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
}

.mipf-report-box{
  display:block;
}

.mipf-report-box__summary{
  list-style:none;
}

.mipf-report-box__summary::-webkit-details-marker{
  display:none;
}

.mipf-report-form{
  margin-top:10px;
  padding:14px;
  border:1px solid var(--mipf-border);
  border-radius:16px;
  background:var(--mipf-surface-muted);
  max-width:520px;
}

.mipf-turnstile-wrap{
  margin-top:10px;
  margin-bottom:10px;
}


.mipf-form__actions--split{
  justify-content:space-between;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}

.mipf-search-bar{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  align-items:center;
  padding:14px;
  border:1px solid var(--mipf-border);
  border-radius:18px;
  background:var(--mipf-surface);
  box-shadow:var(--mipf-shadow);
}

.mipf-search-bar input[type="search"]{
  flex:1 1 260px;
  min-width:220px;
  border:1px solid var(--mipf-border);
  border-radius:14px;
  background:var(--mipf-surface);
  color:var(--mipf-text);
  padding:12px 14px;
}

.mipf-results-summary{
  color:var(--mipf-text-soft);
  font-size:14px;
}

.mipf-pagination{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:8px;
}

.mipf-page-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:40px;
  min-height:40px;
  padding:0 12px;
  border:1px solid var(--mipf-border);
  border-radius:12px;
  background:var(--mipf-surface);
  color:var(--mipf-text);
  text-decoration:none;
  font-weight:600;
}

.mipf-page-link.is-active,
.mipf-page-link:hover{
  border-color:var(--mipf-primary);
  color:var(--mipf-primary);
}

.mipf-editor__actions{
  display:flex;
  justify-content:flex-start;
  gap:10px;
}

.mipf-preview{
  display:grid;
  gap:10px;
  padding:14px;
  border:1px solid var(--mipf-border);
  border-radius:16px;
  background:var(--mipf-surface-muted);
}

.mipf-preview__label{
  font-size:13px;
  font-weight:700;
  color:var(--mipf-text-soft);
  text-transform:uppercase;
  letter-spacing:.03em;
}

.mipf-preview__body{
  color:var(--mipf-text);
}

.mipf-inline-editor{
  display:none;
  margin-top:16px;
  padding-top:16px;
  border-top:1px solid var(--mipf-border);
}

.mipf-inline-editor.is-open{
  display:block;
}

.mipf-reply-card__actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:flex-start;
  margin-top:14px;
}

.mipf-reply-card__quote{
  appearance:none;
  border:1px solid var(--mipf-border);
  background:var(--mipf-surface);
  color:var(--mipf-text);
  border-radius:999px;
  min-height:34px;
  padding:0 12px;
  font-size:13px;
  font-weight:600;
  cursor:pointer;
}

.mipf-reply-card__quote:hover{
  border-color:var(--mipf-primary);
  color:var(--mipf-primary);
}

.mipf-moderator-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}

@media (max-width: 640px){
  .mipf-search-bar{
    align-items:stretch;
  }

  .mipf-search-bar input[type="search"]{
    flex-basis:100%;
    min-width:0;
  }
}


.mipf-profile-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}

.mipf-topic-card__actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
  align-items:center;
}


.mipf-summary-chips{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.mipf-summary-chip{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 14px;
  border-radius:999px;
  background:var(--mipf-surface-muted);
  border:1px solid var(--mipf-border);
  color:var(--mipf-text);
  font-size:13px;
  font-weight:600;
}

.mipf-activity-feed{
  display:grid;
  gap:14px;
}

.mipf-activity-item{
  background:var(--mipf-surface);
  border:1px solid var(--mipf-border);
  border-radius:18px;
  box-shadow:var(--mipf-shadow);
  padding:18px;
  display:grid;
  gap:8px;
}

.mipf-activity-item__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}

.mipf-activity-item__date,
.mipf-activity-item__context,
.mipf-activity-item__excerpt{
  color:var(--mipf-text-soft);
}

.mipf-activity-item__date,
.mipf-activity-item__context{
  font-size:14px;
}

.mipf-activity-item__title{
  margin:0;
  color:var(--mipf-text);
}

.mipf-activity-item__title a{
  color:var(--mipf-text);
  text-decoration:none;
}

.mipf-activity-item__title a:hover{
  color:var(--mipf-primary);
}

.mipf-updates-panel{
  gap:14px;
}


.mipf-follow-form{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}
.mipf-follow-form__help{font-size:12px;opacity:.75}

.mipf-prompt-discussion-panel__actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  margin:12px 0 2px;
}

.mipf-prompt-discussion-panel__button,
.mipf-prompt-discussion-panel__actions .mi-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:9px 14px;
  border:1px solid var(--mipf-border);
  border-radius:999px;
  text-decoration:none;
  font-weight:700;
  line-height:1;
}

.mipf-prompt-discussion-panel__actions .mi-button--primary{
  background:var(--mipf-primary);
  border-color:var(--mipf-primary);
  color:#fff;
}

.mipf-prompt-discussion-panel__actions .mi-button--secondary{
  background:#fff;
  color:var(--mipf-primary);
}

.mipf-prompt-discussion-panel__actions .mi-button:hover{
  text-decoration:none;
  transform:translateY(-1px);
}

.mipf-prompt-discussion-panel__recommend{margin-top:12px}
.mipf-prompt-discussion-panel__recommendTitle{font-size:13px;font-weight:600;margin-bottom:8px}
.mipf-prompt-discussion-panel__recommendList{display:flex;flex-wrap:wrap;gap:8px}


.mipf-auth-page{
  align-items:center;
}

.mipf-auth-shell{
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(320px, 520px);
  gap:28px;
  align-items:start;
}

.mipf-auth-shell__aside,
.mipf-auth-shell__main{
  display:grid;
  gap:18px;
}

.mipf-auth-benefits{
  display:grid;
  gap:12px;
}

.mipf-auth-benefit{
  display:grid;
  gap:4px;
  padding:14px 16px;
  border-radius:16px;
  background:var(--mipf-surface-muted);
  border:1px solid var(--mipf-border);
}

.mipf-auth-benefit span{
  color:var(--mipf-text-soft);
}

.mipf-auth-links,
.mipf-auth-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}

.mipf-auth-form{
  gap:14px;
}

.mipf-auth-inline{
  display:grid;
  gap:10px;
}

.mipf-checkbox{
  display:flex;
  gap:10px;
  align-items:flex-start;
  color:var(--mipf-text-soft);
}

.mipf-checkbox input{
  margin-top:4px;
}

.mipf-auth-choice{
  margin:0;
  padding:0;
  border:0;
  display:grid;
  gap:12px;
}

.mipf-auth-choice legend{
  font-weight:700;
  color:var(--mipf-text);
}

.mipf-auth-choice__grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
}

.mipf-auth-option{
  display:block;
  cursor:pointer;
}

.mipf-auth-option input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.mipf-auth-option__card{
  display:grid;
  gap:6px;
  min-height:110px;
  padding:18px 16px;
  border-radius:18px;
  border:1px solid var(--mipf-border);
  background:var(--mipf-surface);
  transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.mipf-auth-option input:checked + .mipf-auth-option__card{
  border-color:var(--mipf-primary);
  box-shadow:0 0 0 3px color-mix(in srgb, var(--mipf-primary) 16%, transparent);
  transform:translateY(-1px);
}

.mipf-auth-option__card small{
  color:var(--mipf-text-soft);
}

.mipf-auth-status{
  display:grid;
  gap:14px;
  padding:20px;
  border-radius:18px;
  border:1px solid var(--mipf-border);
  background:var(--mipf-surface-muted);
}

.mipf-auth-status--approved{
  border-color:color-mix(in srgb, var(--mipf-primary) 32%, var(--mipf-border) 68%);
}

.mipf-auth-status--pending{
  border-color:#f59e0b;
}

.mipf-auth-status--rejected{
  border-color:#ef4444;
}

.mipf-auth-status h2{
  margin:0;
}

.mipf-auth-meta{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
}

.mipf-auth-meta > div{
  display:grid;
  gap:4px;
  padding:12px 14px;
  border-radius:14px;
  background:var(--mipf-surface);
  border:1px solid var(--mipf-border);
}

.mipf-auth-meta span{
  color:var(--mipf-text-soft);
}

.mipf-auth-switch{
  margin:0;
  color:var(--mipf-text-soft);
}

@media (max-width: 980px){
  .mipf-auth-shell{
    grid-template-columns:1fr;
  }
}

@media (max-width: 640px){
  .mipf-auth-choice__grid,
  .mipf-auth-meta{
    grid-template-columns:1fr;
  }

  .mipf-auth-links,
  .mipf-auth-actions{
    flex-direction:column;
    align-items:stretch;
  }
}


.mipf-auth-subpanel{
  display:grid;
  gap:12px;
  padding:18px;
  border-radius:16px;
  border:1px solid var(--mipf-border);
  background:var(--mipf-surface);
}

.mipf-auth-subpanel--note{
  border-color:color-mix(in srgb, var(--mipf-primary) 22%, var(--mipf-border) 78%);
}

.mipf-auth-subpanel__head{
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:flex-start;
  flex-wrap:wrap;
}

.mipf-auth-subpanel h3{
  margin:0 0 4px;
}

.mipf-auth-list{
  margin:0;
  padding-left:18px;
  color:var(--mipf-text-soft);
  display:grid;
  gap:6px;
}

.mipf-auth-task-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
}

.mipf-auth-task{
  display:grid;
  gap:6px;
  padding:14px 16px;
  border-radius:14px;
  text-decoration:none;
  border:1px solid var(--mipf-border);
  background:var(--mipf-surface-muted);
}

.mipf-auth-task span{
  color:var(--mipf-text-soft);
}

.mipf-auth-task em{
  color:var(--mipf-primary);
  font-style:normal;
  font-weight:600;
}

.mipf-field-grid{
  display:grid;
  gap:12px;
}

.mipf-field-grid--2{
  grid-template-columns:repeat(2, minmax(0, 1fr));
}

@media (max-width: 640px){
  .mipf-auth-task-grid,
  .mipf-field-grid--2{
    grid-template-columns:1fr;
  }

  .mipf-auth-subpanel__head{
    flex-direction:column;
  }
}

.mipf-visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}


.mipf-prompt-discussion-panel--empty{
  background:var(--mipf-surface-muted);
  border-style:dashed;
  box-shadow:none;
  opacity:.92;
}

.mipf-prompt-discussion-panel__meta--empty{
  margin-bottom:8px;
  font-weight:600;
}

.mipf-optional{
  color:var(--mipf-text-soft);
  font-weight:400;
}

.mipf-prompt-discussion-panel__headSpacer{flex:1 1 auto}
.mipf-prompt-discussion-panel__headAction{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  padding:7px 11px;
  border-radius:999px;
  background:var(--mipf-primary);
  color:#fff;
  font-size:12px;
  font-weight:700;
  line-height:1;
  text-decoration:none;
  white-space:nowrap;
}
.mipf-prompt-discussion-panel__headAction:hover{text-decoration:none;transform:translateY(-1px)}
@media (max-width: 520px){
  .mipf-prompt-discussion-panel__head{align-items:flex-start;flex-wrap:wrap}
  .mipf-prompt-discussion-panel__headSpacer{display:none}
  .mipf-prompt-discussion-panel__headAction{width:100%;margin-top:6px}
}

/* New topic page: wider, forum-style composition */
.mipf-new-topic-page{
  width:min(calc(100% - 48px), 1280px);
  max-width:1280px;
}

.mipf-new-topic-page .entry-card{
  width:100%;
}

.mipf-new-topic-hero{
  padding:24px 28px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  background:linear-gradient(180deg, color-mix(in srgb, var(--mipf-surface) 92%, var(--mipf-surface-muted) 8%), var(--mipf-surface));
}

.mipf-new-topic-hero__copy{
  display:grid;
  gap:8px;
}

.mipf-new-topic-hero .page-title{
  margin:0;
  font-size:clamp(2rem, 3vw, 3.3rem);
}

.mipf-new-topic-hero .mipf-page-intro,
.mipf-new-topic-hero p{
  margin:0;
  max-width:760px;
  color:var(--mipf-text-soft);
  font-size:1rem;
}

.mipf-new-topic-hero__actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:10px;
}

.mipf-new-topic-layout{
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(340px, 420px);
  gap:24px;
  align-items:start;
}

.mipf-new-topic-layout--single{
  grid-template-columns:minmax(0, 1fr);
}

.mipf-new-topic-form-card{
  padding:26px;
  display:grid;
  gap:18px;
}

.mipf-new-topic-card-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  padding-bottom:14px;
  border-bottom:1px solid var(--mipf-border);
}

.mipf-new-topic-card-head h2{
  margin:10px 0 0;
  color:var(--mipf-text);
  font-size:1.45rem;
  line-height:1.2;
}

.mipf-new-topic-linked-label{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid color-mix(in srgb, var(--mipf-primary) 22%, var(--mipf-border) 78%);
  color:var(--mipf-primary);
  background:color-mix(in srgb, var(--mipf-primary) 8%, #fff 92%);
  font-size:12px;
  font-weight:700;
  white-space:nowrap;
}

.mipf-new-topic-form{
  gap:18px;
}

.mipf-new-topic-form__grid{
  gap:18px;
}

.mipf-field--full{
  grid-column:1 / -1;
}

.mipf-new-topic-page .mipf-field input[type="text"],
.mipf-new-topic-page .mipf-field select,
.mipf-new-topic-page .mipf-field textarea{
  min-height:52px;
  border-color:var(--mipf-border-strong);
}

.mipf-new-topic-page .mipf-field textarea{
  min-height:260px;
  line-height:1.55;
}

.mipf-new-topic-actions{
  display:flex;
  justify-content:flex-end;
  gap:12px;
  flex-wrap:wrap;
  padding-top:4px;
}

.mipf-new-topic-actions .mi-button{
  min-width:140px;
}

.mipf-new-topic-sidebar{
  display:grid;
  gap:16px;
  position:sticky;
  top:110px;
}

body.admin-bar .mipf-new-topic-sidebar{
  top:142px;
}

.mipf-new-topic-sidebar .mipf-linked-prompt-card{
  margin:0;
  box-shadow:var(--mipf-shadow);
}

.mipf-new-topic-sidebar .mipf-empty-card{
  box-shadow:none;
  background:var(--mipf-surface-muted);
}

.mipf-new-topic-help-card p{
  margin:8px 0 0;
  color:var(--mipf-text-soft);
}

.mipf-notice--inline-action{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:12px;
}

.mipf-notice--inline-action .mi-button{
  min-height:40px;
}

.mipf-recommended-boards{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
}

.mipf-recommended-boards .mipf-summary-chips{
  margin:0;
}

@media (max-width: 980px){
  .mipf-new-topic-layout,
  .mipf-new-topic-layout--with-prompt{
    grid-template-columns:1fr;
  }

  .mipf-new-topic-sidebar{
    position:static;
    order:-1;
  }
}

@media (max-width: 720px){
  .mipf-new-topic-page{
    width:min(calc(100% - 28px), 1280px);
  }

  .mipf-new-topic-hero,
  .mipf-new-topic-card-head{
    align-items:flex-start;
    flex-direction:column;
  }

  .mipf-new-topic-form-card,
  .mipf-new-topic-hero{
    padding:20px;
  }

  .mipf-new-topic-actions{
    justify-content:stretch;
  }

  .mipf-new-topic-actions .mi-button{
    width:100%;
  }
}

.mipf-auth-inline-notice{
  margin-top:10px;
  font-size:14px;
}

.mipf-auth-celebration{
  margin:0 0 20px;
  padding:24px;
  border:1px solid rgba(47,105,229,.18);
  border-radius:20px;
  background:linear-gradient(135deg, rgba(47,105,229,.08), rgba(47,105,229,.02));
  box-shadow:0 16px 40px rgba(17,24,39,.06);
}

.mipf-auth-celebration__eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-bottom:12px;
  padding:6px 12px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(47,105,229,.16);
  color:#2f69e5;
  font-size:13px;
  font-weight:700;
  letter-spacing:.02em;
}

.mipf-auth-celebration h2{
  margin:0 0 10px;
}

.mipf-auth-celebration p{
  margin:0;
  color:#5b6780;
}

.mipf-auth-celebration__actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:18px;
}

.mipf-auth-subpanel--danger{
  border-color:rgba(185,28,28,.22);
  background:rgba(254,242,242,.72);
}

.mipf-auth-subpanel--danger h3{
  color:#991b1b;
}

.mipf-danger-check{
  display:flex;
  align-items:flex-start;
  gap:10px;
  color:#334155;
  font-weight:600;
}

.mipf-danger-check input{
  margin-top:3px;
}

.mi-button--danger{
  background:#b91c1c;
  border-color:#b91c1c;
  color:#fff;
}

.mi-button--danger:hover,
.mi-button--danger:focus{
  background:#991b1b;
  border-color:#991b1b;
  color:#fff;
}

/* Account status layout hardening */
.mipf-auth-shell,
.mipf-auth-shell__aside,
.mipf-auth-shell__main{
  min-width:0;
  max-width:100%;
}

.mipf-auth-shell--status{
  grid-template-columns:minmax(0, 1fr);
  width:min(100%, 760px);
  margin-left:auto;
  margin-right:auto;
}

.mipf-auth-shell--status .mipf-auth-shell__aside{
  gap:10px;
}

.mipf-auth-shell--status .mipf-auth-benefits,
.mipf-auth-shell--status .mipf-auth-links{
  display:none;
}

.mipf-auth-shell--status .entry-title--small{
  font-size:clamp(32px, 5vw, 48px);
  line-height:1.08;
}

.mipf-auth-shell--status .mipf-hint{
  margin-bottom:4px;
}

.mipf-auth-shell--status .mipf-auth-status,
.mipf-auth-shell--status .mipf-auth-subpanel,
.mipf-auth-shell--status .mipf-notice{
  width:100%;
  max-width:100%;
  box-sizing:border-box;
}

@media (max-width: 640px){
  .mipf-auth-shell--status{
    width:100%;
  }
}

/* Account status final layout fix */
.mipf-auth-page{
  width:100%;
  max-width:none;
  justify-items:center;
  align-items:start;
}

.mipf-auth-page .entry-card.mipf-auth-shell--status{
  width:min(calc(100vw - 48px), 1040px) !important;
  max-width:1040px !important;
  margin:36px auto !important;
  padding:32px !important;
  box-sizing:border-box;
  grid-template-columns:minmax(0, 1fr) !important;
}

.mipf-auth-shell--status .mipf-auth-shell__aside,
.mipf-auth-shell--status .mipf-auth-shell__main{
  width:min(100%, 860px) !important;
  max-width:860px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  box-sizing:border-box;
}

.mipf-auth-shell--status .mipf-auth-status{
  padding:26px !important;
}

.mipf-auth-shell--status .mipf-auth-meta{
  grid-template-columns:repeat(2, minmax(0, 1fr));
}

.mipf-auth-shell--status .mipf-field-grid--2{
  grid-template-columns:repeat(2, minmax(0, 1fr));
}

@media (max-width: 720px){
  .mipf-auth-page .entry-card.mipf-auth-shell--status{
    width:calc(100vw - 24px) !important;
    padding:20px !important;
    margin:20px auto !important;
  }

  .mipf-auth-shell--status .mipf-auth-meta,
  .mipf-auth-shell--status .mipf-field-grid--2{
    grid-template-columns:1fr;
  }
}

/* Admin-configurable layout system */
body.mipf-plugin-page .page-shell{
  box-sizing:border-box;
}

body.mipf-plugin-page.mipf-layout--fixed .page-shell{
  width:min(calc(100vw - (var(--mipf-side-padding, 24px) * 2)), var(--mipf-container-max, 1280px)) !important;
  max-width:var(--mipf-container-max, 1280px) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

body.mipf-plugin-page.mipf-layout--full .page-shell{
  width:calc(100vw - (var(--mipf-side-padding, 24px) * 2)) !important;
  max-width:none !important;
  margin-left:calc(50% - 50vw + var(--mipf-side-padding, 24px)) !important;
  margin-right:calc(50% - 50vw + var(--mipf-side-padding, 24px)) !important;
}

body.mipf-plugin-page.mipf-layout--theme .page-shell{
  width:auto;
}

body.mipf-plugin-page .entry-card,
body.mipf-plugin-page .mipf-board-card,
body.mipf-plugin-page .mipf-topic-card,
body.mipf-plugin-page .mipf-reply-card,
body.mipf-plugin-page .mipf-empty-card,
body.mipf-plugin-page .mipf-auth-status,
body.mipf-plugin-page .mipf-auth-subpanel{
  box-sizing:border-box;
}

body.mipf-plugin-page .mipf-board-card,
body.mipf-plugin-page .mipf-topic-card,
body.mipf-plugin-page .mipf-reply-card,
body.mipf-plugin-page .mipf-empty-card{
  padding:var(--mipf-card-padding, 22px);
}

body.mipf-plugin-page .mipf-auth-status,
body.mipf-plugin-page .mipf-auth-subpanel{
  padding:var(--mipf-panel-padding, 28px);
}

body.mipf-account-layout--one .mipf-auth-shell,
body.mipf-account-layout--one .mipf-auth-page .entry-card.mipf-auth-shell--status{
  grid-template-columns:minmax(0, 1fr) !important;
}

body.mipf-account-layout--one .mipf-auth-page .entry-card.mipf-auth-shell--status{
  width:100% !important;
  max-width:var(--mipf-container-max, 1280px) !important;
  margin:36px auto !important;
}

body.mipf-account-layout--one .mipf-auth-shell--status .mipf-auth-shell__aside,
body.mipf-account-layout--one .mipf-auth-shell--status .mipf-auth-shell__main{
  width:min(100%, 980px) !important;
  max-width:980px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

body.mipf-account-layout--two .mipf-auth-shell{
  grid-template-columns:minmax(0, 1fr) minmax(320px, 520px) !important;
}

body.mipf-account-layout--two .mipf-auth-page .entry-card.mipf-auth-shell--status{
  width:100% !important;
  max-width:var(--mipf-container-max, 1280px) !important;
  grid-template-columns:minmax(280px, .85fr) minmax(420px, 1.15fr) !important;
}

body.mipf-account-layout--two .mipf-auth-shell--status .mipf-auth-shell__aside,
body.mipf-account-layout--two .mipf-auth-shell--status .mipf-auth-shell__main{
  width:100% !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
}

body.mipf-account-layout--two .mipf-auth-shell--status .mipf-auth-benefits,
body.mipf-account-layout--two .mipf-auth-shell--status .mipf-auth-links{
  display:grid;
}

body.mipf-account-layout--two .mipf-auth-shell--status .mipf-auth-links{
  display:flex;
}

@media (max-width: 980px){
  body.mipf-plugin-page .page-shell,
  body.mipf-plugin-page.mipf-layout--fixed .page-shell,
  body.mipf-plugin-page.mipf-layout--full .page-shell{
    width:calc(100vw - 24px) !important;
    max-width:calc(100vw - 24px) !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  body.mipf-account-layout--two .mipf-auth-shell,
  body.mipf-account-layout--two .mipf-auth-page .entry-card.mipf-auth-shell--status{
    grid-template-columns:1fr !important;
  }
}
