:root{--page-background:#edf5fc;--blue:#0864d7;--blueSoft:#edf5ff;--text:#172033;--muted:#647084;--line:#d6dde7;--lineDark:#bdc8d6;--bg:#f5f7fa;--danger:#b42318;--dangerSoft:#fff1f0;--success:#078A55;--successSoft:#ecfdf3;--warning:#4f6f91;--warningSoft:#fffaeb}body{margin:0;font-family:system-ui,-apple-system,"Segoe UI","Noto Sans JP",sans-serif;font-size:16px;line-height:1.65}a{color:var(--blue)}.detailMain{padding:20px}.contentPanel, .eventOverview{border:1px solid var(--line);border-radius:7px;background:#fff}.contentPanel{padding:18px;margin-bottom:16px}.panelTitle{display:flex;align-items:center;gap:8px;margin:0 0 14px;font-size:1.15rem}.panelTitle span{color:var(--blue)}.panelLead{margin:-8px 0 14px;color:var(--muted);font-size:.9rem}.backLink{display:inline-flex;margin-bottom:14px;text-decoration:none;font-weight:700}.eventOverview{padding:18px;margin-bottom:14px}.eventOverviewTitle{display:flex;align-items:center;gap:12px}.eventRound{display:inline-flex;align-items:center;justify-content:center;min-width:66px;min-height:42px;border-radius:5px;color:#fff;font-weight:800;font-size:.78rem}.eventOverview h1{margin:0 0 3px;font-size:1.3rem}.eventFormatLabel{color:var(--blue);font-size:.84rem;font-weight:700}.eventFacts{margin:18px 0 0;border:1px solid var(--line);border-radius:5px;overflow:hidden}.eventFacts>div{display:grid;grid-template-columns:110px 1fr;border-bottom:1px solid var(--line)}.eventFacts>div:last-child{border-bottom:0}.eventFacts dt, .eventFacts dd{margin:0;padding:11px 12px}.eventFacts dt{font-weight:700}.eventAbout{margin-top:18px}.eventAbout h2{margin:0 0 6px;font-size:1rem}.eventAbout p{margin:0;white-space:normal}label{display:block;margin:16px 0 6px;font-weight:700}.help{display:block;color:var(--muted);font-size:.83rem;font-weight:400;margin-top:2px}input, textarea, select{width:100%;min-height:44px;padding:9px 11px;border:1px solid var(--lineDark);color:var(--text)}textarea{min-height:100px;resize:vertical}.radioCards{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.radioCard{position:relative;margin:0}.radioCard input{position:absolute;opacity:0}.radioCard span{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px;border:1px solid var(--lineDark);cursor:pointer;font-weight:700}button, .button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:8px 15px;border:1px solid var(--blue);color:#fff;text-decoration:none;font-weight:700;cursor:pointer}.danger, .button.danger, button.danger{color:#fff}.small, .button.small, button.small{min-height:34px;padding:5px 9px;font-size:.84rem}.primaryWide{width:100%;margin-top:18px}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.statusMessage{display:flex;gap:10px;align-items:center;margin:14px 0;padding:12px 14px;border:1px solid #b9dfc8;border-left:4px solid var(--success);border-radius:5px;background:var(--successSoft);color:var(--success);font-weight:700}.statusError{border-color:#efc6c3;border-left-color:var(--danger);background:var(--dangerSoft);color:var(--danger)}.statusIcon{display:none}.tableWrap{overflow-x:auto;border:1px solid var(--line)}table{width:100%;min-width:560px;border-collapse:collapse;background:#fff}th, td{padding:10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;overflow-wrap:anywhere}th{font-size:.84rem}tbody tr:last-child td{border-bottom:0}.countChip{display:inline-flex;justify-content:center;min-width:54px;padding:3px 7px;border-radius:999px;font-size:.78rem;font-weight:700}.countYes{background:#e8f7ee;color:#078A55}.countWatch{background:#f1edff;color:#6741c7}.memberEdit{min-width:52px!important}.empty{padding:24px;text-align:center;color:var(--muted)}.sectionHead{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.sectionHead p{margin:2px 0 0;color:var(--muted)}.loginBox{margin:0 auto}.sectionHead{margin-bottom:14px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.grid.three{grid-template-columns:repeat(3,1fr)}.datetimeSelects{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.badge, .formatBadge{display:inline-flex;padding:3px 8px;background:var(--blueSoft);color:var(--blue);font-size:.76rem;font-weight:700}.badge.private{background:#eef1f5;color:#596579}.formatLine{margin-bottom:5px}.tableSection{margin-top:16px}@media (min-width:900px){.adminPage .wrap{display:grid;align-items:start}.adminPage .statusMessage, .adminPage .card{grid-column:2}.adminPage>main.wrap>section.card{grid-column:2}.adminPage .loginBox{grid-column:1/-1;width:100%}}@media (max-width:640px){.detailMain{padding:14px}.contentPanel, .eventOverview{padding:15px}.radioCards{grid-template-columns:repeat(2,1fr)}.eventFacts>div{grid-template-columns:92px 1fr}.sectionHead{display:block}.grid, .grid.three{grid-template-columns:1fr}.actions{display:grid}.actions>*{width:100%}}@media (min-width:900px){body{font-size:16px;background:#edf1f6}.detailMain{padding:30px 32px 36px}.contentPanel{padding:24px;margin-bottom:20px;border-radius:9px}.panelTitle{font-size:1.25rem;margin-bottom:18px}.panelLead{font-size:.95rem}.eventOverview{padding:26px;border-radius:9px}.eventOverview h1{font-size:1.65rem}.eventOverviewTitle{gap:16px}.eventRound{min-width:78px;min-height:48px}.eventFacts{display:grid;grid-template-columns:1fr 1fr;margin-top:22px}.eventFacts>div{grid-template-columns:120px 1fr}.eventFacts>div:nth-child(odd){border-right:1px solid var(--line)}.eventFacts>div:last-child{border-bottom:1px solid var(--line)}.registrationPanel form{width:100%;max-width:none}.memberPanel table{min-width:760px}th, td{padding:12px 14px}.adminPage .wrap{width:min(calc(100% - 40px),1080px);grid-template-columns:270px minmax(0,1fr);gap:22px;padding:22px 0 34px}.adminPage .card{padding:26px 28px;margin-bottom:20px;border-radius:9px;box-shadow:0 5px 18px rgba(40,55,80,.045)}.adminPage .statusMessage{margin:0 0 20px}.sectionHead{align-items:center;margin-bottom:20px}.sectionHead h2{margin:0;font-size:1.25rem}.adminPage form>.grid{gap:18px 22px}.grid.three{gap:18px}.datetimeSelects{grid-template-columns:repeat(5,minmax(82px,1fr));gap:8px}.battleFormat{max-width:none;grid-template-columns:repeat(3,minmax(0,1fr))}.loginBox{max-width:560px!important;padding:30px!important}.tableWrap{border-radius:7px}table{min-width:760px}}@media (min-width:1200px){.adminPage .card form{max-width:1050px}.adminPage .card .tableWrap{max-width:none}}@media (min-width:900px) and (max-width:1100px){.detailMain{padding-left:24px;padding-right:24px}.adminPage .wrap{grid-template-columns:230px minmax(0,1fr)}.adminPage .card{padding:22px}.datetimeSelects{grid-template-columns:repeat(3,1fr)}}:root{--goldSoft:#fff8df;}.resultSummary{margin:16px 0 0;padding:14px 16px;border-left:4px solid var(--gold);background:#fff}.adminBadgeStack{display:flex;gap:6px;align-items:flex-end;flex-direction:column}.resultBadge{background:var(--goldSoft);color:#4d6f90}@media (max-width:900px){}:root{--ink:#10233f;}.adminPage{background-size:24px 24px}.adminPage .sectionHead{padding-bottom:12px;border-bottom:2px solid var(--ink)}.adminPage label{color:var(--ink)}.adminPage input, .adminPage textarea, .adminPage select{min-height:48px;border:2px solid #aeb9c8;border-radius:0;background:#fff}.adminPage textarea{line-height:1.7}.adminPage input:focus, .adminPage textarea:focus, .adminPage select:focus{outline:3px solid rgba(244,200,74,.45);border-color:var(--ink)}.adminPage button, .adminPage .button{min-height:46px}.adminPage .badge, .adminPage .formatBadge{border-radius:0}@media (max-width:640px){body{font-size:16px}.adminPage .wrap{padding:10px}.adminPage .card{padding:16px;margin-bottom:12px}.adminPage .sectionHead{display:block}.adminPage .sectionHead>.button{width:100%;margin-top:10px}.grid, .grid.three{grid-template-columns:1fr!important;gap:0}.datetimeSelects{grid-template-columns:1fr 1fr 1fr;gap:8px}.datetimeSelects select{min-height:52px;padding:8px 5px}.adminPage label{margin-top:18px}.adminPage input, .adminPage textarea, .adminPage select{min-height:52px;font-size:16px;padding:12px}.adminPage textarea{min-height:140px}.adminPage .radioCard span{min-height:52px;padding:12px}.adminPage .actions{position:sticky;bottom:0;z-index:20;margin:22px -16px -16px;padding:12px 16px;background:rgba(255,255,255,.96);border-top:2px solid var(--ink);backdrop-filter:blur(6px)}.adminPage .actions button, .adminPage .actions .button{width:100%;min-height:54px}.adminBadgeStack{margin-top:8px}.tableWrap{margin-left:-16px;margin-right:-16px;border-left:0;border-right:0;border-radius:0}}:root{--portalBlue:#315fa8;--portalPaper:#f5f7fa;--portalLine:#d8dee8;--portalText:#1e2938;}*{box-sizing:border-box}html{scroll-behavior:smooth}body.publicPage{margin:0;background:var(--portalPaper);color:var(--portalText);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP",sans-serif}.adminPage{background:#eef2f7}.adminPage .wrap{max-width:1380px;margin:auto}.adminPage .card{margin-top:18px}.adminPage .sectionHead h2{font-size:1.35rem}.adminPage input, .adminPage select, .adminPage textarea{border-radius:4px;border-color:#c6cfdb}.adminPage input:focus, .adminPage select:focus, .adminPage textarea:focus{border-color:var(--portalBlue);box-shadow:0 0 0 3px rgba(49,95,168,.12)}.adminPage button, .adminPage .button{border-radius:4px}@media (max-width:820px){.adminPage .wrap{padding:0}.adminPage .card{margin:12px;padding:20px 16px}.adminPage .grid, .adminPage .grid.three{grid-template-columns:1fr}.adminPage .datetimeSelects{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.adminPage input, .adminPage select{min-height:52px;font-size:16px}.adminPage textarea{font-size:16px;min-height:130px}.adminPage .radioCard span{min-height:50px;display:flex;align-items:center}.adminPage .actions{position:sticky;bottom:0;z-index:4;margin:22px -16px -20px;padding:12px 16px;background:rgba(255,255,255,.96);border-top:1px solid var(--portalLine)}.adminPage .actions button{width:100%;min-height:52px}}.communityHome{--cNavy:#071e43;--cGold:#9bb7d2;--cPaper:#ffffff;--cRed:#8f1716;--cBlue:#0c3475;--cGreen:#135b37;margin:0;background:#ffffff;color:#101a2b;font-family:system-ui,-apple-system,"Segoe UI","Noto Sans JP",sans-serif}.ornateShell{width:min(100% - 28px,1080px);margin:14px auto;border:2px solid var(--cNavy);position:relative}.ornateShell:before, .ornateShell:after{content:"";position:absolute;inset:8px;pointer-events:none;border:1px solid rgba(189,143,53,.55)}.ornateShell:after{inset:15px}.communityHeader{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:96px;padding:16px 36px;border-bottom:1px solid var(--cGold)}.communityBrand{display:flex;align-items:center;gap:16px;text-decoration:none;color:var(--cNavy)}.communityBrand strong{display:block;font-family:serif;font-size:clamp(1.25rem,2.1vw,2rem);letter-spacing:.04em}.communityBrand small{display:block;font-size:.72rem;letter-spacing:.14em}.brandEmblem{width:62px;height:62px;display:block;border-radius:50%;border:7px solid var(--cNavy);background:linear-gradient(#b72a24 0 45%,#162948 46% 54%,#f8f5e9 55%);position:relative}.brandEmblem:after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:#fff;border:5px solid var(--cNavy);left:50%;top:50%;transform:translate(-50%,-50%)}.communityNav{display:flex;align-items:center;gap:8px}.communityNav a{padding:13px 16px;color:var(--cNavy);text-decoration:none;font-weight:800;border-bottom:2px solid transparent}.communityNav .loginLink{margin-left:12px;padding:13px 24px;color:#fff;background:var(--cNavy);border:1px solid var(--cGold);box-shadow:inset 0 0 0 2px rgba(255,255,255,.08)}.communityMain{position:relative;z-index:1;padding:28px 38px 34px;background-size:auto,36px 36px}.featureGrid, .homeColumns{width:100%;max-width:1160px;margin-left:auto;margin-right:auto}.featureGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.featureCard{position:relative;min-height:318px;padding:24px 26px 22px;text-align:center;background:rgba(255,255,255,.9);border:1px solid var(--cGold);box-shadow:0 7px 18px rgba(19,38,67,.12),inset 0 0 0 5px #fff,inset 0 0 0 6px rgba(189,143,53,.45);overflow:hidden}.featureCard:before, .featureCard:after{content:"";position:absolute;width:60px;height:60px;border-color:var(--cGold);opacity:.75}.featureCard:before{left:10px;bottom:10px;border-left:2px solid;border-bottom:2px solid}.featureCard:after{right:10px;top:10px;border-right:2px solid;border-top:2px solid}.featureCard .cornerRibbon{position:absolute;left:-36px;top:-36px;width:92px;height:92px;transform:rotate(45deg);background:currentColor;opacity:.95}.featureCard h2{font-family:serif;margin:13px 0 8px;font-size:1.72rem;letter-spacing:.06em}.featureCard p{min-height:46px;margin:0 0 15px;line-height:1.65;font-weight:600}.featurePrimary, .featureSecondary{display:flex;align-items:center;justify-content:center;min-height:44px;margin-top:9px;text-decoration:none;font-weight:900;letter-spacing:.04em}.featurePrimary{color:#fff;background:currentColor;border:1px solid var(--cGold);box-shadow:inset 0 0 0 2px rgba(255,255,255,.12)}.featurePrimary::first-line{color:#fff}.featureSecondary{color:currentColor;border:1px solid currentColor;background:#fff}.featureEvent{color:var(--cRed)}.featureResult{color:var(--cBlue)}.featureBuild{color:var(--cGreen)}.featureCard .featurePrimary{color:#fff}.homeColumns{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}.feedPanel{border:1px solid var(--cGold);background:rgba(255,255,255,.94);box-shadow:0 7px 17px rgba(19,38,67,.1);position:relative}.feedPanel:after{content:"";position:absolute;inset:5px;pointer-events:none;border:1px solid rgba(189,143,53,.28)}.feedPanel>header{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;padding:12px 20px;color:#fff}.feedEvents>header{background:linear-gradient(90deg,#7f100f,#a72620)}.feedContent>header{background:linear-gradient(90deg,#08275c,#0c3b80)}.feedPanel header h2{margin:0;font-family:serif;font-size:1.25rem}.feedPanel header a{color:inherit;text-decoration:none;font-size:.8rem;font-weight:800}.feedList{position:relative;z-index:1;padding:0 18px}.feedRow{display:grid;grid-template-columns:58px auto minmax(0,1fr) 20px;align-items:center;gap:12px;min-height:92px;padding:12px 0;border-bottom:1px solid #ded8ca;color:#111b2d;text-decoration:none}.feedRow:last-child{border-bottom:0}.feedRow time{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60px;border:1px solid #ddd4bf;background:#f6faff}.feedRow time b{font-size:.95rem}.feedRow time small{font-weight:800}.feedTag{padding:4px 7px;color:#fff;background:var(--cRed);font-size:.68rem;font-weight:900;white-space:nowrap}.resultTag{background:var(--cBlue)}.feedCopy{display:flex;flex-direction:column;gap:4px;min-width:0}.feedCopy strong{overflow-wrap:anywhere}.feedCopy small{color:#596275}.feedArrow{font-size:1.7rem;color:var(--cNavy)}.panelMore{position:relative;z-index:1;display:block;padding:13px;text-align:center;border-top:1px solid #ded8ca;color:inherit;text-decoration:none;font-weight:800}.homeEmpty{position:relative;z-index:1;margin:0;padding:30px;text-align:center;color:#687287}.communityFooter p{color:#d8c492}.subpageShell{width:min(100% - 28px,1040px);margin:28px auto;padding:28px;background:#f6faff;border:2px solid var(--cNavy);box-shadow:0 14px 40px rgba(8,28,61,.18)}@media (max-width:900px){.ornateShell{width:100%;margin:0;border-left:0;border-right:0}.communityHeader{min-height:74px;padding:10px 16px;flex-wrap:wrap}.communityBrand{gap:10px}.communityBrand strong{max-width:230px;font-size:1rem;line-height:1.3}.communityBrand small{display:none}.brandEmblem{width:48px;height:48px;border-width:5px}.communityNav{display:grid;grid-template-columns:repeat(3,1fr);width:100%;max-height:0;overflow:hidden;transition:max-height .2s}.communityNav a{padding:10px 6px;text-align:center;font-size:.82rem;border-top:1px solid #e4dbc7}.communityNav .loginLink{grid-column:1/-1;margin:0}.communityMain{padding:18px 12px 24px}.featureGrid{grid-template-columns:1fr;gap:14px}.featureCard{min-height:auto;padding:20px 20px 18px;text-align:left;display:grid;grid-template-columns:70px minmax(0,1fr);column-gap:16px}.featureCard h2{margin:5px 0 3px;font-size:1.4rem}.featureCard p{min-height:0;margin:0 0 14px;font-size:.85rem}.featurePrimary, .featureSecondary{grid-column:1/-1;min-height:42px;margin-top:8px}.homeColumns{grid-template-columns:1fr;gap:14px;margin-top:14px}.feedRow{grid-template-columns:50px auto minmax(0,1fr) 15px;gap:8px;min-height:80px}.feedList{padding:0 12px}.feedTag{font-size:.6rem}.feedCopy strong{font-size:.86rem}.feedCopy small{font-size:.72rem}.communityFooter{padding:18px 12px}.subpageShell{width:100%;margin:0;padding:16px;border-left:0;border-right:0}}:root{--navy:#102b4f;--navyDeep:#081c35;--gold:#9bb7d2;--goldLight:#ddc98c;}body{background-color:#eee9dd;background-image:radial-gradient(circle at 20% 0,rgba(185,147,69,.08),transparent 32%),linear-gradient(90deg,rgba(16,43,79,.025) 1px,transparent 1px),linear-gradient(rgba(16,43,79,.025) 1px,transparent 1px);background-size:auto,28px 28px,28px 28px;color:#172033}.detailMain, .subpageShell{position:relative;z-index:1;width:min(100%,980px);margin:0 auto;padding:28px}.contentPanel, .eventOverview, .memberEditPage .card{border:1px solid var(--gold);box-shadow:inset 0 0 0 4px #fff,inset 0 0 0 5px rgba(185,147,69,.35),0 8px 18px rgba(16,43,79,.06);background:linear-gradient(180deg,#ffffff,#fbf5e8);border-radius:4px}.eventOverview, .contentPanel{padding:24px}.eventRound{background:linear-gradient(180deg,#1b467b,var(--navy));border:1px solid var(--goldLight);box-shadow:inset 0 0 0 2px rgba(255,255,255,.12)}.eventOverview h1, .panelTitle{color:var(--navy);font-family:Georgia,"Yu Mincho",serif}.eventFacts{border-color:#d8c99f}.eventFacts>div{border-color:#e5dac0}.eventFacts dt{background:#f3ead7;color:var(--navy)}input, textarea, select{border-color:#b8cde0;background:#ffffff;border-radius:3px}input:focus, textarea:focus, select:focus{border-color:var(--gold);outline:3px solid rgba(185,147,69,.18)}button, .button{border-radius:3px;background:linear-gradient(180deg,#1c477c,var(--navy));border-color:var(--gold);box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)}.button.light, button.light{background:#fffaf0;color:var(--navy);border-color:var(--gold)}.primaryWide{min-height:48px}.radioCard span{border-color:#b8cde0;border-radius:3px;background:#ffffff}.radioCard input:checked+span{color:var(--navy);border-color:var(--gold);background:#f6ecd2;box-shadow:inset 0 0 0 2px #fff}.tableWrap{border-color:var(--gold);border-radius:3px}th{background:var(--navy);color:#fff}td{background:#ffffff}.memberPanel .tableWrap{box-shadow:inset 0 0 0 3px #fff}.communityFooter{position:relative;z-index:1;padding:20px 24px;background:linear-gradient(180deg,#12365f,var(--navyDeep));border-top:3px double var(--gold);color:#eee4ca;text-align:center}.communityFooter p{margin:10px 0 0;font-size:.82rem}.adminPage{background-color:#eee9dd;background-image:radial-gradient(circle at 10% 0,rgba(185,147,69,.08),transparent 36%)}.adminPage .wrap{width:min(calc(100% - 28px),1320px)}.adminPage .card{border:1px solid var(--gold);border-radius:4px;background:linear-gradient(180deg,#ffffff,#faf2e3);box-shadow:inset 0 0 0 4px #fff,inset 0 0 0 5px rgba(185,147,69,.28),0 8px 20px rgba(16,43,79,.08)}.sectionHead{padding-bottom:12px;border-bottom:1px solid #dccb9d}.sectionHead h2{margin:0;color:var(--navy);font-family:Georgia,"Yu Mincho",serif}.badge, .formatBadge{border:1px solid #b8cde0;border-radius:3px}.loginBox{max-width:560px}.loginBox:before{content:"投稿・管理";display:block;margin:-4px 0 12px;color:var(--navy);font-family:Georgia,"Yu Mincho",serif;font-size:1.45rem;font-weight:800}.memberEditPage .wrap{width:min(calc(100% - 28px),820px);margin:18px auto}.memberEditPage .card{margin-top:14px}@media (max-width:760px){.detailMain, .subpageShell{padding:16px}.eventOverview, .contentPanel{padding:18px}.adminPage .wrap{width:100%;padding:10px}.datetimeSelects{grid-template-columns:repeat(2,1fr)}.memberEditPage .wrap{width:100%;margin:0;padding:10px}}:root{
  --communityNavy:#102b4f;
  --communityNavyDeep:#081c35;
  --communityGold:#9bb7d2;

}.memberEditPage .wrap, .adminPage .wrap{
  width:min(calc(100% - 32px),1240px);
  max-width:1240px;
  margin:18px auto;
}.publicPage .detailMain, .publicPage .subpageShell{
  padding:28px 32px 36px;
}.publicPage .eventOverview, .publicPage .contentPanel, .memberEditPage .card, .adminPage .card{
  position:relative;
  border:1px solid var(--communityGold);
  border-radius:0;
  background:rgba(255,255,255,.96);
  box-shadow:0 7px 17px rgba(19,38,67,.08);
}.publicPage .eventOverview:after, .publicPage .contentPanel:after, .memberEditPage .card:after, .adminPage .card:after{
  content:"";
  position:absolute;
  inset:5px;
  z-index:0;
  pointer-events:none;
  border:1px solid rgba(189,143,53,.25);
}.publicPage .eventOverview>*, .publicPage .contentPanel>*, .memberEditPage .card>*, .adminPage .card>*{
  position:relative;
  z-index:1;
}.publicPage .eventOverview, .publicPage .contentPanel, .memberEditPage .card, .adminPage .card{
  padding:26px 28px;
  margin-bottom:22px;
}.publicPage .panelTitle, .adminPage .sectionHead h2, .memberEditPage .sectionHead h2{
  color:var(--communityNavy);
  font-family:Georgia,"Yu Mincho",serif;
  font-weight:800;
}.publicPage .panelTitle, .adminPage .sectionHead, .memberEditPage .sectionHead{
  padding-bottom:12px;
  border-bottom:3px double var(--communityGold);
}.publicPage .panelLead, .adminPage .sectionHead p, .memberEditPage .sectionHead p{
  color:#6d6a62;
}.publicPage label, .adminPage label, .memberEditPage label{
  color:var(--communityNavy);
  font-weight:800;
}.publicPage input, .publicPage textarea, .publicPage select, .adminPage input, .adminPage textarea, .adminPage select, .memberEditPage input, .memberEditPage textarea, .memberEditPage select{
  min-height:48px;
  border:1px solid #b8cde0;
  border-radius:2px;
  background:#ffffff;
}.publicPage input:focus, .publicPage textarea:focus, .publicPage select:focus, .adminPage input:focus, .adminPage textarea:focus, .adminPage select:focus, .memberEditPage input:focus, .memberEditPage textarea:focus, .memberEditPage select:focus{
  border-color:var(--communityGold);
  outline:3px solid rgba(189,143,53,.18);
  box-shadow:none;
}.publicPage button, .publicPage .button, .adminPage button, .adminPage .button, .memberEditPage button, .memberEditPage .button{
  min-height:46px;
  border:1px solid var(--communityGold);
  border-radius:2px;
  background:linear-gradient(180deg,#173d6b,var(--communityNavy));
  color:#fff;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.16);
}.publicPage .button.light, .publicPage button.light, .adminPage .button.light, .adminPage button.light, .memberEditPage .button.light, .memberEditPage button.light{
  background:#fffaf0;
  color:var(--communityNavy);
}.publicPage .radioCard span, .adminPage .radioCard span, .memberEditPage .radioCard span{
  min-height:48px;
  border-color:#b8cde0;
  border-radius:2px;
  background:#ffffff;
}.publicPage .radioCard input:checked+span, .adminPage .radioCard input:checked+span, .memberEditPage .radioCard input:checked+span{
  border-color:var(--communityGold);
  background:#f5ecd4;
  color:var(--communityNavy);
  box-shadow:inset 0 0 0 2px #fff;
}.publicPage table, .adminPage table, .memberEditPage table{
  border:1px solid var(--communityGold);
}.publicPage th, .adminPage th, .memberEditPage th{
  background:var(--communityNavy);
  color:#fff;
}.adminPage .wrap{
  display:block!important;
  padding:0;
}.adminPage .statusMessage, .adminPage .card{
  width:100%;
  margin-left:0;
  margin-right:0;
}.adminPage .sectionHead{
  align-items:center;
  margin-bottom:22px;
}.adminPage .grid{
  gap:18px 22px;
}.adminPage .datetimeSelects{
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:8px;
}.adminPage .loginBox{
  margin:40px auto;
}.memberEditPage .wrap{
  padding:0;
}.memberEditPage .card{
  padding:28px 30px;
}.publicPage .communityFooter{
  padding:22px 30px;
  background:linear-gradient(180deg,#12365f,var(--communityNavyDeep));
  border-top:3px double var(--communityGold);
  color:#eee4ca;
}@media (max-width:900px){.memberEditPage .wrap, .adminPage .wrap{width:100%;margin:0}.publicPage .detailMain, .publicPage .subpageShell{padding:18px 14px 26px}.adminPage .card, .memberEditPage .card{margin:12px;padding:20px 16px}.adminPage .datetimeSelects{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.publicPage .eventOverview, .publicPage .contentPanel{padding:20px 16px}.adminPage .actions, .memberEditPage .actions{position:sticky;bottom:0;z-index:30;margin:24px -16px -16px;padding:12px 16px;background:rgba(255,253,247,.96);border-top:1px solid var(--communityGold);backdrop-filter:blur(7px)}}.postPage{color:#17233a}.postPage .communityHeader{position:relative}.postMain{display:grid;gap:20px;padding-top:22px;padding-bottom:34px}.postSubButton{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:8px 14px;border:1px solid var(--gold);background:#fffaf0;color:var(--navy);text-decoration:none;font-weight:800}.postFormCard{position:relative;padding:30px;border:1px solid var(--gold);background:#fff;box-shadow:inset 0 0 0 5px #fff,inset 0 0 0 6px rgba(189,143,53,.24),0 8px 18px rgba(16,43,79,.08)}.postFormCard:before, .postFormCard:after{content:"";position:absolute;width:26px;height:26px;border-color:var(--gold);pointer-events:none}.postFormCard:before{top:9px;left:9px;border-top:2px solid;border-left:2px solid}.postFormCard:after{right:9px;bottom:9px;border-right:2px solid;border-bottom:2px solid}.postSectionHead{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 0 18px;margin-bottom:24px;border-bottom:3px double var(--gold)}.postSectionHead>div{display:flex;align-items:center;gap:14px}.postSectionIcon{display:grid;place-items:center;width:50px;height:50px;border:1px solid var(--gold);background:var(--navy);color:#fff;font-size:1.45rem}.postSectionHead h2{margin:0;color:var(--navy);font-family:Georgia,"Yu Mincho",serif;font-size:1.42rem}.postSectionHead p{margin:3px 0 0;color:#726c60;font-size:.9rem}.postForm{position:relative;z-index:1;display:grid;gap:18px}.postFormGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.formBlock{padding:16px 18px;border:1px solid #ded5c1;background:#fffdf8}.formBlock>label:first-child{margin:0 0 8px}.postPage input, .postPage textarea, .postPage select{width:100%;min-height:50px;padding:11px 13px;border:1px solid #b8cde0;border-radius:0;background:#fff;color:#17233a}.postPage textarea{resize:vertical}.postPage input:focus, .postPage textarea:focus, .postPage select:focus{outline:3px solid rgba(189,143,53,.18);border-color:var(--gold)}.postPage .radioCards{grid-template-columns:repeat(2,minmax(0,1fr))}.postPage .radioCard span{min-height:50px;border-radius:0}.postPage .datetimeSelects{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.publishBlock{background:#f7efdd}.postActions{display:flex;justify-content:flex-end;padding-top:4px}.postActions button, .postPicker button{min-width:240px;min-height:52px;border:1px solid var(--gold);border-radius:0;background:linear-gradient(180deg,#173d6b,var(--navy));color:#fff;font-weight:900;cursor:pointer}.postEvent .postActions button{background:linear-gradient(180deg,#c44d46,#9f2d2d)}.postResult .postActions button{background:linear-gradient(180deg,#3676bf,#24558f)}.postPicker{display:grid;grid-template-columns:minmax(0,1fr) 190px;align-items:end;gap:14px;margin-bottom:20px}.postPicker .formBlock{margin:0}.postPicker button{min-width:0}.selectedPost{display:flex;align-items:center;gap:14px;margin:0 0 20px;padding:15px 18px;border:1px solid var(--gold);background:#f5ecd7}.selectedPost>span{padding:5px 9px;background:var(--navy);color:#fff;font-size:.75rem;font-weight:900}.selectedPost div{display:grid}.selectedPost small{color:#6d675b}.postEmpty{padding:28px;border:1px dashed #b8cde0;background:#fffaf0;text-align:center;color:#6d675b}.postPage .statusMessage{margin:0;border-radius:0}.postPage .communityFooter{margin-top:0}@media (max-width:900px){.postPage .communityHeader{flex-wrap:wrap}.postMain{padding:16px}.postPage .datetimeSelects{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:640px){.postMain{padding:12px}.postFormCard{padding:20px 15px}.postSectionHead{display:block}.postSectionHead>div{align-items:flex-start}.postSectionIcon{width:44px;height:44px;flex:0 0 44px}.postSectionHead h2{font-size:1.16rem}.postSubButton{width:100%;margin-top:14px}.postFormGrid{grid-template-columns:1fr}.formBlock{padding:14px 12px}.postPage .datetimeSelects{grid-template-columns:repeat(2,minmax(0,1fr))}.postPicker{grid-template-columns:1fr}.postActions{position:sticky;bottom:0;z-index:20;margin:4px -15px -20px;padding:12px 15px;background:rgba(255,253,247,.96);border-top:1px solid var(--gold)}.postActions button{width:100%;min-width:0}.selectedPost{align-items:flex-start}}.postPage{
  background:#ffffff;
}.postPage .ornateShell{
  width:min(100% - 28px,1080px);
  margin:14px auto;
  background:var(--cPaper);
  border:2px solid var(--cNavy);
  box-shadow:0 18px 50px rgba(8,28,61,.22);
}.postPage .ornateShell:before, .postPage .ornateShell:after{
  display:block;
}.postPage .communityMain{
  padding:28px 38px 34px;
  background-color:#f6faff;
  background-image:radial-gradient(circle at 20% 15%,rgba(189,143,53,.08),transparent 24%),linear-gradient(45deg,rgba(7,30,67,.025) 25%,transparent 25%,transparent 75%,rgba(7,30,67,.025) 75%);
  background-size:auto,36px 36px;
}.postPage .postMain{
  gap:20px;
}@media (max-width:900px){.postPage .ornateShell{
    width:100%;
    margin:0;
    border-left:0;
    border-right:0;
    box-shadow:none;
  }.postPage .communityMain{
    padding:18px 12px 24px;
  }}.adminPage .adminMain, .postPage .postMain{min-height:calc(100vh - 96px)}.adminPage .card, .postPage .postFormCard{
 max-width:1160px;margin-left:auto;margin-right:auto;background:rgba(255,255,255,.94);
 border:1px solid var(--cGold);box-shadow:0 7px 17px rgba(19,38,67,.10);
}.adminPage .card{margin-bottom:24px;padding:26px}.adminPage .loginBox{max-width:720px}.adminPage input, .adminPage textarea, .adminPage select, .postPage input, .postPage textarea, .postPage select{
 background:#fff;border:1px solid rgba(189,143,53,.65);border-radius:0;min-height:46px;
}.adminPage button, .adminPage .button, .postPage button, .postPage .button{
 border-radius:0;
}@media (max-width:760px){.adminPage .adminMain, .postPage .postMain{padding:16px 12px 24px}.adminPage .card{padding:18px}}body.communityHome, body.publicPage, body.adminPage, body.postPage, body.memberEditPage{
  margin:0;background:#ffffff;color:var(--cNavy);font-family:system-ui,-apple-system,"Segoe UI","Noto Sans JP",sans-serif;
}.ornateShell{position:relative!important;min-height:calc(100vh - 28px)}.communityHeader{position:relative!important;z-index:2!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:28px!important}.communityMain{position:relative!important;z-index:1!important;min-height:620px}.communityFooter{margin:0!important}.contentPanel, .eventOverview, .adminPage .card, .postPage .postFormCard, .memberEditPage .card{
  width:100%;max-width:1160px;margin-left:auto;margin-right:auto;border:1px solid var(--cGold)!important;background:rgba(255,255,255,.94)!important;box-shadow:0 7px 17px rgba(19,38,67,.10)!important;border-radius:0!important;
}.contentPanel, .adminPage .card, .memberEditPage .card{padding:24px!important;margin-bottom:24px!important}.eventOverview{padding:26px!important;margin-bottom:24px!important}.postPage{background:#ffffff!important}.postPage .ornateShell{width:min(100% - 28px,1080px)!important;margin:14px auto!important;background:var(--cPaper)!important;border:2px solid var(--cNavy)!important;box-shadow:0 18px 50px rgba(8,28,61,.22)!important}.postPage .communityMain{padding:28px 38px 34px!important;background-color:#f6faff!important;background-image:radial-gradient(circle at 20% 15%,rgba(189,143,53,.08),transparent 24%),linear-gradient(45deg,rgba(7,30,67,.025) 25%,transparent 25%,transparent 75%,rgba(7,30,67,.025) 75%)!important;background-size:auto,36px 36px!important}.postPage .postFormCard{padding:24px!important}.loginPagePanel{padding:0!important;overflow:hidden}.loginPagePanel>header{padding:15px 22px;background:var(--cNavy);color:#fff;border-bottom:1px solid var(--cGold)}.loginPagePanel>header h1, .loginPagePanel>header h2{margin:0;color:#fff;font-family:serif}.loginPagePanel .loginContent{padding:26px}.loginPagePanel input{width:100%;min-height:50px;border:1px solid rgba(189,143,53,.65);background:#fff}.loginPagePanel button{min-height:48px;padding:0 30px;border:1px solid var(--cGold);background:var(--cNavy);color:#fff;font-weight:900}@media (max-width:900px){.ornateShell, .postPage .ornateShell{width:100%!important;margin:0!important;border-left:0!important;border-right:0!important;box-shadow:none!important}.communityHeader{padding:12px 16px!important;min-height:78px!important;flex-wrap:wrap!important}.communityMain, .postPage .communityMain{padding:18px 12px 24px!important}}.communityHome .homeColumns{margin-top:0;margin-bottom:24px}.communityHome .featureGrid{margin-top:0;margin-bottom:24px}.communityHome .featureCard{min-height:218px;padding:24px 26px 22px;display:flex;flex-direction:column;justify-content:flex-start}.communityHome .featureCard h2{margin:6px 0 8px}.communityHome .featureCard p{min-height:46px;margin:0 0 16px}.communityHome .featureCard .featurePrimary{margin-top:auto}.communityHome .featureCard .featureSecondary{margin-top:9px}@media (max-width:900px){.communityHome .homeColumns{margin-bottom:14px}.communityHome .featureGrid{margin-bottom:14px}.communityHome .featureCard{min-height:auto;padding:18px 20px;display:block;text-align:left}.communityHome .featureCard h2{margin:0 0 4px}.communityHome .featureCard p{min-height:0;margin:0 0 12px}}.communityHome .homeHero{
  width:100%;max-width:1160px;height:clamp(220px,27vw,350px);margin:0 auto 24px;
  position:relative;overflow:hidden;border:1px solid var(--cGold);
  background-color:#10284b;background-image:url("assets/hero-background.png");
  background-position:center;background-repeat:no-repeat;background-size:cover;
  box-shadow:0 7px 17px rgba(19,38,67,.10),inset 0 0 0 5px rgba(255,255,255,.88),inset 0 0 0 6px rgba(189,143,53,.55);
}.communityHome .homeHero:before, .communityHome .homeHero:after{
  content:"";position:absolute;z-index:2;width:64px;height:64px;pointer-events:none;border-color:var(--cGold)
}.communityHome .homeHero:before{left:12px;bottom:12px;border-left:2px solid;border-bottom:2px solid}.communityHome .homeHero:after{right:12px;top:12px;border-right:2px solid;border-top:2px solid}.communityHome .homeHeroOverlay{
  position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,30,67,.18),rgba(7,30,67,.03) 45%,rgba(7,30,67,.14));
}@media (max-width:900px){.communityHome .homeHero{height:clamp(165px,48vw,240px);margin-bottom:14px}}:root{
  --cPaper:#ffffff;
  --cGold:#9fb9d5;
  --cNavy:#082b55;
}body{background:#edf3f9}.ornateShell{
  background:#fff;
  border-color:#7898ba;
  box-shadow:0 18px 50px rgba(8,43,85,.15);
}.ornateShell:before{border-color:rgba(104,145,187,.42)}.ornateShell:after{border-color:rgba(104,145,187,.14)}.communityHeader{
  background:rgba(255,255,255,.98);
  border-bottom-color:#b7cade;
}.communityBrand small{color:#5e7f9f}.brandEmblem{box-shadow:0 0 0 3px #9fb9d5,inset 0 0 0 3px #fff}.communityNav a:hover{border-color:#7da4cc}.communityNav .loginLink{border-color:#7898ba}.communityMain{
  background-color:#f7faff;
  background-image:
    radial-gradient(circle at 20% 15%,rgba(69,130,190,.055),transparent 24%),
    linear-gradient(45deg,rgba(8,43,85,.018) 25%,transparent 25%,transparent 75%,rgba(8,43,85,.018) 75%);
}.featureCard, .feedPanel, .postFormCard, .adminPage .card, .contentPanel, .eventOverview{
  border-color:#b5c9dd;
  box-shadow:0 7px 18px rgba(8,43,85,.08),inset 0 0 0 5px #fff,inset 0 0 0 6px rgba(127,163,199,.25);
}.feedPanel:after, .postFormCard:after{border-color:rgba(127,163,199,.30)}.homeHero{border-color:#91aecb;box-shadow:0 7px 17px rgba(8,43,85,.10),inset 0 0 0 5px rgba(255,255,255,.88),inset 0 0 0 6px rgba(127,163,199,.42)}.homeHero:before, .homeHero:after{border-color:#91aecb}input, textarea, select, .adminPage input, .adminPage textarea, .adminPage select, .postPage input, .postPage textarea, .postPage select{border-color:#b5c9dd}.featureCard h2{margin-top:12px}.communityHome{
  --cNavy:#082b55!important;

  --cGold:#9bb8d4!important;

  --cPaper:#ffffff!important;

  background:#e5eef7!important;
}.communityHome .ornateShell{
  background:#ffffff!important;
  border-color:#6f93b8!important;
}.communityHome .ornateShell:before{border-color:rgba(91,137,181,.36)!important}.communityHome .ornateShell:after{border-color:rgba(91,137,181,.13)!important}.communityHome .communityHeader, .postPage .communityHeader{
  background:#ffffff!important;
  border-bottom-color:#b8ccdf!important;
}.communityHome .communityMain, .postPage .communityMain, .adminPage .communityMain{
  background-color:#f6faff!important;
  background-image:
    radial-gradient(circle at 20% 15%,rgba(57,116,176,.055),transparent 24%),
    linear-gradient(45deg,rgba(8,43,85,.015) 25%,transparent 25%,transparent 75%,rgba(8,43,85,.015) 75%)!important;
}.featureCard, .feedPanel, .postFormCard, .adminPage .card, .contentPanel, .eventOverview, .loginPagePanel{
  border-color:#b8cbde!important;
}.feedPanel, .postFormCard, .adminPage .card{
  box-shadow:0 7px 17px rgba(8,43,85,.08)!important;
}.formBlock,.publishBlock,.selectedPost,.postEmpty{
  border-color:#bfd0e0!important;
}.postSubButton{
  background:#f8fbff!important;
  border-color:#9eb8d1!important;
}.postPage input, .postPage textarea, .postPage select, .adminPage input, .adminPage textarea, .adminPage select, .loginPagePanel input{
  border-color:#b4c8db!important;
}.postActions{border-top-color:#b8cbde!important}.featureCard:before, .featureCard:after, .homeHero:before, .homeHero:after{border-color:#8facca!important}.homeHero{
  border-color:#8facca!important;
}.communityHome, .postPage, .adminPage{
  --cNavy:#16355f!important;

  --cGold:#b9cee4!important;

  --cPaper:#ffffff!important;

  --cRed:#d64545!important;
  --cBlue:#2f6fdd!important;
  --cGreen:#2e7d46!important;
  background:#f1f7fc!important;
  color:#17304e!important;
}.ornateShell{
  width:min(100% - 24px,1080px)!important;
  margin:12px auto!important;
  background:#fff!important;
  border:1px solid #9ebbd8!important;
  box-shadow:0 12px 34px rgba(29,72,113,.12)!important;
}.ornateShell:before{
  inset:7px!important;
  border:1px solid rgba(112,155,197,.28)!important;
}.ornateShell:after{display:none!important}.communityBrand small{
  color:#6b87a2!important;
  font-size:.68rem!important;
  letter-spacing:.12em!important;
}.communityNav a{
  border-bottom:2px solid transparent!important;
}.communityNav a:hover{border-color:#4c84bc!important}.communityMain{
  padding:22px 28px 30px!important;
  background-color:#f8fbff!important;
  background-size:28px 28px!important;
}.homeHero{
  max-width:1160px!important;
  height:clamp(220px,25vw,330px)!important;
  border:1px solid #a8c2db!important;
  box-shadow:0 5px 16px rgba(28,67,105,.10)!important;
}.homeHero:before, .homeHero:after{display:none!important}.homeHeroOverlay{
  background:linear-gradient(90deg,rgba(9,46,84,.08),rgba(9,46,84,0) 50%,rgba(9,46,84,.06))!important;
}.homeColumns{
  margin-top:0!important;
}.feedPanel{
  overflow:hidden!important;
  background:#fff!important;
}.feedPanel:after{display:none!important}.feedPanel>header{
  color:#173b6a!important;
}.feedPanel>header h2{
  font-family:system-ui,-apple-system,"Segoe UI","Noto Sans JP",sans-serif!important;
}.feedRow{
  border-bottom:1px solid #e4edf5!important;
  background:#fff!important;
}.feedRow time{
  border-color:#d7e4ef!important;
}.panelMore{
  background:#fbfdff!important;
  border-top:1px solid #e2ebf3!important;
}.feedEvents .feedTag{background:#d64545!important}.feedContent .resultTag{background:#2f6fdd!important}.featureCard{
  background:#fff!important;
  border:1px solid #b8cfe3!important;
}.featureCard:before, .featureCard:after, .cornerRibbon{display:none!important}.featureCard h2{
  margin:2px 0 12px!important;
  font-family:system-ui,-apple-system,"Segoe UI","Noto Sans JP",sans-serif!important;
  letter-spacing:.02em!important;
}.featureCard p{
  margin-bottom:16px!important;
  font-size:.92rem!important;
}.featurePrimary, .featureSecondary{
  box-shadow:none!important;
  font-size:.9rem!important;
}.featurePrimary{
  background:#fff!important;
  border:1px solid currentColor!important;
  color:currentColor!important;
}.featureSecondary{
  margin-top:8px!important;
  background:#f9fcff!important;
}.postFormCard, .adminPage .card, .contentPanel, .eventOverview, .loginPagePanel{
  background:#fff!important;
  border:1px solid #b8cfe3!important;
  border-radius:6px!important;
  box-shadow:0 4px 14px rgba(33,77,119,.075)!important;
}.postFormCard:before, .postFormCard:after{display:none!important}.postSectionHead, .sectionHead{
  border-bottom-color:#d9e5f0!important;
}.formBlock,.publishBlock,.selectedPost,.postEmpty{
  background:#f8fbff!important;
  border:1px solid #c7d9e9!important;
}.postPage input, .postPage textarea, .postPage select, .adminPage input, .adminPage textarea, .adminPage select, .loginPagePanel input{
  background:#fff!important;
  border:1px solid #b8cde0!important;
  border-radius:4px!important;
}.postPage input:focus, .postPage textarea:focus, .postPage select:focus, .adminPage input:focus, .adminPage textarea:focus, .adminPage select:focus{
  border-color:#6e9dca!important;
  outline:3px solid rgba(78,137,192,.12)!important;
}.postActions{
  border-top:1px solid #cbdbe9!important;
}.communityFooter{
  border-top:1px solid #8eacc9!important;
}.postSectionIcon{display:none!important}@media (max-width:760px){.ornateShell{width:100%!important;margin:0!important;border-left:0!important;border-right:0!important}.communityMain{padding:14px 12px 22px!important}.homeHero{height:clamp(155px,47vw,220px)!important;margin-bottom:14px!important}.homeColumns, .featureGrid{gap:12px!important}.featureCard{min-height:auto!important;padding:18px!important}}body.communityHome{
  margin:0!important;
  background:#eef5fb!important;
  color:#142d4c!important;
  font-family:system-ui,-apple-system,"Segoe UI","Noto Sans JP",sans-serif!important;
}body.communityHome>.ornateShell{
  width:min(calc(100% - 28px),1080px)!important;
  margin:0 auto!important;
  background:#fff!important;
  border:1px solid #a8c4df!important;
  border-radius:0!important;
  box-shadow:0 12px 34px rgba(33,78,121,.12)!important;
  overflow:hidden!important;
}body.communityHome>.ornateShell:before, body.communityHome>.ornateShell:after{
  display:none!important;
}body.communityHome .communityHeader{
  min-height:76px!important;
  padding:12px 28px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:20px!important;
  background:#fff!important;
  border:0!important;
  border-bottom:1px solid #d8e5f1!important;
  box-shadow:none!important;
}body.communityHome .communityBrand{
  display:flex!important;
  align-items:center!important;
  gap:13px!important;
  color:#17355d!important;
  text-decoration:none!important;
}body.communityHome .communityBrand strong{
  display:block!important;
  margin:0!important;
  font-family:system-ui,-apple-system,"Segoe UI","Noto Sans JP",sans-serif!important;
  font-size:clamp(1.15rem,1.55vw,1.55rem)!important;
  font-weight:800!important;
  letter-spacing:.01em!important;
  line-height:1.25!important;
}body.communityHome .communityBrand small{
  display:none!important;
}body.communityHome .brandEmblem{
  width:44px!important;
  height:44px!important;
  flex:0 0 44px!important;
  border:4px solid #193c69!important;
  border-radius:50%!important;
  background:linear-gradient(#d94b4b 0 44%,#183b68 45% 55%,#fff 56%)!important;
  box-shadow:0 0 0 2px #afc7df!important;
}body.communityHome .brandEmblem:after{
  width:13px!important;
  height:13px!important;
  border:4px solid #193c69!important;
}body.communityHome .communityNav{
  display:flex!important;
  align-items:center!important;
  gap:4px!important;
}body.communityHome .communityNav a{
  padding:11px 13px!important;
  color:#17355d!important;
  font-size:.88rem!important;
  font-weight:700!important;
  text-decoration:none!important;
  border:0!important;
  border-bottom:2px solid transparent!important;
  background:transparent!important;
  box-shadow:none!important;
}body.communityHome .communityNav a:hover{
  border-bottom-color:#2f6fdd!important;
}body.communityHome .communityNav .loginLink{
  margin-left:12px!important;
  padding:11px 19px!important;
  color:#fff!important;
  background:#173b6a!important;
  border-radius:7px!important;
  border:0!important;
  box-shadow:none!important;
}body.communityHome .communityMain{
  padding:0 20px 26px!important;
  background:var(--page-background)!important;
  background-image:none!important;
}body.communityHome .homeHero{
  width:calc(100% + 40px)!important;
  max-width:none!important;
  height:clamp(210px,25vw,330px)!important;
  margin:0 -20px 0!important;
  border:0!important;
  border-radius:0!important;
  background-color:#173b6a!important;
  background-image:url("assets/hero-background.png")!important;
  background-size:cover!important;
  background-position:center!important;
  box-shadow:none!important;
}body.communityHome .homeHero:before, body.communityHome .homeHero:after{
  display:none!important;
}body.communityHome .homeHeroOverlay{
  background:linear-gradient(180deg,rgba(5,38,74,.02),rgba(5,38,74,.06))!important;
}body.communityHome .homeColumns{
  width:100%!important;
  max-width:1180px!important;
  margin:0 auto!important;
  padding-top:14px!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:14px!important;
}body.communityHome .feedPanel{
  margin:0!important;
  background:#fff!important;
  border:1px solid #c0d5e7!important;
  border-radius:8px!important;
  box-shadow:0 4px 12px rgba(37,80,119,.08)!important;
  overflow:hidden!important;
}body.communityHome .feedPanel:before, body.communityHome .feedPanel:after{
  display:none!important;
}body.communityHome .feedPanel>header{
  min-height:48px!important;
  padding:0 16px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  background:#fff!important;
  color:#183a66!important;
  border:0!important;
  border-bottom:1px solid #dce8f2!important;
}body.communityHome .feedPanel>header h2{
  margin:0!important;
  font-family:inherit!important;
  font-size:1rem!important;
  font-weight:800!important;
}body.communityHome .feedPanel>header a{
  color:#52789c!important;
  font-size:.78rem!important;
  text-decoration:none!important;
}body.communityHome .feedList{
  background:#fff!important;
}body.communityHome .feedRow{
  min-height:52px!important;
  padding:8px 14px!important;
  display:grid!important;
  grid-template-columns:48px auto minmax(0,1fr) 20px!important;
  gap:10px!important;
  align-items:center!important;
  color:#1d344f!important;
  background:#fff!important;
  border:0!important;
  border-bottom:1px solid #e5edf4!important;
  text-decoration:none!important;
}body.communityHome .feedRow:hover{
  background:#f6faff!important;
}body.communityHome .feedRow time{
  min-width:44px!important;
  padding:5px 4px!important;
  background:#f4f8fc!important;
  border:1px solid #dce7f1!important;
  border-radius:5px!important;
  text-align:center!important;
}body.communityHome .feedRow time b{
  display:block!important;
  font-size:.82rem!important;
  line-height:1.1!important;
}body.communityHome .feedRow time small{
  display:block!important;
  margin-top:2px!important;
  color:#66809a!important;
  font-size:.68rem!important;
}body.communityHome .feedTag{
  display:inline-flex!important;
  align-items:center!important;
  min-height:22px!important;
  padding:2px 7px!important;
  border-radius:3px!important;
  color:#fff!important;
  font-size:.68rem!important;
  font-weight:800!important;
}body.communityHome .feedEvents .feedTag{background:#d64545!important}body.communityHome .feedContent .resultTag{background:#2f6fdd!important}body.communityHome .feedCopy strong{
  display:block!important;
  overflow:hidden!important;
  color:#1d344f!important;
  font-size:.86rem!important;
  font-weight:750!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}body.communityHome .feedCopy small{
  display:block!important;
  margin-top:2px!important;
  color:#73879a!important;
  font-size:.71rem!important;
}body.communityHome .feedArrow{
  color:#52789c!important;
  font-size:1.15rem!important;
}body.communityHome .panelMore{
  display:none!important;
}body.communityHome .homeEmpty{
  min-height:118px!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#7c8fa3!important;
  background:#fff!important;
  text-align:center!important;
}body.communityHome .featureGrid{
  width:100%!important;
  max-width:1180px!important;
  margin:14px auto 0!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
}body.communityHome .featureCard{
  min-height:178px!important;
  padding:20px 20px 18px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  text-align:center!important;
  background:#fff!important;
  border-radius:8px!important;
  box-shadow:0 3px 10px rgba(37,80,119,.055)!important;
  overflow:hidden!important;
}body.communityHome .featureCard:before, body.communityHome .featureCard:after, body.communityHome .featureCard .cornerRibbon{
  display:none!important;
}body.communityHome .featureEvent{border:1px solid #e49a9a!important;color:#c83737!important}body.communityHome .featureResult{border:1px solid #8fb4e8!important;color:#1f5fc5!important}body.communityHome .featureBuild{border:1px solid #91c4a3!important;color:#246f3c!important}body.communityHome .featureCard h2{
  margin:0 0 8px!important;
  font-family:inherit!important;
  font-size:1.2rem!important;
  line-height:1.3!important;
  font-weight:800!important;
  letter-spacing:.015em!important;
}body.communityHome .featureCard p{
  min-height:44px!important;
  margin:0 0 12px!important;
  color:#445d75!important;
  font-size:.82rem!important;
  line-height:1.55!important;
  font-weight:500!important;
}body.communityHome .featurePrimary, body.communityHome .featureSecondary{
  width:min(100%,210px)!important;
  min-height:34px!important;
  margin:0 auto!important;
  padding:6px 14px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:17px!important;
  background:#fff!important;
  box-shadow:none!important;
  font-size:.8rem!important;
  font-weight:750!important;
  text-decoration:none!important;
}body.communityHome .featurePrimary{
  border:1px solid currentColor!important;
  color:currentColor!important;
}body.communityHome .featureSecondary{
  margin-top:7px!important;
  border:1px solid #d8e3ed!important;
  color:#476681!important;
  background:#f9fcff!important;
}body.communityHome .communityFooter{
  padding:18px 24px!important;
  background:#173b6a!important;
  border:0!important;
}body.communityHome .communityFooter p{
  color:#f4f8fc!important;
  font-size:.78rem!important;
}@media (max-width:760px){body.communityHome>.ornateShell{
    width:100%!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }body.communityHome .communityHeader{
    min-height:64px!important;
    padding:9px 12px!important;
  }body.communityHome .brandEmblem{
    width:40px!important;height:40px!important;flex-basis:40px!important;
  }body.communityHome .communityBrand strong{
    font-size:1rem!important;
    max-width:210px!important;
  }body.communityHome .communityNav{
    display:none!important;
    position:absolute!important;
    z-index:30!important;
    top:64px!important;
    left:0!important;
    right:0!important;
    padding:8px 12px 14px!important;
    background:#fff!important;
    border-bottom:1px solid #d2e0ec!important;
    box-shadow:0 8px 16px rgba(29,65,100,.12)!important;
  }body.communityHome .communityNav a{
    padding:11px!important;
    border-bottom:1px solid #e4edf4!important;
  }body.communityHome .communityNav .loginLink{
    margin:7px 0 0!important;
    text-align:center!important;
  }body.communityHome .communityMain{
    padding:0 10px 18px!important;
  }body.communityHome .homeHero{
    width:calc(100% + 20px)!important;
    height:clamp(145px,45vw,205px)!important;
    margin:0 -10px!important;
  }body.communityHome .homeColumns{
    grid-template-columns:1fr!important;
    gap:10px!important;
    padding-top:10px!important;
  }body.communityHome .featureGrid{
    grid-template-columns:1fr!important;
    gap:10px!important;
    margin-top:10px!important;
  }body.communityHome .featureCard{
    min-height:auto!important;
    padding:17px 16px!important;
  }body.communityHome .feedRow{
    grid-template-columns:44px auto minmax(0,1fr) 14px!important;
    gap:7px!important;
    padding:7px 9px!important;
  }}:root{
  --uiLineSoft:#e3edf5;
}.communityMain{padding-left:22px!important;padding-right:22px!important}.subpageShell, .postMain, .adminMain{max-width:1180px!important;margin:0 auto!important;padding-top:24px!important;padding-bottom:32px!important}.homeColumns{padding-top:16px!important}.featureGrid{margin-top:16px!important}.feedPanel>header{gap:12px!important}.feedPanel>header a + a{margin-left:8px!important}.featureCard p{min-height:40px!important}.featurePrimary, .featureSecondary{width:min(100%,190px)!important}.featureSecondary{border-style:dashed!important}.cleanPageHeading{
  display:flex;align-items:flex-end;justify-content:space-between;gap:24px;
  margin:0 0 16px;padding:22px 24px;background:#fff;border:1px solid var(--uiLine);
  border-radius:8px;box-shadow:0 4px 14px rgba(33,77,119,.06)
}.cleanPageHeading p{margin:0 0 3px;color:var(--uiRed);font-size:.72rem;font-weight:900;letter-spacing:.12em}.cleanPageHeading h1{margin:0;color:var(--uiText);font-size:1.65rem;line-height:1.3}.cleanPageHeading span{display:block;margin-top:5px;color:var(--uiMuted);font-size:.87rem}.cleanPageHeading>a{flex:0 0 auto;padding:10px 18px;color:#fff;background:var(--uiRed);border-radius:6px;text-decoration:none;font-weight:800}.detailMain .contentPanel, .detailMain .eventOverview, .registrationPanel, .memberPanel{
  background:#fff!important;border:1px solid var(--uiLine)!important;border-radius:8px!important;
  box-shadow:0 4px 14px rgba(33,77,119,.06)!important
}.postFormCard{border-radius:8px!important;border:1px solid var(--uiLine)!important;box-shadow:0 4px 14px rgba(33,77,119,.06)!important}.postSectionHead{padding:20px 22px!important;background:#fbfdff!important}.postForm{padding:22px!important}.formBlock{background:#fff!important;border:0!important;padding:0!important}.formBlock label{color:var(--uiText)!important;font-weight:750!important}.postPage input, .postPage textarea, .postPage select, .adminPage input, .adminPage textarea, .adminPage select{
  border:1px solid #b8cde0!important;border-radius:6px!important;background:#fff!important
}.radioCard span{border-radius:6px!important}.postActions{margin:24px -22px -22px!important;padding:16px 22px!important;background:#f8fbff!important}.postActions button{min-width:180px!important;border-radius:6px!important}.adminPage .card{border-radius:8px!important;border:1px solid var(--uiLine)!important;box-shadow:0 4px 14px rgba(33,77,119,.06)!important}.sectionHead h2{color:var(--uiText)!important}.loginPagePanel{margin:32px auto!important}.communityFooter p{margin-left:auto!important}@media (max-width:760px){.subpageShell, .postMain, .adminMain{padding-top:14px!important;padding-bottom:20px!important}.cleanPageHeading{align-items:stretch;flex-direction:column;padding:18px;gap:14px}.cleanPageHeading>a{width:100%;text-align:center}.postForm{padding:16px!important}.postActions{margin:20px -16px -16px!important;padding:14px 16px!important}}html, body, body.communityHome, body.communityHome.publicPage, body.communityHome.postPage, body.communityHome.adminPage{
  background:#ffffff!important;
}.postMain{
  max-width:none!important;
  margin:0!important;
  padding:0 22px 30px!important;
  background:#f6faff!important;
}.composeHero{
  width:calc(100% + 44px);
  height:clamp(205px,24vw,320px);
  margin:0 -22px;
  background:#173b6a url("assets/hero-background.png") center/cover no-repeat;
  border:0;
}.postPageHero{margin-bottom:0}.composeBreadcrumb{
  width:min(100%,1180px);
  margin:0 auto;
  padding:16px 2px 14px;
  display:flex;
  align-items:center;
  gap:9px;
  color:#71869b;
  font-size:.84rem;
}.composeBreadcrumb a{color:#617f9c;text-decoration:none}.composeBreadcrumb strong{color:#173b6a}.composeKicker{
  margin:0 0 4px;
  color:#7890a9;
  font-size:.7rem;
  font-weight:900;
  letter-spacing:.13em;
}.postPage .postFormCard{
  width:min(100%,1180px)!important;
  margin:0 auto!important;
  border:1px solid #b8d1e7!important;
  border-radius:9px!important;
  background:#fff!important;
  box-shadow:0 5px 18px rgba(31,75,116,.07)!important;
}.postPage .postSectionHead{
  padding:24px 28px!important;
  border-bottom:1px solid #dce8f2!important;
}.postPage .postSectionHead h2{
  color:#173b6a!important;
}.postPage .postSectionHead p{
  color:#72879b!important;
}.postPage .formBlock{
  margin-bottom:20px!important;
}.postPage .formBlock>label{
  margin-bottom:7px!important;
}.postPage .postPicker{
  padding:26px 28px 0!important;
}.postPage .selectedPost{
  margin:18px 28px 0!important;
}.postPage .postEmpty{
  margin:24px 28px!important;
}@media (max-width:760px){.postMain{padding:0 10px 20px!important}.composeHero{
    width:calc(100% + 20px);
    height:clamp(145px,46vw,205px);
    margin:0 -10px;
  }.composeBreadcrumb{padding:12px 2px 10px;font-size:.77rem;flex-wrap:wrap}.postPage .selectedPost{margin:14px 16px 0!important}}:root, .communityHome, .postPage, .adminPage, .publicPage{
  --warning:#55799d!important;
  --warningSoft:#eef5fb!important;
  --cGold:#a9c1d9!important;

}button, .button, input[type="submit"], input[type="button"]{
  border-color:#9ebbd6!important;
}button:not(.danger), .button:not(.danger), .postActions button, .postPicker button{
  color:#fff!important;
  background:#17457d!important;
  border:1px solid #17457d!important;
  box-shadow:none!important;
}button:not(.danger):hover, .button:not(.danger):hover, .postActions button:hover, .postPicker button:hover{
  background:#123966!important;
  border-color:#123966!important;
}.button.light, .postSubButton{
  color:#17457d!important;
  background:#fff!important;
  border:1px solid #a9bfd5!important;
}.button.light:hover, .postSubButton:hover{
  background:#f3f8fc!important;
}.postPage .postMain{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 285px!important;
  column-gap:18px!important;
  align-items:start!important;
}.postPage .composeHero, .postPage .composeBreadcrumb, .postPage .status, .postPage .message{
  grid-column:1 / -1!important;
}.postPage .postFormCard{
  grid-column:1!important;
  min-width:0!important;
}.postGuidelines{
  grid-column:2!important;
  position:sticky;
  top:18px;
  padding:20px 18px;
  background:#f8fbff;
  border:1px solid #bfd3e6;
  border-radius:8px;
  box-shadow:0 4px 14px rgba(31,75,116,.05);
}.postGuidelines h2{
  margin:0 0 14px;
  padding-bottom:10px;
  color:#173b6a;
  font-size:1rem;
  border-bottom:1px solid #dbe7f1;
}.postGuidelines ul{
  margin:0;
  padding:0;
  list-style:none;
}.postGuidelines li{
  position:relative;
  margin:0;
  padding:0 0 13px 21px;
  color:#496983;
  font-size:.79rem;
  line-height:1.7;
}.postGuidelines li:last-child{padding-bottom:0}.postGuidelines li:before{
  content:"";
  position:absolute;
  left:1px;
  top:.55em;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#2f6fdd;
  box-shadow:0 0 0 3px #eaf2fb;
}.postPage .postFormCard{
  overflow:hidden!important;
}.postPage .postSectionHead{
  min-height:86px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
}.postPage .postSectionHead>div{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
}.postPage .postSectionHead h2{
  margin:0!important;
  font-size:1.42rem!important;
  line-height:1.3!important;
}.postPage .postSectionHead p{
  margin:5px 0 0!important;
  font-size:.84rem!important;
}.postPage .postFormGrid{
  gap:18px!important;
}.postPage .formBlock{
  min-width:0!important;
}.postPage .formBlock>label{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  color:#173b6a!important;
  font-size:.9rem!important;
}.postPage .help{
  display:block!important;
  margin-top:3px!important;
  color:#7890a6!important;
  font-size:.73rem!important;
  font-weight:500!important;
}.postPage input, .postPage textarea, .postPage select{
  width:100%!important;
  min-height:46px!important;
  padding:10px 12px!important;
  color:#1a3551!important;
  border:1px solid #b8cee2!important;
  box-shadow:inset 0 1px 2px rgba(26,62,96,.025)!important;
}.postPage textarea{
  min-height:110px!important;
  resize:vertical!important;
  line-height:1.65!important;
}.postPage input:focus, .postPage textarea:focus, .postPage select:focus{
  outline:3px solid rgba(47,111,221,.11)!important;
  border-color:#6699cf!important;
}.postPage .datetimeSelects{
  gap:7px!important;
}.postPage .datetimeSelects select{
  min-width:0!important;
  padding-left:8px!important;
  padding-right:8px!important;
}.postPage .radioCards{
  gap:10px!important;
}.postPage .radioCard span{
  border:1px solid #bad0e3!important;
  background:#fff!important;
  color:#315a82!important;
}.postPage .radioCard input:checked+span{
  border-color:#2f6fdd!important;
  background:#f1f6ff!important;
  color:#1e5fb9!important;
  box-shadow:0 0 0 2px rgba(47,111,221,.08)!important;
}.postPage .publishBlock{
  margin-top:6px!important;
  padding:16px!important;
  background:#f8fbff!important;
  border:1px solid #d5e3ef!important;
}.postPage .postActions{
  display:flex!important;
  justify-content:center!important;
}.postPage .postActions button{
  min-width:240px!important;
  min-height:48px!important;
  border-radius:7px!important;
  font-size:.96rem!important;
  font-weight:800!important;
}.postPage .postPicker{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:12px!important;
  align-items:end!important;
}.postPage .postPicker button{
  min-height:46px!important;
  padding:9px 18px!important;
  border-radius:6px!important;
}.postPage .selectedPost{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  padding:14px 16px!important;
  background:#f4f9fd!important;
  border:1px solid #c8dbea!important;
  border-radius:7px!important;
}.postPage .selectedPost>span{
  padding:3px 7px!important;
  border-radius:3px!important;
  color:#fff!important;
  background:#2f6fdd!important;
  font-size:.68rem!important;
  font-weight:800!important;
}.communityHeader, .communityNav, .communityFooter{
  border-color:#c6d9e9!important;
}.communityNav a:hover{
  border-bottom-color:#2f6fdd!important;
}.communityNav .loginLink{
  border-color:#17457d!important;
}@media (max-width:900px){.postPage .postMain{
    grid-template-columns:1fr!important;
  }.postPage .composeHero, .postPage .composeBreadcrumb, .postPage .postFormCard, .postGuidelines{
    grid-column:1!important;
  }.postGuidelines{
    position:static!important;
    margin-top:14px!important;
  }}@media (max-width:760px){.postPage .postSectionHead{
    min-height:auto!important;
    padding:17px 15px!important;
    align-items:flex-start!important;
    flex-direction:column!important;
  }.postPage .postForm{
    padding:16px!important;
  }.postPage .postFormGrid{
    grid-template-columns:1fr!important;
    gap:0!important;
  }.postPage .postPicker{
    grid-template-columns:1fr!important;
    padding:16px 15px 0!important;
  }.postPage .postPicker button{
    width:100%!important;
  }.postPage .datetimeSelects{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }.postPage .postActions button{
    width:100%!important;
    min-width:0!important;
  }}.publicPage .detailMain{
  width:min(100%,1180px)!important;
  margin:0 auto!important;
  padding-top:24px!important;
  padding-bottom:32px!important;
}.publicPage .eventOverview{
  width:100%!important;
  max-width:none!important;
  margin:0 0 22px!important;
  background:#fff!important;
  border:1px solid #bfd3e6!important;
}.publicPage .eventOverviewTitle{
  display:flex!important;
  align-items:center!important;
  gap:20px!important;
}.publicPage .eventRound{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:10px 16px!important;
  color:#fff!important;
  border:0!important;
  box-shadow:none!important;
  font-size:.82rem!important;
  font-weight:900!important;
  letter-spacing:.03em!important;
}.publicPage .eventOverviewTitle h1{
  margin:0!important;
  color:#173b6a!important;
  font-size:clamp(1.55rem,2.3vw,2rem)!important;
  line-height:1.25!important;
}.publicPage .eventFormatLabel{
  display:block!important;
  margin-top:6px!important;
  color:#2365b7!important;
  font-weight:800!important;
}.publicPage .eventFacts dt{
  background:transparent!important;
}.publicPage .eventAbout{
  margin:0 0 20px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
}.publicPage .eventAbout h2{
  margin:0 0 9px!important;
  color:#173b6a!important;
  font-weight:800!important;
}.publicPage .eventAbout p{
  margin:0!important;
  line-height:1.75!important;
}.publicPage .eventAboutEmpty{
  color:#8193a4!important;
}.publicPage .detailMain .contentPanel, .publicPage .registrationPanel, .publicPage .memberPanel{
  background:#fff!important;
  border-color:#bfd3e6!important;
  box-shadow:0 4px 14px rgba(31,75,116,.055)!important;
}.publicPage .registrationPanel input, .publicPage .registrationPanel textarea, .publicPage .registrationPanel select, .publicPage .memberPanel input, .publicPage .memberPanel textarea, .publicPage .memberPanel select{
  background:#fff!important;
  border-color:#b8cee2!important;
}.publicPage .registrationPanel input:focus, .publicPage .registrationPanel textarea:focus, .publicPage .registrationPanel select:focus{
  border-color:#6699cf!important;
  outline:3px solid rgba(47,111,221,.11)!important;
}.publicPage .registrationPanel .radioCard span{
  color:#315a82!important;
  background:#fff!important;
  border-color:#bad0e3!important;
}.publicPage .registrationPanel .radioCard input:checked+span{
  color:#1e5fb9!important;
  background:#f1f6ff!important;
  border-color:#2f6fdd!important;
}@media (max-width:760px){.publicPage .detailMain{
    padding-top:14px!important;
    padding-bottom:20px!important;
  }.publicPage .eventOverviewTitle{
    gap:12px!important;
    margin-bottom:16px!important;
  }.publicPage .eventRound{
    min-width:68px!important;
    min-height:46px!important;
    padding:8px 12px!important;
  }.publicPage .eventFacts>div+div{
    border-left:0!important;
  }}.communityHome, .publicPage, .postPage, .adminPage, .memberEditPage{
  --communityNavy:#173b6a!important;
  --communityGold:#a9c1d9!important;

  --cPaper:#fff!important;
  --cGold:#a9c1d9!important;

}.ornateShell:before, .ornateShell:after{display:none!important}.communityHeader{
  border:0!important;
  box-shadow:none!important;
}.communityBrand strong{
  font-family:system-ui,-apple-system,"Segoe UI","Noto Sans JP",sans-serif!important;
}.communityNav .loginLink{
  box-shadow:none!important;
}.communityMain{
  background-image:none!important;
}.subpageShell, .detailMain, .postMain, .adminMain, .memberEditMain{
  padding:0 22px 30px!important;
}.subpageHero{
  width:calc(100% + 44px);
  height:clamp(190px,22vw,290px);
  margin:0 -22px;
  background:#173b6a url("assets/hero-background.png") center/cover no-repeat;
}.pageBreadcrumb{
  width:min(100%,1180px);
  margin:0 auto;
  padding:16px 2px 14px;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  color:#74899e;
  font-size:.82rem;
}.pageBreadcrumb a{color:#5b7c9d;text-decoration:none}.pageBreadcrumb strong{color:#173b6a}.cleanPageHeading{
  width:min(100%,1180px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding:22px 24px!important;
  background:#fff!important;
  border:1px solid #bfd3e6!important;
}.cleanPageHeading h1{color:#173b6a!important}.cleanPageHeading span{color:#71869b!important}.detailMain>.eventOverview, .detailMain>.contentPanel{
  width:min(100%,1180px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}.detailMain>.contentPanel{
  background:#fff!important;
  border:1px solid #bfd3e6!important;
}.panelLead{color:#71869b!important}.registrationPanel{background:#fbfdff!important}.registrationPanel .primaryWide{
  background:#17457d!important;
  border-color:#17457d!important;
  color:#fff!important;
}.postPage .composeHero{
  background-image:url("assets/hero-background.png")!important;
}.postPage .postFormCard, .postGuidelines{
  border-color:#bfd3e6!important;
  background:#fff!important;
  box-shadow:0 4px 14px rgba(31,75,116,.055)!important;
}.postPage .postSectionHead{
  background:#fff!important;
  border-bottom-color:#dce8f2!important;
}.postPage .formBlock, .postPage .publishBlock{
  background:#fff!important;
  border-color:#d2e1ed!important;
}.postPage input, .postPage textarea, .postPage select{
  background:#fff!important;
  border-color:#b8cee2!important;
}.postPage .postActions{
  background:#f7fbff!important;
  border-top-color:#d3e2ee!important;
}.adminMain>.card, .loginPagePanel{
  width:min(100%,1180px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  background:#fff!important;
  border:1px solid #bfd3e6!important;
}.loginPagePanel{max-width:650px!important}.loginPagePanel>header{
  padding:18px 22px!important;
  color:#173b6a!important;
  background:#fff!important;
  border-bottom:1px solid #dce8f2!important;
}.loginPagePanel>header h2{color:#173b6a!important;font-family:inherit!important}.badge, .formatBadge{
  border-radius:4px!important;
}.memberEditMain>.card{
  width:min(100%,1180px)!important;
  margin:0 auto!important;
  padding:24px!important;
  background:#fff!important;
  border:1px solid #bfd3e6!important;
}.memberHeading p{color:#2f6fdd!important}.memberHeading>a{
  color:#17457d!important;
  background:#fff!important;
  border:1px solid #91b2d1!important;
}.memberEditPage input, .memberEditPage textarea, .memberEditPage select{
  background:#fff!important;
  border-color:#b8cee2!important;
}button:not(.danger), .button:not(.danger){
  color:#fff!important;
  background:#17457d!important;
  border-color:#17457d!important;
  box-shadow:none!important;
}.button.light, button.light, .postSubButton{
  color:#17457d!important;
  background:#fff!important;
  border-color:#9ebbd6!important;
}.danger, .button.danger, button.danger{
  color:#fff!important;
  background:#c63c3c!important;
  border-color:#c63c3c!important;
}.communityFooter{
  background:#173b6a!important;
  border:0!important;
}.communityFooter p{color:#f5f8fc!important}@media (max-width:760px){.communityHome>.ornateShell, .publicPage>.ornateShell, .postPage>.ornateShell, .adminPage>.ornateShell, .memberEditPage>.ornateShell{
    width:100%!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }.subpageHero{
    width:calc(100% + 20px);
    height:clamp(145px,45vw,205px);
    margin:0 -10px;
  }.pageBreadcrumb{padding:12px 2px 10px}.cleanPageHeading{
    flex-direction:column!important;
    align-items:stretch!important;
    gap:12px!important;
  }.cleanPageHeading>a{width:100%!important;text-align:center!important}.memberEditMain>.card{padding:18px 15px!important}}html, body{min-height:100%}.communityMain{min-height:calc(100vh - 76px)!important}.detailMain{padding:0!important;background:#f6faff!important}.eventBack{display:block!important;width:min(100%,1180px);margin:0 auto 14px!important;padding:0!important;color:#1766b3!important;text-decoration:none!important}.eventPageGrid{width:min(100%,1180px);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 286px;gap:18px;align-items:start}.eventPagePrimary{min-width:0}.eventPagePrimary>.eventOverview{margin:0 0 14px!important}.eventPagePrimary>.eventOverview>.backLink{display:none!important}.eventPagePrimary>.contentPanel{width:100%!important;margin:0 0 14px!important}.sideEmpty{min-height:116px;margin:0;padding:18px;display:flex;align-items:center;justify-content:center;color:#74899e;text-align:center;font-size:.82rem}.publicPage .eventOverview{border-color:#a9c9e8!important}.publicPage .eventOverview:before, .publicPage .eventOverview:after, .contentPanel:before, .contentPanel:after{display:none!important}.mobileNav{display:none;position:relative}.mobileNav summary{list-style:none;cursor:pointer;color:#17355d;font-weight:800}.mobileNav summary::-webkit-details-marker{display:none}.mobileNav nav{display:grid;position:absolute;right:0;top:38px;z-index:50;min-width:220px;padding:8px;background:#fff;border:1px solid #c7d9e9;border-radius:7px;box-shadow:0 10px 22px rgba(24,62,99,.14)}.mobileNav nav a{padding:11px 12px;color:#17355d;text-decoration:none;border-bottom:1px solid #e5edf4}.mobileNav nav a:last-child{border-bottom:0}.mobileNav nav .loginLink{margin-top:5px;color:#fff;background:#17457d;border-radius:5px;text-align:center}@media (max-width:900px){.eventPageGrid{grid-template-columns:1fr}.communityNav{display:none!important}.mobileNav{display:block}}@media (max-width:760px){.eventPageGrid{gap:10px}}.publicPage .eventFacts{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  margin:0 0 22px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  overflow:visible!important;
  background:transparent!important;
}.publicPage .eventFacts>div{
  min-width:0!important;
  padding:15px 18px!important;
  display:grid!important;
  grid-template-columns:118px minmax(0,1fr)!important;
  align-items:center!important;
  column-gap:14px!important;
  background:#fff!important;
  border:1px solid #c5d9ea!important;
}.publicPage .eventFacts>div+div{
  border-left:1px solid #c5d9ea!important;
}.publicPage .eventFacts dt{
  margin:0!important;
  padding:0!important;
  color:#315a82!important;
  font-size:.79rem!important;
  font-weight:800!important;
  letter-spacing:.01em!important;
}.publicPage .eventFacts dd{
  margin:0!important;
  color:#173b6a!important;
  font-size:.98rem!important;
  font-weight:750!important;
  line-height:1.5!important;
}.publicPage .eventFacts>div:hover{
  border-color:#a9c7e2!important;
  box-shadow:0 4px 12px rgba(31,75,116,.055)!important;
}@media (max-width:760px){.publicPage .eventFacts{
    grid-template-columns:1fr!important;
  }.publicPage .eventFacts>div{
    min-height:72px!important;
    grid-template-columns:92px minmax(0,1fr)!important;
    padding:13px 14px!important;
    column-gap:10px!important;
  }.publicPage .eventFacts>div+div{
    border-top:1px solid #c5d9ea!important;
  }}.publicPage .eventFacts>div:first-child{
  background:#f3f8ff!important;
  border-color:#bed5ed!important;
}.publicPage .eventFacts>div:first-child dt{
  color:#275f9f!important;
}.publicPage .eventFacts>div:nth-child(2){
  background:#f2fbf5!important;
  border-color:#bfe0ca!important;
}.publicPage .eventFacts>div:nth-child(2) dt{
  color:#267743!important;
}.statusSymbol{
  position:relative;
  width:52px;
  height:52px;
  flex:0 0 52px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  font-style:normal;
  font-weight:900;
  line-height:1;
}.statusJoin .statusSymbol{
  background:#dff4e7;
}.symbolPerson i{
  position:absolute;
  left:50%;
  top:11px;
  width:13px;
  height:13px;
  transform:translateX(-50%);
  border-radius:50%;
  background:currentColor;
}.symbolPerson:after{
  content:"";
  position:absolute;
  left:50%;
  bottom:9px;
  width:25px;
  height:17px;
  transform:translateX(-50%);
  border-radius:14px 14px 7px 7px;
  background:currentColor;
}.statusWatch .statusSymbol{
  background:#eee5fb;
}.symbolPeople i{
  position:absolute;
  top:12px;
  width:11px;
  height:11px;
  border-radius:50%;
  background:currentColor;
}.symbolPeople i:first-child{left:13px}.symbolPeople i:nth-child(2){right:13px}.symbolPeople:before, .symbolPeople:after{
  content:"";
  position:absolute;
  bottom:10px;
  width:20px;
  height:15px;
  border-radius:12px 12px 6px 6px;
  background:currentColor;
}.symbolPeople:before{left:7px}.symbolPeople:after{right:7px}.memberPanel .tableWrap{
  width:100%!important;
  overflow:visible!important;
  max-width:100%!important;
}.memberPanel .memberEdit{
  white-space:nowrap!important;
}@media (max-width:680px){.statusSymbol{
    width:44px!important;
    height:44px!important;
    flex-basis:44px!important;
  }.symbolPerson i{top:9px;width:11px;height:11px}.symbolPerson:after{bottom:7px;width:22px;height:15px}.symbolPeople i{top:10px;width:10px;height:10px}.symbolPeople i:first-child{left:10px}.symbolPeople i:nth-child(2){right:10px}.symbolPeople:before, .symbolPeople:after{bottom:8px;width:18px;height:13px}.symbolPeople:before{left:5px}.symbolPeople:after{right:5px}}:root{

  --uiSoft:#f6faff;

  --uiLine:#c9dbea;
  --uiLineStrong:#a9c5df;
  --uiText:#17324d;
  --uiMuted:#6f8498;
  --uiNavy:#173b6a;
  --uiBlue:#2f6fdd;
  --uiRed:#d64545;
  --uiGreen:#21864a;

  --uiRadius:10px;

  --uiShadow:0 8px 24px rgba(31,75,116,.07);
  --uiShadowSoft:0 4px 14px rgba(31,75,116,.05);
}html, body{
  margin:0!important;
  background:#fff!important;
  color:var(--uiText)!important;
  font-family:system-ui,-apple-system,"Segoe UI","Noto Sans JP","Hiragino Kaku Gothic ProN",sans-serif!important;
}body{
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}a{transition:color .16s ease,background-color .16s ease,border-color .16s ease,box-shadow .16s ease}button, input, textarea, select{font:inherit}.communityHome>.ornateShell, .publicPage>.ornateShell, .postPage>.ornateShell, .adminPage>.ornateShell, .memberEditPage>.ornateShell{
  width:min(calc(100% - 28px),1080px)!important;
  margin:14px auto!important;
  overflow:hidden!important;
  background:#fff!important;
  border:1px solid var(--uiLineStrong)!important;
  border-radius:var(--uiRadius)!important;
  box-shadow:0 14px 36px rgba(31,75,116,.085)!important;
}.communityHeader{
  min-height:76px!important;
  padding:12px 28px!important;
  background:rgba(255,255,255,.98)!important;
  border-bottom:1px solid #dce8f2!important;
}.communityBrand{
  gap:12px!important;
}.communityBrand strong{
  color:var(--uiNavy)!important;
  font-size:clamp(1.12rem,1.6vw,1.52rem)!important;
  font-weight:850!important;
  letter-spacing:.01em!important;
}.brandEmblem{
  width:46px!important;
  height:46px!important;
  flex-basis:46px!important;
  border-width:4px!important;
  box-shadow:0 0 0 2px #b7cee2!important;
}.communityNav{
  gap:2px!important;
}.communityNav a{
  padding:11px 13px!important;
  color:#294b6d!important;
  font-size:.88rem!important;
  font-weight:750!important;
  border-radius:5px 5px 0 0!important;
}.communityNav a:hover{
  color:var(--uiBlue)!important;
  background:#f7fbff!important;
}.communityNav .loginLink{
  margin-left:10px!important;
  padding:11px 18px!important;
  color:#fff!important;
  background:var(--uiNavy)!important;
  border:1px solid var(--uiNavy)!important;
  border-radius:7px!important;
}.communityNav .loginLink:hover{
  color:#fff!important;
  background:#102f55!important;
}.communityMain{
  background:linear-gradient(180deg,#f7fbff 0,#f4f9fd 100%)!important;
}.subpageShell, .detailMain, .postMain, .adminMain, .memberEditMain{
  padding-bottom:34px!important;
}.pageBreadcrumb, .composeBreadcrumb{
  padding-top:15px!important;
  padding-bottom:13px!important;
  color:#7a8ea2!important;
}.pageBreadcrumb a, .composeBreadcrumb a{
  color:#5b7fa2!important;
}.pageBreadcrumb strong, .composeBreadcrumb strong{
  color:var(--uiNavy)!important;
}.homeHero, .subpageHero, .composeHero{
  box-shadow:inset 0 -1px 0 rgba(255,255,255,.25)!important;
}.homeHero{
  margin-bottom:16px!important;
}.homeColumns{
  gap:16px!important;
}.feedPanel{
  border:1px solid var(--uiLine)!important;
  border-radius:var(--uiRadius)!important;
  box-shadow:var(--uiShadowSoft)!important;
}.feedPanel>header{
  min-height:50px!important;
  padding:0 17px!important;
  background:#fff!important;
  border-bottom:1px solid #e2ecf4!important;
}.feedPanel>header h2{
  color:var(--uiNavy)!important;
  font-size:1rem!important;
  font-weight:850!important;
}.feedPanel>header a{
  color:#5a7fa4!important;
}.feedRow{
  min-height:56px!important;
  padding:9px 14px!important;
}.feedRow:hover{
  background:#f6faff!important;
}.feedRow time{
  border-radius:6px!important;
  background:#f4f8fc!important;
}.feedCopy strong{
  color:#1c3854!important;
}.featureGrid{
  gap:16px!important;
}.featureCard{
  min-height:172px!important;
  padding:22px 20px 18px!important;
  border-radius:var(--uiRadius)!important;
  box-shadow:var(--uiShadowSoft)!important;
}.featureCard h2{
  font-size:1.22rem!important;
}.featureCard p{
  color:#506a83!important;
}.featurePrimary, .featureSecondary{
  min-height:36px!important;
  border-radius:18px!important;
}.cleanPageHeading{
  border-radius:var(--uiRadius)!important;
  box-shadow:var(--uiShadowSoft)!important;
}.cleanPageHeading h1{
  font-size:1.6rem!important;
}.cleanPageHeading>a{
  border-radius:7px!important;
  box-shadow:none!important;
}.publicPage .eventOverview{
  padding:26px!important;
  border-radius:var(--uiRadius)!important;
  box-shadow:var(--uiShadow)!important;
}.publicPage .eventOverviewTitle{
  margin-bottom:20px!important;
}.publicPage .eventRound{
  min-width:80px!important;
  min-height:50px!important;
  background:#174b8f!important;
  border-radius:7px!important;
}.publicPage .eventFacts{
  gap:14px!important;
}.publicPage .eventFacts>div{
  min-height:84px!important;
  border-radius:8px!important;
  box-shadow:0 2px 8px rgba(31,75,116,.03)!important;
}.publicPage .eventAbout{
  margin-bottom:19px!important;
}.publicPage .eventAbout h2{
  font-size:1.02rem!important;
}.publicPage .eventAbout p{
  color:#3f5c77!important;
}.statusSymbol{
  width:50px!important;
  height:50px!important;
  flex-basis:50px!important;
}.detailMain>.contentPanel{
  border-radius:var(--uiRadius)!important;
  box-shadow:var(--uiShadowSoft)!important;
}.memberPanel, .registrationPanel{
  padding:22px!important;
}.panelTitle{
  margin:0 0 6px!important;
  color:var(--uiNavy)!important;
  font-size:1.15rem!important;
}.panelLead{
  margin:0 0 14px!important;
}.countChip{
  border-radius:999px!important;
}.registrationPanel form{
  gap:0 18px!important;
}.registrationPanel input, .registrationPanel textarea, .registrationPanel select{
  border-radius:7px!important;
}.registrationPanel .primaryWide{
  min-height:46px!important;
  border-radius:7px!important;
}.postPage .postFormCard, .postGuidelines, .postPage .postSectionHead{
  padding:20px 22px!important;
}.postPage .postForm{
  padding:22px!important;
}.postPage input, .postPage textarea, .postPage select{
  border-radius:7px!important;
}.postPage .publishBlock{
  border-radius:8px!important;
}.postGuidelines{
  padding:20px!important;
}.postActions button, .postPicker button{
  border-radius:7px!important;
}.adminMain>.card, .loginPagePanel{
  border-radius:var(--uiRadius)!important;
  box-shadow:var(--uiShadowSoft)!important;
}.sectionHead{
  padding-bottom:13px!important;
}.sectionHead h2{
  font-size:1.16rem!important;
}.loginPagePanel{
  overflow:hidden!important;
}.loginContent{
  padding:24px!important;
}.memberEditMain>.card{
  border-radius:var(--uiRadius)!important;
  box-shadow:var(--uiShadowSoft)!important;
}.memberHeading{
  border-radius:var(--uiRadius)!important;
}input, textarea, select{
  transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease!important;
}input:focus, textarea:focus, select:focus{
  box-shadow:0 0 0 3px rgba(47,111,221,.09)!important;
}button, .button{
  transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .08s ease!important;
}button:hover, .button:hover{
  box-shadow:0 4px 10px rgba(23,59,106,.10)!important;
}button:active, .button:active{
  transform:translateY(1px);
}.communityFooter{
  padding:18px 24px!important;
}.communityFooter p{
  font-size:.78rem!important;
}@media (max-width:760px){.communityHeader{
    min-height:64px!important;
    padding:9px 12px!important;
  }.communityBrand strong{
    font-size:1rem!important;
  }.brandEmblem{
    width:40px!important;
    height:40px!important;
    flex-basis:40px!important;
  }.communityMain{
    padding-left:10px!important;
    padding-right:10px!important;
  }.cleanPageHeading{
    padding:17px!important;
  }.publicPage .eventOverview{
    padding:18px 14px!important;
  }.publicPage .eventFacts{
    gap:9px!important;
  }.memberPanel, .registrationPanel{
    padding:17px!important;
  }.postGuidelines{
    padding:16px!important;
  }}@media (max-width:520px){}body.publicPage .communityMain.detailMain{
  min-height:calc(100vh - 76px)!important;
  background:var(--page-background)!important;
  background-image:none!important;
}body.publicPage .eventBack, body.publicPage .eventPageGrid{
  margin-left:auto!important;
  margin-right:auto!important;
}@media (max-width:760px){body.publicPage .communityMain.detailMain{
    min-height:calc(100vh - 64px)!important;
  }}.feedEvents .feedTag.statusLive{
  color:#fff!important;
  background:#1f9a55!important;
  border-color:#1f9a55!important;
}.feedEvents .feedTag.statusUpcoming{
  color:#fff!important;
  background:#ef8d13!important;
  border-color:#ef8d13!important;
}.feedEvents .feedTag.statusEnded{
  color:#fff!important;
  background:#7b8794!important;
  border-color:#7b8794!important;
}.feedEvents .feedRow:has(.statusLive) time{
  color:#176d3f!important;
  background:#f0faf4!important;
  border-color:#b8dfc7!important;
}.feedEvents .feedRow:has(.statusUpcoming) time{
  color:#a35f00!important;
  background:#fff8ea!important;
  border-color:#ecd8a8!important;
}.feedEvents .feedTag.statusLive, .feedEvents .feedTag.statusUpcoming{
  box-shadow:none!important;
}@media (max-width:760px){}@media (min-width:901px){body.communityHome .ornateShell{
    width:min(calc(100% - 28px),1080px)!important;
    min-height:0!important;
  }body.communityHome .communityMain{
    min-height:0!important;
    padding:18px!important;
  }body.communityHome .homeHero, body.communityHome .homeColumns, body.communityHome .featureGrid{
    width:100%!important;
    max-width:none!important;
  }body.communityHome .homeHero{
    margin-bottom:16px!important;
  }body.communityHome .homeColumns{
    margin-bottom:16px!important;
    gap:16px!important;
  }body.communityHome .featureGrid{
    margin-bottom:0!important;
    gap:16px!important;
  }body.communityHome .homeHero{
    width:calc(100% + 36px)!important;
    max-width:none!important;
    margin:0 -18px 16px!important;
    background-position:center center!important;
  }}.navPlanned{display:flex!important;flex-direction:column!important;align-items:center!important;gap:1px!important}.navPlanned small{font-size:.58rem!important;font-weight:700!important;color:#7a8797!important}.feedPlanned{margin-left:auto;color:#718198;font-size:.72rem;font-weight:800;white-space:nowrap}.featurePlanned{opacity:.78}.featurePlanned .plannedLabel{display:flex;align-items:center;justify-content:center;min-height:44px;margin-top:20px;border:1px solid currentColor;background:#f7faf8;font-weight:900;letter-spacing:.08em}.plannedPage{margin:24px auto;max-width:720px;padding:54px 28px;text-align:center;background:#fff;border:1px solid #cbd8e6;border-radius:10px}.plannedPage h1{margin:5px 0 18px;color:#123c6b}.plannedPage>strong{display:inline-block;padding:8px 22px;border:1px solid #91c4a3;border-radius:999px;color:#246f3c;background:#f4fbf6}.plannedPage p{color:#718198}.plannedPage a{display:inline-block;margin-top:12px;color:#245b94;text-decoration:none;font-weight:800}.communityNav form, .mobileNav nav form{margin:0}.communityNav .headerActionButton, .mobileNav .headerActionButton{font:inherit;cursor:pointer}.communityNav button.loginLink{margin-left:12px;padding:13px 24px;color:#fff;background:#17457d;border:1px solid #7898ba;border-radius:7px;font-weight:800}.mobileNav button.loginLink{width:100%;margin-top:5px;padding:11px 12px;color:#fff;background:#17457d;border:0;border-radius:5px;text-align:center;font-weight:800}.statusCancelled{background:#667085!important;color:#fff!important}.badge.eventState{background:#eef2f6;color:#475467}.badge.eventState.statusLive{background:#eaf8ef;color:#177a43}.badge.eventState.statusUpcoming{background:#fff5e6;color:#a15c00}.badge.eventState.statusEnded{background:#eef1f5;color:#596579}.badge.eventState.statusCancelled{background:#f2f4f7;color:#475467}/* Home hero frame and public list border correction */body.communityHome:not(.publicPage):not(.postPage):not(.adminPage):not(.memberEditPage) .homeHero{
  width:100%!important;
  margin:0 0 16px!important;
  border:1px solid #c0d5e7!important;
  border-radius:8px!important;
  overflow:hidden!important;
  box-shadow:0 4px 12px rgba(37,80,119,.08)!important;
}@media (max-width:760px){body.communityHome:not(.publicPage):not(.postPage):not(.adminPage):not(.memberEditPage) .homeHero{
    width:100%!important;
    margin:10px 0 0!important;
  }}/* Login panel frame correction *//* Events / results pages: match the home feed-card visual language. */body.publicPage .pageFeedPanel{
  width:min(100%,1180px)!important;
  margin:0 auto!important;
}body.publicPage .pageFeedPanel>header{
  min-height:56px!important;
  padding:0 18px!important;
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  background:#fff!important;
  border-bottom:1px solid var(--uiLine)!important;
}body.publicPage .pageFeedPanel>header h1{
  margin:0!important;
  color:var(--uiNavy)!important;
  font-size:1.08rem!important;
  line-height:1.3!important;
}body.publicPage .pageFeedDescription{
  margin-right:auto!important;
  color:var(--uiMuted)!important;
  font-size:.8rem!important;
}body.publicPage .pagePostLink{
  flex:0 0 auto!important;
  padding:6px 11px!important;
  border:1px solid var(--uiLine)!important;
  border-radius:6px!important;
  background:#fff!important;
  color:#486f98!important;
  font-size:.78rem!important;
  font-weight:800!important;
  text-decoration:none!important;
}body.publicPage .pagePostLink:hover{background:var(--uiSoft)!important}body.publicPage .pageFeedPanel .feedRow{
  min-height:76px!important;
  padding:12px 18px!important;
}body.publicPage .pageResultsPanel .resultTag{background:#2f6fdd!important}@media (max-width:760px){body.publicPage .pageFeedPanel>header{align-items:flex-start!important;flex-wrap:wrap!important;padding:13px 14px!important}body.publicPage .pageFeedDescription{order:3;width:100%!important}body.publicPage .pagePostLink{margin-left:auto!important}body.publicPage .pageFeedPanel .feedRow{padding:11px 12px!important}}/* Events / results list frame: use the neutral standard line color. */body.publicPage .pageFeedPanel{
  border:1px solid #d6dde7!important;
}/* Home spacing correction: avoid stacking hero margin and feed padding. */@media (min-width:901px){body.communityHome:not(.publicPage):not(.postPage):not(.adminPage):not(.memberEditPage) .homeColumns{
    padding-top:0!important;
  }}
/* イベント投稿の日時欄は開始・終了を縦配置し、各日時の5項目は横並びにする。 */
.postEvent .datetimeFormStack{display:grid;grid-template-columns:1fr;gap:18px}
.postEvent .datetimeFormStack .formBlock{min-width:0}
.postEvent .datetimeFormStack .datetimeSelects{grid-template-columns:repeat(5,minmax(0,1fr))!important}
@media (max-width:760px){.postEvent .datetimeFormStack .datetimeSelects{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* Public event/result list pagination. */
.listPager{display:flex;align-items:center;justify-content:center;gap:14px;padding:14px 12px 8px}
.listPager a,.listPager span{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:7px 14px;border:1px solid #d8dee8;border-radius:9px;background:#fff;color:#315a86;font-weight:700;text-decoration:none}
.listPager span{color:#667085;background:#f8fafc}
.listPager a:hover{background:#f1f6fb}

.statusBody{display:grid;gap:2px}.statusTitle,.statusDetail{display:block}.statusTitle{font-size:1.05rem;font-weight:700}.statusDetail{font-size:1.05rem;font-weight:700}

/* events/edit は管理用投稿画面のため背景画像を表示しない。 */
body.postEvent .composeHero{display:none!important;background-image:none!important;}

/* events/edit は右サイドバーを持たないため、投稿領域を1カラムで表示する。 */
body.postEvent .postMain{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  column-gap:0!important;
}
body.postEvent .composeBreadcrumb,
body.postEvent .statusMessage,
body.postEvent .eventFormCard{
  grid-column:1!important;
}
body.postEvent .eventFormCard{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
}

/* 対戦形式は3項目のため、画面幅にかかわらず1行3列で表示します。 */
.postPage .battleFormat{grid-template-columns:repeat(3,minmax(0,1fr))!important;max-width:none!important}

.eventDetailNav{width:min(100%,1180px);margin:0 auto 14px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.eventResultAction{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:8px 18px;border:1px solid #2f6fae;border-radius:6px;background:#2f6fae;color:#fff;text-decoration:none;font-weight:800;white-space:nowrap}
.eventResultAction:hover{background:#245b91;border-color:#245b91;color:#fff}
@media (max-width:600px){.eventDetailNav{align-items:stretch;flex-direction:column}.eventResultAction{width:100%}}

.postResult .composeBreadcrumb{margin-top:0}

/* 画面の縦スクロールは維持し、ブラウザの縦スクロールバーだけ非表示にします。 */
html{
  scrollbar-width:none;
  -ms-overflow-style:none;
}
html::-webkit-scrollbar{
  width:0;
  height:0;
  display:none;
}

.eventDetailActions{display:flex;align-items:center;justify-content:flex-end;gap:10px}
.eventPostAction{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:8px 18px;border:1px solid #17457d;border-radius:6px;background:#fff;color:#17457d;text-decoration:none;font-weight:800;white-space:nowrap}
.eventPostAction:hover{background:#eef5fb;color:#17457d}
@media (max-width:600px){.eventDetailActions{width:100%;display:grid;grid-template-columns:1fr;gap:8px}.eventPostAction{width:100%}}

/* 最終UI調整：ログイン枠とスマートフォン余白を現行デザインへ統一します。 */
body.adminPage .loginPagePanel{
  border:1px solid #c0d5e7!important;
  background:#fff!important;
  box-shadow:0 4px 12px rgba(37,80,119,.08)!important;
}
body.adminPage .loginPagePanel::after{
  content:none!important;
  display:none!important;
}
@media (max-width:760px){
  body>.ornateShell{min-height:0!important}
  body.communityHome .communityMain,
  body.publicPage .communityMain,
  body.postPage .postMain,
  body.adminPage .adminMain,
  body.memberEditPage .memberEditMain{
    min-height:0!important;
    padding:12px!important;
    box-sizing:border-box!important;
  }
  body.publicPage .communityMain.detailMain{padding:0!important}
  body.publicPage .pageFeedPanel,
  body.postPage .postFormCard,
  body.adminPage .loginPagePanel,
  body.memberEditPage .card{
    margin-top:0!important;
    margin-bottom:0!important;
  }
}

/* 運営者だけに表示する非公開イベントの識別表示。 */
.privateTag{background:#f2f4f7!important;border-color:#d0d5dd!important;color:#475467!important}
.operatorListNote{margin:0;padding:10px 14px;border-bottom:1px solid #d9e3ee;background:#f8fbfe;color:#52667d;font-size:.86rem}
.endedTag{background:#eef2f6!important;border-color:#cbd5e1!important;color:#475569!important}

.eventDeleteForm{margin:0}.eventDeleteAction{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:8px 18px;border:1px solid #b42318;border-radius:6px;background:#b42318;color:#fff;font-weight:800;white-space:nowrap}.eventDeleteAction:hover{border-color:#912018;background:#912018;color:#fff}@media (max-width:600px){.eventDeleteForm,.eventDeleteAction{width:100%}}
/* イベント個別ページ：一覧へ戻るリンクは左寄せ。 */
/* 共通カード余白 */
.contentPanel,
.adminPage .card,
.memberEditPage .card{
  padding:18px!important;
}

/* 外側背景は薄いグレー、メイン領域は --page-background の薄い青を使用する。 */
html,
body,
body.communityHome,
body.communityHome.publicPage,
body.communityHome.postPage,
body.communityHome.adminPage{
  background:#f3f4f6!important;
}

body.communityHome>.ornateShell{
  border:0!important;
}

/* イベント個別ページ：概要・本文・参加情報・登録フォームを縦方向のカードに統一する。 */
body.publicPage .eventDetailTitle{
  margin:0 0 16px!important;
}
body.publicPage .eventDetailTitle h1{
  margin:0!important;
  color:#102f5e!important;
  font-size:1.72rem!important;
  line-height:1.35!important;
  font-weight:800!important;
}
body.publicPage .eventOverview{
  margin:0 0 16px!important;
  padding:18px!important;
  background:#fff!important;
  border:1px solid #c7dced!important;
  border-radius:7px!important;
  box-shadow:none!important;
}
body.publicPage .eventOverviewHeading,
body.publicPage .eventAbout .panelTitle,
body.publicPage .eventSummaryPanel .panelTitle,
body.publicPage .memberPanel .panelTitle,
body.publicPage .registrationPanel .panelTitle{
  margin:0 0 12px!important;
  padding:0 0 10px!important;
  border-bottom:1px solid #e2ebf3!important;
  color:#123765!important;
  font-size:1.05rem!important;
  font-weight:800!important;
}
body.publicPage .eventInfoList{
  margin:0!important;
}
body.publicPage .eventInfoList>div{
  display:grid!important;
  grid-template-columns:126px minmax(0,1fr)!important;
  gap:0!important;
  padding:9px 0!important;
  border-bottom:1px solid #edf2f7!important;
}
body.publicPage .eventInfoList>div:last-child{
  border-bottom:0!important;
}
body.publicPage .eventInfoList dt,
body.publicPage .eventInfoList dd{
  margin:0!important;
  padding:0!important;
}
body.publicPage .eventInfoList dt{
  color:#173b6a!important;
  font-weight:800!important;
}
body.publicPage .eventInfoList dd{
  color:#17304e!important;
  font-weight:600!important;
}
body.publicPage .eventInfoList dt,
body.publicPage .eventInfoList dd{
  font-size:.9rem!important;
}
body.publicPage .eventStatusChip{
  display:inline-flex!important;
  align-items:center!important;
  min-height:24px!important;
  padding:2px 8px!important;
  border-radius:4px!important;
  font-size:.78rem!important;
  font-weight:800!important;
}
body.publicPage .eventStatusChip.statusLive{
  color:#08783d!important;
  background:#dff5e6!important;
}
body.publicPage .eventStatusChip.statusUpcoming{
  color:#9a5d00!important;
  background:#fff0cf!important;
}
body.publicPage .eventStatusChip.statusEnded{
  color:#315f9a!important;
  background:#e9f1fb!important;
}
body.publicPage .eventStatusChip.statusCancelled{
  color:#a12626!important;
  background:#fde8e8!important;
}
body.publicPage .eventAbout{
  margin:0 0 16px!important;
  padding:18px!important;
  background:#fff!important;
  border:1px solid #c7dced!important;
  border-radius:7px!important;
}
body.publicPage .eventAbout p{
  margin:0!important;
  color:#243b55!important;
  font-size:.95rem!important;
  line-height:1.8!important;
}
body.publicPage .eventSummaryPanel,
body.publicPage .memberPanel,
body.publicPage .registrationPanel{
  width:100%!important;
  margin:0 0 16px!important;
  padding:18px!important;
  background:#fff!important;
  border:1px solid #c7dced!important;
  border-radius:7px!important;
  box-shadow:none!important;
}
body.publicPage .registrationLead{
  margin:0 0 12px!important;
  color:#51667c!important;
  font-size:.9rem!important;
}
body.publicPage .registrationPanel form{
  width:100%!important;
  max-width:none!important;
}
body.publicPage .registrationPanel .primaryWide{
  min-height:46px!important;
  margin-top:18px!important;
}
@media (max-width:720px){
  body.publicPage .eventDetailTitle{
    margin-bottom:12px!important;
  }
  body.publicPage .eventDetailTitle h1{
    font-size:1.28rem!important;
  }
  body.publicPage .eventOverview,
  body.publicPage .eventAbout,
  body.publicPage .eventSummaryPanel,
  body.publicPage .memberPanel,
  body.publicPage .registrationPanel{
    padding:14px!important;
    margin-bottom:12px!important;
  }
  body.publicPage .eventInfoList>div{
    grid-template-columns:94px minmax(0,1fr)!important;
    padding:8px 0!important;
  }
  body.publicPage .eventInfoList dt,
  body.publicPage .eventInfoList dd{
    font-size:.88rem!important;
  }
}

/* スマートフォン：イベント個別ページの左右余白を最終指定で確保する。 */
@media (max-width:720px){
  body.publicPage .communityMain.detailMain{
    padding-left:12px!important;
    padding-right:12px!important;
    box-sizing:border-box!important;
  }
}

/* イベント個別ページ：イベント名を概要カードの見出しとして使用する。 */
body.publicPage .eventOverviewTitle{
  margin:0 0 12px!important;
  padding:0 0 12px!important;
  border-bottom:1px solid #e2ebf3!important;
  color:#102f5e!important;
  font-family:"Noto Sans JP","Yu Gothic","YuGothic","Hiragino Kaku Gothic ProN","Meiryo",sans-serif!important;
  font-size:1.25rem!important;
  line-height:1.4!important;
  font-weight:700!important;
}
body.publicPage .eventOverview .eventInfoList{
  margin-top:0!important;
}
@media (max-width:720px){
  body.publicPage .eventOverviewTitle{
    margin-bottom:10px!important;
    padding-bottom:10px!important;
    font-size:1.2rem!important;
  }
}

body.publicPage .eventMembersPanel{
  width:100%!important;
  margin:0 0 16px!important;
  padding:18px!important;
  background:#fff!important;
  border:1px solid #c7dced!important;
  border-radius:7px!important;
  box-shadow:none!important;
}
body.publicPage .eventMembersPanel .tableWrap{
  margin:0!important;
}
body.publicPage .eventMembersPanel .empty{
  margin:0!important;
}
@media (max-width:720px){
  body.publicPage .eventMembersPanel{
    padding:14px!important;
    margin-bottom:12px!important;
  }
}

/* イベント個別ページ：「イベントについて」と参加情報を1つの外枠に統合する。 */
body.publicPage .eventAbout{
  padding:18px!important;
}
body.publicPage .eventAbout>.panelTitle{
  margin:0 0 12px!important;
  padding:0 0 10px!important;
}
body.publicPage .eventAbout>p{
  margin:0 0 18px!important;
}
body.publicPage .eventAbout .eventMembersPanel{
  width:100%!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
body.publicPage .eventAbout .eventMembersPanel .tableWrap{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
}
body.publicPage .eventAbout .eventMembersPanel .empty{
  margin:0!important;
}
@media (max-width:720px){
  body.publicPage .eventAbout{
    padding:14px!important;
  }
  body.publicPage .eventAbout>p{
    margin-bottom:14px!important;
  }
}

/* トップページ「イベント開催」：PC・スマートフォン共通レイアウト。 */
body.communityHome .feedEvents .feedList{
  display:block!important;
}
body.communityHome .feedEvents .homeEventCard{
  display:grid!important;
  grid-template-columns:72px minmax(0,1fr) 18px!important;
  gap:12px!important;
  align-items:center!important;
  min-height:98px!important;
  padding:10px 12px!important;
  color:#1d344f!important;
  background:#fff!important;
  border:0!important;
  border-bottom:1px solid #e5edf4!important;
  text-decoration:none!important;
}
body.communityHome .feedEvents .homeEventCard:last-child{
  border-bottom:0!important;
}
body.communityHome .feedEvents .homeEventCard:hover{
  background:#f8fbfe!important;
}
body.communityHome .feedEvents .homeEventDate{
  align-self:stretch!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  min-width:0!important;
  padding:7px 5px!important;
  box-sizing:border-box!important;
  border-radius:7px!important;
}
body.communityHome .feedEvents .homeEventDate>b{
  font-size:.96rem!important;
  line-height:1.1!important;
  font-weight:800!important;
}
body.communityHome .feedEvents .homeEventDate>small{
  font-size:.73rem!important;
  line-height:1.1!important;
  font-weight:800!important;
}
body.communityHome .feedEvents .homeEventStatus{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:21px!important;
  margin-top:4px!important;
  padding:2px 7px!important;
  border-radius:3px!important;
  color:#fff!important;
  font-size:.64rem!important;
  line-height:1.15!important;
  font-weight:800!important;
  white-space:nowrap!important;
}
body.communityHome .feedEvents .homeEventLive .homeEventDate{
  color:#a12626!important;
  background:#fff2f2!important;
}
body.communityHome .feedEvents .homeEventLive .homeEventStatus{
  background:#d92d20!important;
}
body.communityHome .feedEvents .homeEventUpcoming .homeEventDate{
  color:#a45d00!important;
  background:#fff8ef!important;
}
body.communityHome .feedEvents .homeEventUpcoming .homeEventStatus{
  background:#d97706!important;
}
body.communityHome .feedEvents .homeEventStatus.privateTag{
  background:#667085!important;
}
body.communityHome .feedEvents .homeEventInfo{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:5px!important;
}
body.communityHome .feedEvents .homeEventTitle{
  display:block!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#17355b!important;
  font-size:.94rem!important;
  line-height:1.3!important;
  font-weight:750!important;
}
body.communityHome .feedEvents .homeEventLine{
  display:block!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#526b83!important;
  font-size:.73rem!important;
  line-height:1.35!important;
}
body.communityHome .feedEvents .homeEventStats .joinCount{
  color:#1663b7!important;
  font-weight:750!important;
}
body.communityHome .feedEvents .homeEventStats .watchCount{
  color:#7650b5!important;
  font-weight:750!important;
}
body.communityHome .feedEvents .homeEventArrow{
  color:#345879!important;
  font-size:1.35rem!important;
  line-height:1!important;
  font-weight:700!important;
}
@media (max-width:720px){
  body.communityHome .feedEvents .homeEventCard{
    grid-template-columns:64px minmax(0,1fr) 14px!important;
    gap:8px!important;
    min-height:90px!important;
    padding:8px 8px!important;
  }
  body.communityHome .feedEvents .homeEventDate{
    padding:6px 4px!important;
  }
  body.communityHome .feedEvents .homeEventDate>b{
    font-size:.88rem!important;
  }
  body.communityHome .feedEvents .homeEventDate>small{
    font-size:.68rem!important;
  }
  body.communityHome .feedEvents .homeEventStatus{
    padding:2px 5px!important;
    font-size:.59rem!important;
  }
  body.communityHome .feedEvents .homeEventInfo{
    gap:3px!important;
  }
  body.communityHome .feedEvents .homeEventTitle{
    font-size:.82rem!important;
  }
  body.communityHome .feedEvents .homeEventLine{
    font-size:.66rem!important;
  }
}

/* トップページ「イベント開催」：レイアウトは変更せず配色のみ調整。 */
body.communityHome .feedEvents .homeEventCard{
  color:#1f3653!important;
  background:#fff!important;
}
body.communityHome .feedEvents .homeEventCard:hover{
  background:#fafcff!important;
}
body.communityHome .feedEvents .homeEventTitle{
  color:#123b69!important;
}
body.communityHome .feedEvents .homeEventLine{
  color:#667085!important;
}

/* 開催中：淡い赤。 */
body.communityHome .feedEvents .homeEventLive .homeEventDate{
  color:#b42318!important;
  background:#fff4f3!important;
}
body.communityHome .feedEvents .homeEventLive .homeEventStatus{
  color:#b42318!important;
  background:#fee4e2!important;
  border:1px solid #fecdca!important;
}

/* 開催予定：淡いオレンジ。 */
body.communityHome .feedEvents .homeEventUpcoming .homeEventDate{
  color:#b54708!important;
  background:#fff8eb!important;
}
body.communityHome .feedEvents .homeEventUpcoming .homeEventStatus{
  color:#b54708!important;
  background:#ffead5!important;
  border:1px solid #fed7aa!important;
}

/* 人数は既存サイトに合わせて参加＝青、観戦＝紫。 */
body.communityHome .feedEvents .homeEventStats .joinCount{
  color:#1769aa!important;
}
body.communityHome .feedEvents .homeEventStats .watchCount{
  color:#6941c6!important;
}
body.communityHome .feedEvents .homeEventArrow{
  color:#355c7d!important;
}

/* トップページ「イベント開催」：状態色を一段濃く調整。 */
body.communityHome .feedEvents .homeEventLive .homeEventDate{
  color:#a61b12!important;
  background:#fde9e7!important;
}
body.communityHome .feedEvents .homeEventLive .homeEventStatus{
  color:#fff!important;
  background:#d92d20!important;
  border-color:#d92d20!important;
}
body.communityHome .feedEvents .homeEventUpcoming .homeEventDate{
  color:#a94f00!important;
  background:#fff0dc!important;
}
body.communityHome .feedEvents .homeEventUpcoming .homeEventStatus{
  color:#fff!important;
  background:#e8790b!important;
  border-color:#e8790b!important;
}

/* トップページ「イベント開催」：開催中・開催予定バッジだけをコンパクト化。 */
body.communityHome .feedEvents .homeEventStatus{
  min-height:18px!important;
  margin-top:3px!important;
  padding:1px 5px!important;
  font-size:.58rem!important;
  line-height:1.15!important;
  border-radius:3px!important;
}
@media (max-width:720px){
  body.communityHome .feedEvents .homeEventStatus{
    min-height:17px!important;
    padding:1px 4px!important;
    font-size:.56rem!important;
  }
}

/* トップページ「イベント開催」：一覧外側の余白をなくす。 */
body.communityHome .feedEvents .feedList{
  padding:0!important;
}

/* トップページ「イベント開催」：開催予定・開催中の上にある日付だけを小さくする。 */
body.communityHome .feedEvents .homeEventDate > b{
  font-size:.86rem!important;
}
@media (max-width:720px){
  body.communityHome .feedEvents .homeEventDate > b{
    font-size:.82rem!important;
  }
}

/* トップページ「イベント開催」：日付・曜日・状態が入る左ボックスの内側余白だけを縮小。 */
body.communityHome .feedEvents .homeEventDate{
  padding:3px 3px!important;
}
@media (max-width:720px){
  body.communityHome .feedEvents .homeEventDate{
    padding:3px 3px!important;
  }
}

/* 日付・曜日・状態ボックスはイベント行の高さまで引き伸ばさず、内容の高さに合わせる。 */
body.communityHome .feedEvents .homeEventDate{
  align-self:center!important;
  height:auto!important;
  min-height:0!important;
  padding:3px 3px!important;
}

/* homeEventDate：内容に合わせる方針は維持しつつ、高さを少し戻す。 */
body.communityHome .feedEvents .homeEventDate{
  min-height:70px!important;
  padding:5px 3px!important;
}
@media (max-width:720px){
  body.communityHome .feedEvents .homeEventDate{
    min-height:66px!important;
    padding:4px 3px!important;
  }
}

/* トップページ「イベント結果」：イベント開催と同じ情報配置に統一する。 */
body.communityHome .feedContent .feedList{
  display:block!important;
  padding:0!important;
}
body.communityHome .feedContent .homeResultCard{
  display:grid!important;
  grid-template-columns:72px minmax(0,1fr) 18px!important;
  gap:12px!important;
  align-items:center!important;
  min-height:98px!important;
  padding:10px 12px!important;
  color:#1d344f!important;
  background:#fff!important;
  border:0!important;
  border-bottom:1px solid #e5edf4!important;
  text-decoration:none!important;
}
body.communityHome .feedContent .homeResultCard:last-child{
  border-bottom:0!important;
}
body.communityHome .feedContent .homeResultCard:hover{
  background:#f8fbfe!important;
}
body.communityHome .feedContent .homeResultDate{
  align-self:center!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  min-width:0!important;
  min-height:70px!important;
  padding:5px 3px!important;
  box-sizing:border-box!important;
  border-radius:7px!important;
}
body.communityHome .feedContent .homeResultDate>b{
  font-size:.86rem!important;
  line-height:1.1!important;
  font-weight:800!important;
}
body.communityHome .feedContent .homeResultDate>small{
  font-size:.73rem!important;
  line-height:1.1!important;
  font-weight:800!important;
}
body.communityHome .feedContent .homeResultStatus{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:21px!important;
  margin-top:4px!important;
  padding:2px 7px!important;
  border-radius:3px!important;
  color:#fff!important;
  font-size:.64rem!important;
  line-height:1.15!important;
  font-weight:800!important;
  white-space:nowrap!important;
}
body.communityHome .feedContent .homeResultPublished .homeResultDate{
  color:#315f9a!important;
  background:#eef5fd!important;
}
body.communityHome .feedContent .homeResultPublished .homeResultStatus{
  background:#2f6fdd!important;
}
body.communityHome .feedContent .homeResultEnded .homeResultDate{
  color:#667085!important;
  background:#f4f6f8!important;
}
body.communityHome .feedContent .homeResultEnded .homeResultStatus{
  background:#7b8794!important;
}
body.communityHome .feedContent .homeResultInfo{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:5px!important;
}
body.communityHome .feedContent .homeResultTitle{
  display:block!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#17355b!important;
  font-size:.94rem!important;
  line-height:1.3!important;
  font-weight:750!important;
}
body.communityHome .feedContent .homeResultLine{
  display:block!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#526b83!important;
  font-size:.73rem!important;
  line-height:1.35!important;
}
body.communityHome .feedContent .homeResultSummary>b{
  color:#1769aa!important;
  font-weight:750!important;
}
body.communityHome .feedContent .homeResultSummary>.runnerUp{
  color:#6941c6!important;
}
body.communityHome .feedContent .homeResultArrow{
  color:#355c7d!important;
  font-size:1.35rem!important;
  line-height:1!important;
  font-weight:700!important;
}
@media (max-width:720px){
  body.communityHome .feedContent .homeResultCard{
    grid-template-columns:64px minmax(0,1fr) 14px!important;
    gap:8px!important;
    min-height:90px!important;
    padding:8px!important;
  }
  body.communityHome .feedContent .homeResultDate{
    min-height:66px!important;
    padding:4px 3px!important;
  }
  body.communityHome .feedContent .homeResultDate>b{
    font-size:.82rem!important;
  }
  body.communityHome .feedContent .homeResultDate>small{
    font-size:.68rem!important;
  }
  body.communityHome .feedContent .homeResultStatus{
    padding:2px 5px!important;
    font-size:.59rem!important;
  }
  body.communityHome .feedContent .homeResultInfo{
    gap:3px!important;
  }
  body.communityHome .feedContent .homeResultTitle{
    font-size:.82rem!important;
  }
  body.communityHome .feedContent .homeResultLine{
    font-size:.66rem!important;
  }
}

/* スマートフォン：イベント開催一覧の主要文字を読みやすくする。 */
@media (max-width:720px){
  body.communityHome .feedEvents .homeEventTitle{
    font-size:.9rem!important;
  }
  body.communityHome .feedEvents .homeEventLine{
    font-size:.74rem!important;
    line-height:1.4!important;
  }
  body.communityHome .feedEvents .homeEventStats .joinCount,
  body.communityHome .feedEvents .homeEventStats .watchCount{
    font-size:.74rem!important;
  }
}

/* スマートフォン：イベント結果一覧もイベント開催一覧と同じ文字サイズにする。 */
@media (max-width:720px){
  body.communityHome .feedContent .homeResultTitle{
    font-size:.9rem!important;
  }
  body.communityHome .feedContent .homeResultLine{
    font-size:.74rem!important;
    line-height:1.4!important;
  }
  body.communityHome .feedContent .homeResultSummary>b,
  body.communityHome .feedContent .homeResultSummary>.runnerUp{
    font-size:.74rem!important;
  }
}
body.publicPage .statusJoin .statusSymbol{
  color:#079455!important;
  background:#d1fadf!important;
}
body.publicPage .statusWatch .statusSymbol{
  color:#7f56d9!important;
  background:#ebe9fe!important;
}
body.publicPage .countChip.countYes{
  background:#ecfdf3!important;
  color:#078A55!important;
}
body.publicPage .countChip.countWatch{
  background:#f4f3ff!important;
  color:#6941c6!important;
}

/* トップページ・/events の人数表示。開催予定のオレンジ配色自体は変更しない。 */
body.communityHome .feedEvents .homeEventStats .joinCount{
  color:#079455!important;
}
body.communityHome .feedEvents .homeEventStats .watchCount{
  color:#6941c6!important;
}
@media (max-width:720px){
}
body.publicPage .statusJoin .statusSymbol{color:#079455!important;background:#d1fadf!important}
body.publicPage .statusWatch .statusSymbol{color:#1570ef!important;background:#d1e9ff!important}
body.publicPage .countChip.countYes{background:#ecfdf3!important;color:#078A55!important}
body.publicPage .countChip.countWatch{background:#eff8ff!important;color:#175cd3!important}
body.communityHome .feedEvents .homeEventStats .joinCount{color:#079455!important}
body.communityHome .feedEvents .homeEventStats .watchCount{color:#1570ef!important}

/* イベント削除：JavaScriptを使わず確認画面を経由する。 */
body.publicPage .deleteConfirmPanel{max-width:720px;margin:28px auto!important}
body.publicPage .deleteConfirmTitle{margin:0 0 16px;color:#7a271a;font-size:1.35rem}
body.publicPage .deleteConfirmWarn{margin:0 0 14px;padding:12px 14px;border-left:4px solid #b42318;background:#fef3f2;color:#912018;font-weight:800}
body.publicPage .deleteConfirmName{margin:0 0 20px;font-weight:700}
body.publicPage .deleteConfirmActions{display:flex;gap:10px;align-items:center}
body.publicPage .deleteConfirmActions form{margin:0}
@media(max-width:600px){body.publicPage .deleteConfirmActions{display:grid}body.publicPage .deleteConfirmActions>*{width:100%}body.publicPage .deleteConfirmActions .button{width:100%}}

/* イベント削除ボタンは危険操作として赤を最終適用する。 */
body.communityHome.publicPage button.eventDeleteAction,
body.communityHome.publicPage .eventDeleteForm .eventDeleteAction,
body.communityHome.publicPage .deleteConfirmActions button.eventDeleteAction{
  border-color:#b42318!important;
  background:#b42318!important;
  color:#fff!important;
}
body.communityHome.publicPage button.eventDeleteAction:hover,
body.communityHome.publicPage .eventDeleteForm .eventDeleteAction:hover,
body.communityHome.publicPage .deleteConfirmActions button.eventDeleteAction:hover{
  border-color:#912018!important;
  background:#912018!important;
  color:#fff!important;
}
body.publicPage .statusJoin .statusSymbol{color:#059669!important;background:#d1fae5!important}
body.publicPage .statusWatch .statusSymbol{color:#3b82f6!important;background:#dbeafe!important}
body.publicPage .countChip.countYes{background:#ecfdf5!important;color:#059669!important}
body.publicPage .countChip.countWatch{background:#eff6ff!important;color:#2563eb!important}
body.communityHome .feedEvents .homeEventStats .joinCount{color:#078A55!important}
body.communityHome .feedEvents .homeEventStats .watchCount{color:#175CD3!important}

/* イベント概要タイトルは目立ちすぎない大きさに調整。 */
body.publicPage .eventOverviewTitle{
  font-size:1.15rem!important;
}

/* スマートフォン：イベント概要タイトル1emを基準に周辺の余白・文字サイズも整える。 */
@media (max-width:720px){
  body.publicPage .eventOverviewTitle{
    margin-bottom:8px!important;
    padding-bottom:8px!important;
    font-size:1em!important;
    line-height:1.4!important;
  }
  body.publicPage .eventOverview{
    padding:12px!important;
    margin-bottom:12px!important;
  }
  body.publicPage .eventInfoList>div{
    grid-template-columns:88px minmax(0,1fr)!important;
    padding:7px 0!important;
  }
  body.publicPage .eventInfoList dt,
  body.publicPage .eventInfoList dd{
    font-size:.86rem!important;
    line-height:1.45!important;
  }
}

/* 大会形式はトーナメント・リーグ・その他の3項目を1行で表示。 */
.postPage .tournamentFormat{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  max-width:none!important;
}

/* イベント詳細：参加状況を概要内の1行表示に統合。 */
body.publicPage .eventStatusCounts{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px 16px;
}
body.publicPage .eventStatusCounts .statusCount{
  display:inline-flex;
  align-items:center;
  gap:4px;
  white-space:nowrap;
  font-weight:700;
}
body.publicPage .eventStatusCounts .statusCount strong{
  font-size:1em;
  font-weight:800;
}
body.publicPage .eventStatusCounts .statusJoin{color:#059669!important}
body.publicPage .eventStatusCounts .statusWatch{color:#3b82f6!important}
@media (max-width:720px){
  body.publicPage .eventStatusCounts{gap:5px 12px}
  body.publicPage .eventStatusCounts .statusCount{font-size:.86rem}
}

/* イベント概要の参加状況：参加・観戦のみをコンパクト表示。 */
body.publicPage .eventStatusCounts{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 28px;
}
body.publicPage .eventStatusCounts .statusCount{
  display:inline-flex;
  align-items:center;
  gap:7px;
  white-space:nowrap;
  font-weight:700;
}
body.publicPage .eventStatusCounts .statusCount strong{
  font-size:1em;
  font-weight:800;
}
body.publicPage .eventStatusCounts .statusJoin{color:#059669!important}
body.publicPage .eventStatusCounts .statusWatch{color:#2563eb!important}
@media (max-width:720px){
  body.publicPage .eventStatusCounts{
    gap:6px 20px;
  }
}

/* イベント概要の参加状況は「参加」「観戦」のみ表示する。 */
body.publicPage .eventStatusCounts{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 28px;
}
body.publicPage .eventStatusCounts .statusCount{
  display:inline-flex;
  align-items:center;
  gap:7px;
  white-space:nowrap;
  font-weight:700;
}
body.publicPage .eventStatusCounts .statusJoin{color:#059669!important}
body.publicPage .eventStatusCounts .statusWatch{color:#2563eb!important}

/* トップページ・イベント一覧：参加/観戦に個別ページと同系統の人物アイコンを表示。 */
body.communityHome .feedEvents .homeEventStats .joinCount,
body.communityHome .feedEvents .homeEventStats .watchCount{
  display:inline-flex;
  align-items:center;
  gap:6px;
}
body.communityHome .feedEvents .homeEventStats .joinCount{
  gap:4px;
}
body.communityHome .feedEvents .homeEventStats .homeStatusIcon{
  position:relative;
  display:inline-block;
  width:14px;
  height:13px;
  flex:0 0 14px;
  color:currentColor;
  vertical-align:middle;
}
body.communityHome .feedEvents .homeEventStats .homeJoinIcon::before{
  content:"";
  position:absolute;
  left:5px;
  top:0;
  width:5px;
  height:5px;
  border-radius:50%;
  background:currentColor;
}
body.communityHome .feedEvents .homeEventStats .homeJoinIcon::after{
  content:"";
  position:absolute;
  left:2px;
  bottom:0;
  width:11px;
  height:7px;
  border-radius:6px 6px 2px 2px;
  background:currentColor;
}
body.communityHome .feedEvents .homeEventStats .homeWatchIcon::before{
  content:"";
  position:absolute;
  left:1px;
  top:0;
  width:5px;
  height:5px;
  border-radius:50%;
  background:currentColor;
  box-shadow:7px 0 0 currentColor;
}
body.communityHome .feedEvents .homeEventStats .homeWatchIcon::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:7px;
  height:7px;
  border-radius:5px 5px 2px 2px;
  background:currentColor;
  box-shadow:7px 0 0 currentColor;
}

/* 個別ページ：人物アイコンの見た目に合わせて文字との間隔を調整。 */
body.publicPage .eventStatusCounts .statusJoin{gap:4px}
body.publicPage .eventStatusCounts .statusWatch{gap:6px}

/* 個別ページ：参加・観戦を独立開閉し、展開内容を横幅いっぱいに表示する。 */
body.publicPage .eventStatusRow{
  align-items:start;
}
body.publicPage .eventStatusRow>dd{
  min-width:0;
}
body.publicPage .eventStatusCounts{
  position:relative;
  display:block;
  width:100%;
  padding-top:26px;
}
body.publicPage .eventStatusCounts .statusDetails{
  display:block;
  width:100%;
  min-width:0;
}
body.publicPage .eventStatusCounts .statusDetails>summary{
  position:absolute;
  top:0;
  z-index:2;
}
body.publicPage .eventStatusCounts .statusJoin>summary{
  left:0;
}
body.publicPage .eventStatusCounts .statusWatch>summary{
  left:150px;
}
body.publicPage .eventStatusCounts .statusDetails:not([open]){
  height:0;
}
body.publicPage .eventStatusCounts .statusDetails[open]{
  width:100%;
}
body.publicPage .eventStatusCounts .statusDetails summary{
  display:inline-flex;
  align-items:center;
  cursor:pointer;
  list-style:none;
  white-space:nowrap;
  font-weight:700;
  user-select:none;
}
body.publicPage .eventStatusCounts .statusDetails summary::-webkit-details-marker{
  display:none;
}
body.publicPage .eventStatusCounts .statusJoin summary{
  gap:4px;
  color:#078A55;
}
body.publicPage .eventStatusCounts .statusWatch summary{
  gap:6px;
  color:#175CD3;
}
body.publicPage .eventStatusCounts .statusDetails summary strong{
  font-size:1em;
  font-weight:800;
}
body.publicPage .eventStatusCounts .statusDetails summary:focus-visible{
  outline:2px solid currentColor;
  outline-offset:3px;
  border-radius:3px;
}
body.publicPage .eventStatusCounts .statusNames{
  box-sizing:border-box;
  width:100%;
  margin-top:9px;
  padding:12px 14px;
  border:1px solid currentColor;
  border-left-width:4px;
  border-radius:7px;
  color:#23364d;
}
body.publicPage .eventStatusCounts .statusJoin .statusNames{
  background:#f2fbf6;
  border-color:#74cfa0;
}
body.publicPage .eventStatusCounts .statusWatch .statusNames{
  background:#f2f7ff;
  border-color:#86b7f3;
}
body.publicPage .eventStatusCounts .statusNamesHead{
  display:flex;
  align-items:center;
  gap:7px;
  margin-bottom:10px;
  font-size:.92rem;
}
body.publicPage .eventStatusCounts .statusJoin .statusNamesHead{
  color:#078A55;
}
body.publicPage .eventStatusCounts .statusWatch .statusNamesHead{
  color:#175cd3;
}
body.publicPage .eventStatusCounts .statusNameList{
  display:flex;
  flex-wrap:wrap;
  gap:7px 9px;
}
body.publicPage .eventStatusCounts .statusName{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:32px;
  padding:5px 10px;
  border:1px solid #d4e0ea;
  border-radius:6px;
  background:#fff;
  color:#23364d;
  font-weight:700;
}
body.publicPage .eventStatusCounts .namePerson{
  position:relative;
  display:inline-block;
  width:12px;
  height:13px;
  flex:0 0 12px;
  color:currentColor;
}
body.publicPage .eventStatusCounts .namePerson::before{
  content:"";
  position:absolute;
  left:4px;
  top:0;
  width:5px;
  height:5px;
  border-radius:50%;
  background:currentColor;
}
body.publicPage .eventStatusCounts .namePerson::after{
  content:"";
  position:absolute;
  left:1px;
  bottom:0;
  width:11px;
  height:7px;
  border-radius:6px 6px 2px 2px;
  background:currentColor;
}
body.publicPage .eventStatusCounts .statusJoin .statusName .namePerson{
  color:#059669;
}
body.publicPage .eventStatusCounts .statusWatch .statusName .namePerson{
  color:#2563eb;
}
body.publicPage .eventStatusCounts .statusNamesEmpty{
  margin:0;
  color:#667085;
}

@media (max-width:720px){
  body.publicPage .eventStatusCounts{
    gap:6px 20px;
  }
  body.publicPage .eventStatusCounts .statusNames{
    padding:10px 11px;
  }
  body.publicPage .eventStatusCounts .statusNameList{
    gap:6px;
  }
  body.publicPage .eventStatusCounts .statusName{
    min-height:30px;
    padding:4px 8px;
    font-size:.86rem;
  }
}

/* 開閉しても「参加」「観戦」の位置を動かさない。展開内容だけ下へ通常フローで並べる。 */
body.publicPage .eventStatusCounts .statusDetails[open]>.statusNames{
  position:relative;
  left:auto;
  right:auto;
  width:100%;
  margin-left:0;
}
body.publicPage .eventStatusCounts .statusDetails[open]+.statusDetails[open]>.statusNames{
  margin-top:8px;
}

@media (max-width:720px){
  body.publicPage .eventStatusCounts{
    padding-top:24px;
  }
  body.publicPage .eventStatusCounts .statusWatch>summary{
    left:120px;
  }
}

/* 参加・観戦の開閉状態を示すCSS製シェブロン。 */
body.publicPage .eventStatusCounts .statusDetails>summary::after{
  content:"";
  display:inline-block;
  width:8px;
  height:8px;
  margin-left:6px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  box-sizing:border-box;
  transform:translateY(-2px) rotate(45deg);
  transform-origin:center;
}
body.publicPage .eventStatusCounts .statusDetails[open]>summary::after{
  transform:translateY(3px) rotate(225deg);
}

/* 参加状況は見出し行と展開パネル行を分離。パネルはdt/ddの外で概要欄の全幅を使用する。 */
body.publicPage .eventInfoTail{
  margin:0!important;
}
body.publicPage .eventStatusPanels{
  display:block;
  width:100%;
  box-sizing:border-box;
}
body.publicPage .eventStatusPanels .statusNames{
  display:none;
  box-sizing:border-box;
  width:100%;
  margin:5px 0 8px!important;
  padding:12px 14px;
  border:1px solid;
  border-left-width:4px;
  border-radius:7px;
  color:#23364d;
}
body.publicPage .eventOverview:has(.statusJoin[open]) .eventStatusPanels .panelJoin{
  display:block;
}
body.publicPage .eventOverview:has(.statusWatch[open]) .eventStatusPanels .panelWatch{
  display:block;
}
body.publicPage .eventStatusPanels .panelJoin{
  background:#f2fbf6;
  border-color:#74cfa0;
}
body.publicPage .eventStatusPanels .panelWatch{
  background:#f2f7ff;
  border-color:#86b7f3;
}
body.publicPage .eventStatusPanels .statusNamesHead{
  display:flex;
  align-items:center;
  gap:7px;
  margin-bottom:10px;
  font-size:.92rem;
}
body.publicPage .eventStatusPanels .panelJoin .statusNamesHead{color:#078A55}
body.publicPage .eventStatusPanels .panelWatch .statusNamesHead{color:#175cd3}
body.publicPage .eventStatusPanels .statusNameList{
  display:flex;
  flex-wrap:wrap;
  gap:7px 9px;
}
body.publicPage .eventStatusPanels .statusName{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:32px;
  padding:5px 10px;
  border:1px solid #d4e0ea;
  border-radius:6px;
  background:#fff;
  color:#23364d;
  font-weight:700;
}
body.publicPage .eventStatusPanels .statusNamesEmpty{
  margin:0;
  color:#667085;
}
@media(max-width:720px){
  body.publicPage .eventStatusPanels .statusNames{padding:10px 11px}
  body.publicPage .eventStatusPanels .statusNameList{gap:6px}
  body.publicPage .eventStatusPanels .statusName{
    min-height:30px;
    padding:4px 8px;
    font-size:.86rem;
  }
}

/* トップページ開催予定カード：左欄を「日付(曜日) / 対戦形式 / ステータス」の3段にする。 */
body.communityHome:not(.publicPage) .feedEvents .homeEventDate>b{
  white-space:nowrap!important;
}
body.communityHome:not(.publicPage) .feedEvents .homeEventDate>small{
  display:none!important;
}
body.communityHome:not(.publicPage) .feedEvents .homeEventFormat{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:18px!important;
  padding:1px 5px!important;
  box-sizing:border-box!important;
  border:1px solid #cfe0f2!important;
  border-radius:3px!important;
  background:#edf5fd!important;
  color:#1769aa!important;
  font-size:.58rem!important;
  line-height:1.15!important;
  font-weight:800!important;
  white-space:nowrap!important;
}
body.communityHome:not(.publicPage) .feedEvents .homeEventStatus{
  width:100%!important;
  box-sizing:border-box!important;
}

/* トップページ開催予定カード：日付と対戦形式は情報表示、開催予定だけを強調する。 */
body.communityHome:not(.publicPage) .feedEvents .homeEventUpcoming .homeEventDate{
  color:#175cd3!important;
  background:#fff!important;
}
body.communityHome:not(.publicPage) .feedEvents .homeEventUpcoming .homeEventFormat{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:auto!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#175cd3!important;
  font-size:.64rem!important;
  line-height:1.2!important;
  font-weight:800!important;
  white-space:nowrap!important;
}
body.communityHome:not(.publicPage) .feedEvents .homeEventUpcoming .homeEventStatus{
  width:auto!important;
  min-width:0!important;
  margin-top:2px!important;
  padding:1px 8px!important;
  color:#fff!important;
  background:#1769e0!important;
  border-color:#1769e0!important;
}

/* トップページ開催予定カード：対戦形式を控えめな青枠にする。 */
body.communityHome:not(.publicPage) .feedEvents .homeEventUpcoming .homeEventFormat{
  width:auto!important;
  min-width:48px!important;
  min-height:18px!important;
  padding:1px 7px!important;
  border:1px solid #cfe0f2!important;
  border-radius:3px!important;
  background:#f7faff!important;
  color:#175cd3!important;
}

/* トップページ開催予定カード：左3段の高さを揃え、縦方向に余裕を持たせる。 */
body.communityHome:not(.publicPage) .feedEvents .homeEventDate{
  gap:6px!important;
  padding-top:10px!important;
  padding-bottom:10px!important;
}
body.communityHome:not(.publicPage) .feedEvents .homeEventDate>b,
body.communityHome:not(.publicPage) .feedEvents .homeEventFormat,
body.communityHome:not(.publicPage) .feedEvents .homeEventStatus{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  min-height:22px!important;
  line-height:1.2!important;
}
body.communityHome:not(.publicPage) .feedEvents .homeEventDate>b{
  width:100%!important;
}
body.communityHome:not(.publicPage) .feedEvents .homeEventFormat,
body.communityHome:not(.publicPage) .feedEvents .homeEventStatus{
  min-width:52px!important;
  padding:2px 8px!important;
}
body.communityHome:not(.publicPage) .feedEvents .homeEventStatus{
  margin-top:0!important;
}
@media(max-width:720px){
  body.communityHome:not(.publicPage) .feedEvents .homeEventDate{
    gap:5px!important;
    padding-top:9px!important;
    padding-bottom:9px!important;
  }
  body.communityHome:not(.publicPage) .feedEvents .homeEventDate>b,
  body.communityHome:not(.publicPage) .feedEvents .homeEventFormat,
  body.communityHome:not(.publicPage) .feedEvents .homeEventStatus{
    min-height:21px!important;
  }
}

/* トップページ開催予定カード：左3段の高さ・間隔を中間値へ調整。 */
body.communityHome:not(.publicPage) .feedEvents .homeEventDate{
  gap:4px!important;
  padding-top:7px!important;
  padding-bottom:7px!important;
}
body.communityHome:not(.publicPage) .feedEvents .homeEventDate>b,
body.communityHome:not(.publicPage) .feedEvents .homeEventFormat,
body.communityHome:not(.publicPage) .feedEvents .homeEventStatus{
  min-height:20px!important;
}
body.communityHome:not(.publicPage) .feedEvents .homeEventFormat,
body.communityHome:not(.publicPage) .feedEvents .homeEventStatus{
  padding:1px 7px!important;
}
@media(max-width:720px){
  body.communityHome:not(.publicPage) .feedEvents .homeEventDate{
    gap:4px!important;
    padding-top:6px!important;
    padding-bottom:6px!important;
  }
  body.communityHome:not(.publicPage) .feedEvents .homeEventDate>b,
  body.communityHome:not(.publicPage) .feedEvents .homeEventFormat,
  body.communityHome:not(.publicPage) .feedEvents .homeEventStatus{
    min-height:19px!important;
  }
}

/* 対戦形式と開催予定のバッジ幅を揃える。 */
body.communityHome:not(.publicPage) .feedEvents .homeEventUpcoming .homeEventFormat,
body.communityHome:not(.publicPage) .feedEvents .homeEventUpcoming .homeEventStatus{
  width:58px!important;
  min-width:58px!important;
  padding:1px 8px!important;
  box-sizing:border-box!important;
}

/* トップページ開催予定カード：左3段を一段だけコンパクトにする。 */
body.communityHome:not(.publicPage) .feedEvents .homeEventUpcoming .homeEventDate>b{
  min-height:19px!important;
  font-size:.72rem!important;
}
body.communityHome:not(.publicPage) .feedEvents .homeEventUpcoming .homeEventFormat,
body.communityHome:not(.publicPage) .feedEvents .homeEventUpcoming .homeEventStatus{
  width:58px!important;
  min-width:58px!important;
  min-height:19px!important;
  padding:1px 8px!important;
  font-size:.59rem!important;
  line-height:1.15!important;
}

/* トップページ開催予定カード：日付だけ少し大きくする。 */
body.communityHome:not(.publicPage) .feedEvents .homeEventUpcoming .homeEventDate>b{
  font-size:.76rem!important;
}

/* トップページ開催予定カード：日付をもう一段大きくし、左3段の縦間隔を少し詰める。 */
body.communityHome:not(.publicPage) .feedEvents .homeEventUpcoming .homeEventDate{
  gap:3px!important;
  padding-top:6px!important;
  padding-bottom:6px!important;
}
body.communityHome:not(.publicPage) .feedEvents .homeEventUpcoming .homeEventDate>b{
  font-size:.80rem!important;
}

/* トップページ結果カード：開催予定側と同じ3段構成、紫系配色。 */
body.communityHome:not(.publicPage) .feedContent .homeResultDate{
  gap:3px!important;
  padding-top:6px!important;
  padding-bottom:6px!important;
}
body.communityHome:not(.publicPage) .feedContent .homeResultDate>b{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:19px!important;
  font-size:.80rem!important;
  line-height:1.2!important;
  color:#6941c6!important;
  white-space:nowrap!important;
}
body.communityHome:not(.publicPage) .feedContent .homeResultDate>small{
  display:none!important;
}
body.communityHome:not(.publicPage) .feedContent .homeResultFormat,
body.communityHome:not(.publicPage) .feedContent .homeResultStatus{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:58px!important;
  min-width:58px!important;
  min-height:19px!important;
  padding:1px 8px!important;
  box-sizing:border-box!important;
  border-radius:3px!important;
  font-size:.59rem!important;
  line-height:1.15!important;
  font-weight:800!important;
  white-space:nowrap!important;
}
body.communityHome:not(.publicPage) .feedContent .homeResultFormat{
  color:#6941c6!important;
  background:#f4f3ff!important;
  border:1px solid #d9d6fe!important;
}
body.communityHome:not(.publicPage) .feedContent .homeResultStatus{
  color:#fff!important;
  background:#7f56d9!important;
  border-color:#7f56d9!important;
}

/* トップページ結果カード：左側全体の薄紫背景だけを白に戻す。 */
body.communityHome:not(.publicPage) .feedContent .homeResultPublished .homeResultDate,
body.communityHome:not(.publicPage) .feedContent .homeResultEnded .homeResultDate{
  background:#fff!important;
}

/* トップページ開催予定カード：青系からオレンジ系へ変更。 */
body.communityHome:not(.publicPage) .feedEvents .homeEventUpcoming .homeEventDate>b{
  color:#b54708!important;
}
body.communityHome:not(.publicPage) .feedEvents .homeEventUpcoming .homeEventFormat{
  color:#b54708!important;
  background:#fffaeb!important;
  border-color:#fedf89!important;
}
body.communityHome:not(.publicPage) .feedEvents .homeEventUpcoming .homeEventStatus{
  color:#fff!important;
  background:#d97706!important;
  border-color:#d97706!important;
}

/* 個別ページ：参加者・観戦者の名前チップを参加編集画面へのリンクにする。 */
body.publicPage .eventStatusPanels a.statusNameEdit{
  color:inherit!important;
  text-decoration:none!important;
  cursor:pointer;
}
body.publicPage .eventStatusPanels a.statusNameEdit:hover{
  background:#f8fafc!important;
  border-color:#b8c7d6!important;
}
body.publicPage .eventStatusPanels a.statusNameEdit:focus-visible{
  outline:2px solid currentColor;
  outline-offset:2px;
}

/* 共通編集案内：参加または観戦を開いたときだけ1つ表示する。 */
body.publicPage .eventStatusPanels>.memberEditNotice{
  display:none!important;
  margin:8px 0 0!important;
  padding:8px 12px!important;
  border:1px solid #fedf89!important;
  border-radius:6px!important;
  background:#fffaeb!important;
  color:#b54708!important;
  font-size:.82rem!important;
  line-height:1.5!important;
}
body.publicPage .eventOverview:has(.eventStatusCounts .statusDetails[open])
  .eventStatusPanels>.memberEditNotice{
  display:block!important;
}

/* 個別ページ：観戦者名チップのアイコンを「観戦」表示と同じ2人アイコンに統一する。 */
body.publicPage .eventStatusPanels .panelWatch .namePerson::before{
  content:"";
  position:absolute;
  left:2px;
  top:1px;
  width:7px;
  height:7px;
  border-radius:50%;
  background:currentColor;
  box-shadow:11px 0 0 currentColor;
}
body.publicPage .eventStatusPanels .panelWatch .namePerson::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:11px;
  height:10px;
  border-radius:7px 7px 3px 3px;
  background:currentColor;
  box-shadow:11px 0 0 currentColor;
}

/* 個別ページ：参加の人物アイコンと文字の間隔だけを少し狭める。 */
body.publicPage .eventStatusCounts .statusJoin summary{gap:1px}

/* 個別ページ：参加状況は「参加・観戦・未定」の3区分。人物アイコンは使用しない。 */
body.publicPage .eventStatusCounts .statusMaybe summary{
  gap:4px;
  color:#6941C6;
}
body.publicPage .eventStatusCounts .statusMaybe>summary{
  left:270px;
}
body.publicPage .eventOverview:has(.statusMaybe[open]) .eventStatusPanels .panelMaybe{
  display:block;
}
body.publicPage .eventStatusPanels .panelMaybe{
  background:#F4F3FF;
  border-color:#BDB4FE;
}
body.publicPage .eventStatusPanels .panelMaybe .statusNamesHead{
  color:#6941C6;
}
@media (max-width:720px){
  body.publicPage .eventStatusCounts .statusMaybe>summary{
    left:220px;
  }
}

/* 個別ページ：参加状況3区分の横方向の間隔を詰める。 */
body.publicPage .eventStatusCounts .statusWatch>summary{
  left:100px;
}
body.publicPage .eventStatusCounts .statusMaybe>summary{
  left:200px;
}
@media (max-width:720px){
  body.publicPage .eventStatusCounts .statusWatch>summary{
    left:100px;
  }
  body.publicPage .eventStatusCounts .statusMaybe>summary{
    left:200px;
  }
}

/* 個別ページ：参加・観戦・未定をさらにコンパクトに配置する。 */
body.publicPage .eventStatusCounts .statusWatch>summary{
  left:75px!important;
}
body.publicPage .eventStatusCounts .statusMaybe>summary{
  left:150px!important;
}
@media (max-width:720px){
  body.publicPage .eventStatusCounts .statusWatch>summary{
    left:75px!important;
  }
  body.publicPage .eventStatusCounts .statusMaybe>summary{
    left:150px!important;
  }
}

/* 個別ページ：参加・観戦・未定の見た目上の間隔を均等化する。 */
body.publicPage .eventStatusCounts .statusWatch>summary{
  left:75px!important;
}
body.publicPage .eventStatusCounts .statusMaybe>summary{
  left:160px!important;
}
@media (max-width:720px){
  body.publicPage .eventStatusCounts .statusWatch>summary{
    left:75px!important;
  }
  body.publicPage .eventStatusCounts .statusMaybe>summary{
    left:160px!important;
  }
}

/* 個別ページ：参加状況は文字幅に追従して均等な間隔で横並びにする。 */
body.publicPage .eventStatusCounts{
  display:flex!important;
  align-items:center;
  gap:18px;
  width:100%;
  padding-top:0!important;
}
body.publicPage .eventStatusCounts .statusDetails,
body.publicPage .eventStatusCounts .statusDetails:not([open]),
body.publicPage .eventStatusCounts .statusDetails[open]{
  display:block;
  width:auto!important;
  height:auto!important;
  min-width:0;
}
body.publicPage .eventStatusCounts .statusDetails>summary,
body.publicPage .eventStatusCounts .statusJoin>summary,
body.publicPage .eventStatusCounts .statusWatch>summary,
body.publicPage .eventStatusCounts .statusMaybe>summary{
  position:static!important;
  inset:auto!important;
}
@media (max-width:720px){
  body.publicPage .eventStatusCounts{
    gap:14px;
    padding-top:0!important;
  }
}

/* 個別ページ：観戦の文字列とシェブロンの間隔だけを詰める。 */
body.publicPage .eventStatusCounts .statusWatch>summary::after{
  margin-left:2px;
}

/* トップページ：参加状況を個別ページと同じ配色・表記に統一する。 */
body.communityHome .feedEvents .homeEventStats{
  display:flex;
  align-items:center;
  gap:4px;
}
body.communityHome .feedEvents .homeEventStats .joinCount,
body.communityHome .feedEvents .homeEventStats .watchCount,
body.communityHome .feedEvents .homeEventStats .maybeCount{
  display:inline-block;
  font-weight:700;
  white-space:nowrap;
}
body.communityHome .feedEvents .homeEventStats .joinCount{color:#059669!important}
body.communityHome .feedEvents .homeEventStats .watchCount{color:#2563eb!important}
body.communityHome .feedEvents .homeEventStats .maybeCount{color:#7c3aed!important}
body.communityHome .feedEvents .homeEventStats .homeStatusIcon{display:none!important}

body.communityHome .feedEvents .homeEventStats .homeCountSep{
  color:#667085;
  font-weight:400;
  white-space:nowrap;
}

body.publicPage .eventResultRow .eventWinner{color:#175CD3;font-weight:700}
body.publicPage .eventResultRow .eventRunnerUp{color:#6941C6;font-weight:700}
