:root{--navy:#0B1A33;--blue:#1E7BF0;--green:#5CDBA0;--yellow:#FCC433;--bg:#F4F5F7;--muted:#4A5570;--mono:'JetBrains Mono',monospace;--sans:'Outfit',sans-serif}
body.tr-page{margin:0;background:var(--bg);-webkit-font-smoothing:antialiased}
.tr *,.tr *::before,.tr *::after{box-sizing:border-box}
.tr{min-height:100vh;display:flex;flex-direction:column;font-family:var(--sans);color:var(--navy);background:var(--bg);background-image:linear-gradient(#E6E9EF 1px,transparent 1px);background-size:100% 56px}
.tr a{color:var(--navy);text-decoration:underline;text-underline-offset:3px}
.tr a:hover{color:var(--blue)}

.tr-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:28px clamp(20px,5vw,64px)}
.tr-logo{height:40px;width:auto;display:block;mix-blend-mode:multiply}
.tr-badge{display:flex;align-items:center;gap:10px;font:13px var(--mono);letter-spacing:.08em;text-transform:uppercase;background:var(--navy);color:var(--bg);padding:10px 16px;border-radius:999px}
.tr-badge__dot{width:8px;height:8px;border-radius:50%;background:var(--yellow)}

.tr-main{flex:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:clamp(40px,6vw,88px);align-items:center;padding:clamp(24px,5vw,64px) clamp(20px,5vw,64px) clamp(48px,6vw,88px);max-width:1320px;width:100%;margin:0 auto}
.tr-hero{display:flex;flex-direction:column;gap:28px}
.tr-eyebrow{font:13px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.tr-headline{margin:0;font-size:clamp(44px,6.2vw,84px);line-height:.98;font-weight:800;letter-spacing:-.035em;text-wrap:balance}
.tr-sub{margin:0;font-size:clamp(18px,1.6vw,21px);line-height:1.5;color:#3A4560;max-width:520px;text-wrap:pretty}
.tr-note{font:13px var(--mono);color:var(--muted)}
.tr-form{max-width:540px}
.tr-form__notice{margin:0;padding:12px 16px;border:2px dashed var(--navy);border-radius:14px;font:13px var(--mono)}

/* Gravity Forms skin: inline email + button */
.tr-form .gform_wrapper{margin:0}
.tr-form .gform_wrapper form{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-start}
.tr-form .gform_body{flex:1 1 240px;min-width:0}
.tr-form .gform_wrapper .gform_fields{display:block;margin:0;padding:0;list-style:none}
.tr-form .gform_wrapper .gfield{margin:0;padding:0}
.tr-form .gform_wrapper .gfield_label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.tr-form .gform_wrapper .ginput_container{margin:0}
.tr-form .gform_wrapper input[type=email],.tr-form .gform_wrapper input[type=text]{width:100%;height:56px;padding:0 20px;font:17px var(--sans);color:var(--navy);background:#fff;border:2px solid var(--navy);border-radius:14px;outline:none;box-shadow:none}
.tr-form .gform_wrapper input::placeholder{color:#7A8499}
.tr-form .gform_wrapper input:focus{border-color:var(--blue)}
.tr-form .gform_footer,.tr-form .gform_page_footer{margin:0;padding:0}
.tr-form .gform_wrapper input[type=submit],.tr-form .gform_wrapper button[type=submit]{height:56px;padding:0 26px;font:600 17px var(--sans);color:#fff;background:var(--blue);border:2px solid var(--navy);border-radius:14px;cursor:pointer;box-shadow:4px 4px 0 var(--navy);transition:transform .15s,box-shadow .15s}
.tr-form .gform_wrapper input[type=submit]:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--navy)}
.tr-form .gform_wrapper input[type=submit]:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--navy)}
.tr-form .gform_validation_errors,.tr-form .gfield_validation_message,.tr-form .validation_message{flex-basis:100%;margin:8px 0 0;padding:0;font:13px var(--mono);color:#B3261E;background:none;border:0}
.tr-form .gform_wrapper .gform_validation_errors h2{font:600 14px var(--sans);margin:0}
.tr-form .gform_ajax_spinner{display:none}
/* Confirmation message */
.tr-form .gform_confirmation_message{display:flex;align-items:center;gap:14px;padding:16px 20px;background:var(--green);border:2px solid var(--navy);border-radius:14px;font-size:17px;font-weight:600}
.tr-form .gform_confirmation_message::before{content:"ADDED";font:500 13px var(--mono);background:var(--navy);color:var(--green);padding:4px 8px;border-radius:6px}

/* Roster card */
.tr-card{background:var(--navy);border-radius:36px;padding:clamp(24px,3.5vw,44px);display:flex;flex-direction:column;gap:22px;box-shadow:0 30px 60px -30px rgba(11,26,51,.55)}
.tr-card__top{display:flex;justify-content:space-between;align-items:center;gap:12px;font:12px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#9AA6C0}
.tr-row{--c:var(--blue);--ink:#fff;display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:center}
.tr-row--green{--c:var(--green);--ink:var(--navy)}
.tr-row--yellow{--c:var(--yellow);--ink:var(--navy)}
.tr-row__mark{width:clamp(44px,5vw,60px);aspect-ratio:1;border-radius:50%;background:var(--c);display:flex;align-items:center;justify-content:center;font:500 14px var(--mono);color:var(--navy)}
.tr-row__body{display:flex;flex-direction:column;gap:8px}
.tr-bar{position:relative;height:clamp(44px,5vw,60px);border-radius:999px;background:#16284A;overflow:hidden}
.tr-bar__fill{position:absolute;inset:0 auto 0 0;background:var(--c);border-radius:999px;transition:width 1.1s cubic-bezier(.6,0,.2,1)}
.tr-bar__text{position:relative;height:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 22px;font-size:clamp(15px,1.4vw,18px);font-weight:600;color:#F4F5F7;transition:color .6s}
.tr-row.is-done .tr-bar__text{color:var(--ink)}
.tr-bar__task{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tr-bar__pct{font:500 13px var(--mono)}
.tr-row__meta{display:flex;justify-content:space-between;gap:12px;font:12px var(--mono);color:#9AA6C0;padding:0 6px}
.tr-rule{height:1px;background:#22365C}
.tr-card__bottom{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.tr-card__tagline{font-size:clamp(20px,2vw,26px);font-weight:700;color:var(--bg);letter-spacing:-.01em}
.tr-card__version{font:12px var(--mono);color:#9AA6C0}

.tr-footer{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:24px clamp(20px,5vw,64px);border-top:1px solid #DDE1E8;background:var(--bg);font:13px var(--mono);color:var(--muted)}
