

 .form-page-wrapper .form-wrapper .form-menu-bar.create {background: #fff; color: var(--ptb-heading, #1D2B36); font-family: var(--font-sans, 'Inter', sans-serif); font-weight: 700; font-size: 18px; padding: 16px 20px; }
 .form-page-wrapper .form-wrapper .create-membership-inst { margin: 20px; font-size: 16px; }
 .row-label {font-size: 16px; }

 .dollar-prefix-wrapper2 {position: relative; }
 .dollar-prefix-wrapper2 .dollar-prefix2 {position: absolute; top: 7px; left: 6px; font-size: 15px; color: #777;}
 .dollar-prefix-wrapper2 input {display: inline-block; font-size: 14px; padding: 0 10px 0 18px;}

 .team-selection-row {border: 1px solid #efefef; border-radius: 10px; margin: 0px 0px 10px 0 !important;padding: 10px 0 0px 0;}
 .team-selection-row:hover {background-color: #efefef;}
 .team-selection-row label {padding-left: 10px; }
 .team-selection-row.selected {border: 1px solid #00a8ff;}
 .team-selection-row.selected .team-selection-explain {display: block;}

 table.participant-list {width: 100%; margin-bottom: 10px;}
 table.participant-list thead {background-color: #e4e6f4;}
 table.participant-list th, table.participant-list td {text-align: center; }

 .member-list-wrapper {margin: 0 20px 40px 20px; border-radius: 6px; border-left: #008CBA solid 8px; padding: 25px 20px 0 20px; background-color: #e8ebee; }
 .member-list-wrapper input[type=text] {height: 42px; font-size: 16px; border-radius: 6px;}
 .member-list-wrapper input[type=text].empty-error {border-color: red;}
 .member-list-wrapper .table-wrapper {max-height: 400px; overflow-y: auto; margin-bottom: 20px;}
 .member-list-wrapper .table-wrapper table {width: 100%; margin-bottom: 5px;}
 .member-list-wrapper .table-wrapper table thead {background-color: #e4e6f4;}


 .fundraising-thermometer {margin: 20px; padding: 24px 16px; background-color: #fff; border: 1px solid var(--ptb-border, #e6eaef); border-radius: 14px; box-shadow: var(--shadow-soft, 0 1px 3px rgba(16,30,54,0.08)); }
 .fundraising-thermometer .head-note {font-size: 17px; }
 .event-ends {margin: 20px; padding: 16px 10px; background-color: #fff; border: 1px solid var(--ptb-border, #e6eaef); border-radius: 14px; box-shadow: var(--shadow-soft, 0 1px 3px rgba(16,30,54,0.08)); text-align: center;}
 .event-ends .clock-block {display: inline-block; width: 80px; background-color: var(--ptb-sky-soft, #E3F4FD); color: var(--ptb-sky-dark, #109edb); font-family: var(--font-sans, 'Inter', sans-serif); font-weight: 700; font-size: 11px; margin: 10px; padding: 8px 0; border-radius: 14px; }
 .event-ends .clock-block div {text-align: center;}
 .event-ends .clock-block div:first-child {font-size: 20px; font-weight: 800; }

 /* ===== Modernized campaign action buttons + modals ===== */
 .campaign-detail-button, .campaign-donate-button, .team-list-button { border-radius: 999px !important; font-family: var(--font-sans, 'Inter', sans-serif) !important; font-weight: 600 !important; text-shadow: none !important; }
 .campaign-donate-button { background-color: #F97362 !important; color: #fff !important; border: 0 !important; }
 .campaign-donate-button:not(.button-disabled):hover { background-color: #e85d4c !important; }
 .team-list-button.warning { background-color: var(--ptb-sky-dark, #109edb) !important; color: #fff !important; border: 0 !important; }
 /* Active (selected) state: match Detail/Donate — white fill + gray text + border. */
 .team-list-button.warning.button-disabled { background-color: transparent !important; color: #aaa !important; border: 1px solid var(--ptb-border, #e6eaef) !important; }
 .button-disabled { border-radius: 999px !important; font-family: var(--font-sans, 'Inter', sans-serif) !important; font-weight: 600 !important; border: 1px solid var(--ptb-border, #e6eaef) !important; }
 .reveal-modal .button { border-radius: 999px !important; font-family: var(--font-sans, 'Inter', sans-serif) !important; font-weight: 600 !important; text-shadow: none !important; }
 .reveal-modal .button.success { background: var(--ptb-sky-dark, #109edb) !important; border: 0 !important; color: #fff !important; }
 .reveal-modal .button.success:hover { background: #0d83b8 !important; }
 .right.button.success, a.button.radius.success.small, a.button.radius.success { background: var(--ptb-sky-dark, #109edb) !important; border: 0 !important; color: #fff !important; border-radius: 999px !important; font-family: var(--font-sans, 'Inter', sans-serif) !important; font-weight: 600 !important; text-shadow: none !important; }
 /* Guard: keep every success action button blue on hover (never Foundation green). */
 .button.success:hover, .button.success:focus { background-color: #0d83b8 !important; color: #fff !important; }

 .button-disabled {background-color: transparent !important; color: #aaa !important;}

 .campaign-faq { margin: 20px; padding: 10px;}

 .my-student-section input, .my-student-section select {height: 46px; font-size: 16px;padding-left: 16px;border-radius: 10px;}

 .campaign-banner {padding: 30px 20px; border-radius: 10px; margin: 30px 0; color: #fff; font-size: 18px;}
 .campaign-banner.draft {background-color: #fff3bf; color: #8a6d00; }
 .campaign-banner.scheduled {background-color: #1b4282; }
 .campaign-banner.closed {background-color: #333; }
 
 .team-list-section .team-member-wrapper { margin: 0 0px 40px 0px; border-radius: 14px; border: 1px solid var(--ptb-border, #e6eaef); border-left: 4px solid #537ca6; overflow: hidden; box-shadow: var(--shadow-soft, 0 1px 3px rgba(16,30,54,0.08));}
 .team-list-section .team-member-wrapper .team-head {padding: 14px 20px; background-color: #fff; border-bottom: 1px solid var(--ptb-border, #e6eaef);}
 .team-list-section .team-member-wrapper .team-head .title {display:inline-block; color: var(--ptb-heading, #1D2B36); font-family: var(--font-sans, 'Inter', sans-serif); font-size: 18px; font-weight: 700; }
 .team-member-wrapper .team-head > a { color: var(--ptb-sky-dark, #109edb); font-weight:600; font-size: 14px; margin-top: 5px; font-family: var(--font-sans, 'Inter', sans-serif);}
 .team-member-wrapper ul.ptb-more-dropdown li {border-bottom: 1px #d5d5d5 solid;}
 .team-member-wrapper ul.ptb-more-dropdown li a {padding: 12px; }
 .team-member-wrapper ul.ptb-more-dropdown li a:hover {color: #fff; }
 .team-list-section .team-member-wrapper .team-body { padding: 25px 20px 0 20px; background-color: #f7f9fb; 
 				border-bottom-right-radius: 6px; max-height: 600px; overflow: auto;}
 .name-card {-webkit-transition: all 0.6s;transition: all 0.6s;cursor: pointer;
 				text-align: left; overflow: hidden; border: 1px solid var(--ptb-border, #e6eaef); border-bottom: 4px solid #2782D2; position: relative; 
 				background: #fff; padding: 10px; margin: 10px; border-radius: 10px; display:block; color: #333;}
 .name-card.a, .name-card.n {border-bottom-color: #714997}
 .name-card.b, .name-card.o {border:none; border-bottom: 6px #0B0B61 solid;}
 .name-card.c, .name-card.p {border-bottom-color: #2782D2}
 .name-card.d, .name-card.q {border-bottom-color: #20AFA5}
 .name-card.e, .name-card.r {border-bottom-color: #5F04B4}
 .name-card.f, .name-card.s {border-bottom-color: #04B45F}
 .name-card.g, .name-card.t {border-bottom-color: #393B0B}
 .name-card.h, .name-card.u {border-bottom-color: #8A0829}
 .name-card.i, .name-card.v {border-bottom-color: #5E610B}
 .name-card.j, .name-card.w {border-bottom-color: #7CBE31}
 .name-card.k, .name-card.x {border-bottom-color: #2e3b0b}
 .name-card.l, .name-card.y {border-bottom-color: #045fb4}
 .name-card.m, .name-card.z {border-bottom-color: #2F0B3A}
 
 a.name-card:hover {box-shadow: 1px 1px 20px -1px #2782D2; 
				-webkit-transition: all 0.6s; transition: all 0.6s;-webkit-transform: scale(1.15, 1.15); 
				-moz-transform: scale(1.15, 1.15); -o-transform: scale(1.15, 1.15); transform: scale(1.15, 1.15);text-decoration: none;}
 .name-card.a:hover, .name-card.n:hover {box-shadow:1px 1px 20px -1px #714997;}
 .name-card.b:hover, .name-card.o:hover {box-shadow:1px 1px 20px -1px #0B0B61;}
 .name-card.c:hover, .name-card.p:hover {box-shadow:1px 1px 20px -1px #2782D2;}
 .name-card.d:hover, .name-card.q:hover {box-shadow:1px 1px 20px -1px #20AFA5;}
 .name-card.e:hover, .name-card.r:hover {box-shadow:1px 1px 20px -1px #5F04B4;}
 .name-card.f:hover, .name-card.s:hover {box-shadow:1px 1px 20px -1px #04B45F;}
 .name-card.g:hover, .name-card.t:hover {box-shadow:1px 1px 20px -1px #393B0B;}
 .name-card.h:hover, .name-card.u:hover {box-shadow:1px 1px 20px -1px #8A0829;}
 .name-card.i:hover, .name-card.v:hover {box-shadow:1px 1px 20px -1px #5E610B;}
 .name-card.j:hover, .name-card.w:hover {box-shadow:1px 1px 20px -1px #7CBE31;}
 .name-card.k:hover, .name-card.x:hover {box-shadow:1px 1px 20px -1px #2e3b0b;}
 .name-card.l:hover, .name-card.y:hover {box-shadow:1px 1px 20px -1px #045fb4;}
 .name-card.m:hover, .name-card.z:hover {box-shadow:1px 1px 20px -1px #2F0B3A;}
 
 .name-card > span  { width: 40px; height: 40px; line-height: 40px; border-radius: 50px; 
 				text-transform: uppercase; font-size: 20px; font-weight: bold; float: left; color: #fff; 
 				text-align: center; background-color: #2782D2;}
 .name-card.a > span, .name-card.n > span {background-color: #714997; }
 .name-card.b > span, .name-card.o > span {background-color: #0B0B61; }
 .name-card.c > span, .name-card.p > span {background-color: #2782D2; }
 .name-card.d > span, .name-card.q > span {background-color: #20AFA5; }
 .name-card.e > span, .name-card.r > span {background-color: #5F04B4; }
 .name-card.f > span, .name-card.s > span {background-color: #04B45F; }
 .name-card.g > span, .name-card.t > span {background-color: #393B0B; }
 .name-card.h > span, .name-card.u > span {background-color: #8A0829; }
 .name-card.i > span, .name-card.v > span {background-color: #5E610B; }
 .name-card.j > span, .name-card.w > span {background-color: #7CBE31; }
 .name-card.k > span, .name-card.x > span {background-color: #2e3b0b; }
 .name-card.l > span, .name-card.y > span {background-color: #045fb4; }
 .name-card.m > span, .name-card.z > span {background-color: #2F0B3A; }
 
 .name-card .remove {position: absolute;top: -1px;right: 6px;font-size: 12px;color: #008CBA;}
 .name-card .remove:hover {text-decoration: underline;}
 .name-card .sname {margin: 6px 8px 10px 50px; color: #333;}
 .name-card .info {text-align: center; font-size: 15px; color: #008CBA;}
 
 #manage-team-reveal .create-team-selection {border: 1px #84b8e5 solid; background-color: #f4f7fa; margin: 20px 30px 10px 30px; padding: 20px 30px; border-radius: 10px; font-size: 18px;}
 #manage-team-reveal .create-team-selection:hover {background-color: #e0edf8; border-color: #84b8e5;
 				box-shadow: 1px 1px 20px -1px #76b0e4;-webkit-transition: all 0.6s; transition: all 0.6s; cursor: pointer; }
 
  

div#schooluserlist_filter {float: left; margin: 0 10px;}
div#schooluserlist_filter label {color:#714997; font-weight: bold;}
div#schooluserlist_filter input { display: inline; width: 375px; height: 40px; margin: 10px 0 10px 10px; padding:0 5px 0 10px; font-size: 13px; border-radius: 10px;}
div#schooluserlist_length {float: right; margin: 0 10px;}
div#schooluserlist_length label {color:#714997; }
div#schooluserlist_length select { width: 60px; height: 40px; margin: 10px 0 0 0; padding:0 0 0 10px; order-radius: 10px;}

table#schooluserlist {border: 2px #714997 solid; }
table#schooluserlist tr.even {background-color: #fff;}
table#schooluserlist tr.odd {background-color: #f1f1f1;}
table#schooluserlist tr td:nth-child(2) {width: 260px; }
table#schooluserlist tr td:nth-child(3) {width: 110px; text-align: center; vertical-align: middle ;padding: 4px}
table#schooluserlist tr td:nth-child(3) a {margin: 0}

table#schooluserlist tr td .js-s-section select {width: 200px; margin: 8px; padding: 0px 10px; border-radius: 10px;}
table#schooluserlist tr td .js-s-section .js-new-s-name {margin-left: 10px; margin-bottom: 20px; display:none;}
table#schooluserlist tr td .js-s-section .js-new-s-name input { width: 220px; padding: 5px 10px; border-radius: 10px; margin-bottom: 8px;}

 
.campaign-donate-button:not(.button-disabled):hover {background-color: #e85d4c !important;}
.campaign-donate-section .donate-instruction {background-color: #f8ebd3;padding: 20px 30px;border-left: #c88b5b solid 10px;border-radius: 20px;margin-top: 30px;}
.campaign-donate-section .donate-sort {margin-top: 40px;font-size: 16px; }
.campaign-donate-section .donate-sort select {display: inline-block; width: 250px;border-radius: 10px; padding: 10px; height: 40px; margin-bottom: 0;}
.campaign-donate-section .donate-sort a {display: inline-block;padding: 6px 14px;border: 1px solid var(--ptb-sky-dark, #109edb);border-radius: 999px;margin: 0 0 0 15px;font-size: 14px;background-color: #fff; color: var(--ptb-sky-dark, #109edb); font-family: var(--font-sans, 'Inter', sans-serif); font-weight: 600;}
.campaign-donate-section .donate-sort a img {width: 20px;height: 16px; }
.campaign-donate-section .donate-list {padding: 25px 20px 0 20px;background-color: #fff;border-radius: 14px;border: 1px solid var(--ptb-border, #e6eaef);margin-top: 20px; }
 
#campaign-view-fundraise-record {display:none;background-color: #fff;border-radius: 14px;padding-bottom: 20px;margin-top: 30px; margin-bottom: 20px; border: 1px solid var(--ptb-border, #e6eaef); box-shadow: var(--shadow-soft, 0 1px 3px rgba(16,30,54,0.08));}
#campaign-view-fundraise-record .header {font-weight: 700;margin-bottom: 0px;background-color: rgba(45,190,249,0.06);border-radius: 14px 14px 0 0;padding: 14px 16px; font-family: var(--font-sans, 'Inter', sans-serif); color: var(--ptb-heading, #1D2B36);}
#campaign-view-fundraise-record .header span {color: #F97362; }
#campaign-view-fundraise-record ul {list-style: none; margin:0;}
#campaign-view-fundraise-record ul li {margin-bottom: 0px; padding: 15px 10px 10px 20px; }
#campaign-view-fundraise-record ul li:nth-child(odd) { background-color: #fff; }
#campaign-view-fundraise-record ul li i {color: #de2727; }
#campaign-view-fundraise-record ul li div.raised-by {margin-left: 20px; }
#campaign-view-fundraise-record ul li div.raised-by a {font-weight: bold; }
#campaign-view-fundraise-record ul li div.donation-time {font-size: 12px; color: #666; margin-left: 20px; }

#donation-record-reveal .record-wrapper {background-color: #fff;border-radius: 14px;margin-top: 20px;padding-bottom: 20px; border: 1px solid var(--ptb-border, #e6eaef);}
#donation-record-reveal .record-wrapper .header {font-weight: 700;margin-bottom: 0px;background-color: rgba(45,190,249,0.06);border-radius: 14px 14px 0 0;padding: 14px 16px; font-family: var(--font-sans, 'Inter', sans-serif); color: var(--ptb-heading, #1D2B36);}
#donation-record-reveal .record-wrapper .header span {color: #F97362; }
#donation-record-reveal .record-wrapper ul {list-style: none;max-height: 400px; overflow-y: auto; margin:0;}
#donation-record-reveal .record-wrapper ul li {margin-bottom: 0px; padding: 15px 10px 10px 20px; }
#donation-record-reveal .record-wrapper ul li:nth-child(odd) { background-color: #fff; }
#donation-record-reveal .record-wrapper ul li i {color: #de2727; }
#donation-record-reveal .record-wrapper ul li div.raised-by {display: inline; margin-left: 10px; }
#donation-record-reveal .record-wrapper ul li div.raised-by a {font-weight: bold; }
#donation-record-reveal .record-wrapper ul li div.donation-time {display: inline;font-size: 12px;color: #666;margin-left: 10px;}
 
@media only screen and (max-width: 40em) {
      .fundraising-thermometer {margin: 20px 0;}
      .event-ends {margin: 20px 0;}
      .campaign-faq { margin: 20px 0; }
      .team-list-section .team-member-wrapper .team-body {max-height: none;}
      
      a.name-card {margin: 0;}
      .campaign-donate-section .donate-instruction {padding: 20px 10px;}
      .campaign-donate-section .donate-sort {margin-top: 20px; }
      .campaign-donate-section .donate-sort .sort-by-label {display: block; margin-bottom: 10px;}
      .campaign-donate-section .donate-sort a {margin: 0 0 0 10px; }
      .campaign-donate-section .donate-list {padding: 25px 10px 0 10px;}
 }

 .js-list-all-record { background: var(--ptb-sky-dark, #109edb) !important; color: #fff !important; border: 0 !important; border-radius: 999px !important; font-family: var(--font-sans, 'Inter', sans-serif) !important; font-weight: 600 !important; text-shadow: none !important; }

 /* ===== Campaign leaderboard (top students / top teams) ===== */
 .js-leaderboard {margin: 0 5px;}
 .leaderboard-card {background-color: #fff; border: 1px solid var(--ptb-border, #e6eaef); border-radius: 14px; box-shadow: var(--shadow-soft, 0 1px 3px rgba(16,30,54,0.08)); padding: 18px 20px; margin-bottom: 20px;}
 .leaderboard-card .leaderboard-title {display: flex; justify-content: space-between; align-items: baseline; font-family: var(--font-sans, 'Inter', sans-serif); font-weight: 700; font-size: 17px; color: var(--ptb-heading, #1D2B36); border-bottom: 1px solid var(--ptb-border, #e6eaef); padding-bottom: 10px; margin-bottom: 6px;}
 .leaderboard-card .leaderboard-amount-title {font-weight: 600; font-size: 13px; color: var(--ptb-gray, #6b7a88);}
 .leaderboard-entry {display: flex; align-items: center; gap: 12px; padding: 9px 0; border-bottom: 1px solid #f1f4f7; font-size: 15px;}
 .leaderboard-entry:last-child {border-bottom: 0;}
 .leaderboard-rank {flex: 0 0 26px; height: 26px; line-height: 26px; text-align: center; border-radius: 50%; background-color: var(--ptb-sky-soft, #E3F4FD); color: var(--ptb-sky-dark, #109edb); font-weight: 700; font-size: 13px;}
 .leaderboard-name {flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
 .leaderboard-amount {font-weight: 700; color: #F97362;}
