@import url('https://fonts.googleapis.com/css2?family=Source+Serif+4:ital,wght@0,400;0,500;0,600&family=Nunito+Sans:wght@300;400;500;600;700&display=swap');


  .tw-app * {margin:0;padding:0;box-sizing:border-box}
  .tw-app {
    --white:#ffffff;
    --sand-50:#faf8f5;--sand-100:#f5f0ea;--sand-200:#ebe3d8;--sand-300:#d9cdbf;
    --slate-400:#94a3b8;--slate-500:#64748b;--slate-600:#475569;--slate-700:#334155;--slate-800:#1e293b;--slate-900:#0f172a;
    --ocean-50:#eef6fa;--ocean-100:#d4ebf5;--ocean-200:#a8d5ea;--ocean-400:#4fa3c7;--ocean-500:#2c7d9e;--ocean-600:#236a87;--ocean-700:#1b5570;--ocean-800:#143f54;--ocean-900:#0d2a38;
    --teal-50:#effcf9;--teal-100:#d1f7ef;--teal-400:#2dd4a8;--teal-500:#14b890;--teal-600:#0d9b77;
    --amber-50:#fffbeb;--amber-100:#fef3c7;--amber-400:#f59e0b;--amber-600:#d97706;--amber-700:#b45309;
    --rose-50:#fff1f2;--rose-400:#fb7185;--rose-500:#f43f5e;--rose-600:#e11d48;
    --stone-400:#a8a29e;
    --radius:10px;--radius-lg:14px;
  }
  .tw-app {font-family:'Nunito Sans',-apple-system,sans-serif;background:var(--sand-50);color:var(--slate-800);line-height:1.6;min-height:100vh}
  .tw-app .header {background:var(--white);border-bottom:1px solid var(--sand-200);padding:14px 24px;display:flex;align-items:center;justify-content:space-between}
  .tw-app .logo {font-family:'Source Serif 4',Georgia,serif;font-size:22px;font-weight:500;color:var(--ocean-700);letter-spacing:-0.3px}
  .tw-app .logo-sub {color:var(--slate-500);font-weight:400;font-size:13px;font-family:'Nunito Sans',sans-serif;margin-left:10px;padding-left:10px;border-left:1px solid var(--sand-300)}
  .tw-app .hdr-r {font-size:13px;color:var(--slate-500);display:flex;align-items:center;gap:14px}
  .tw-app .hdr-r a {color:var(--ocean-600);text-decoration:none;font-weight:500}
  .tw-app .hero {background:linear-gradient(160deg, var(--ocean-900) 0%, var(--ocean-700) 40%, var(--ocean-500) 100%);padding:0 24px;text-align:center;color:var(--white);position:relative;overflow:hidden}
  .tw-app .hero::before {content:'';position:absolute;top:-30%;right:-20%;width:60%;height:160%;background:radial-gradient(ellipse,rgba(45,212,168,0.1) 0%,transparent 70%);pointer-events:none}
  .tw-app .hero-inner {position:relative;z-index:1;max-width:600px;margin:0 auto;padding:40px 0 44px}
  .tw-app .hero-greeting {font-size:14px;font-weight:400;opacity:0.95;margin-bottom:6px;letter-spacing:0.3px}
  .tw-app .hero h1 {font-family:'Source Serif 4',Georgia,serif;font-size:34px;font-weight:500;margin-bottom:24px;letter-spacing:-0.5px;line-height:1.2;color:#ffffff}
  .tw-app .hero-body {font-size:15px;opacity:0.8;line-height:1.65;font-weight:300;max-width:480px;margin:0 auto}
  .tw-app .underlined-phrase {position:relative;display:inline-block}
  .tw-app .phrase-line {position:absolute;left:0;right:0;bottom:-6px;height:3px;background:var(--teal-400);border-radius:2px;opacity:0.7}
  .tw-app .advocate-pill {display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,0.10);backdrop-filter:blur(10px);border:1.5px solid rgba(255,255,255,0.18);border-radius:28px;font-size:13px;font-weight:600;margin-top:24px;letter-spacing:0.3px;color:rgba(255,255,255,0.95);flex-direction:column;gap:2px;padding:12px 26px}
  .tw-app .advocate-pill-top {font-family:'Source Serif 4',Georgia,serif;font-size:15px;font-weight:500;letter-spacing:0.2px}
  .tw-app .advocate-pill-bottom {display:flex;align-items:center;gap:6px;font-size:11px;font-weight:600;letter-spacing:0.5px;text-transform:uppercase;opacity:0.85}
  .tw-app .advocate-heart svg {width:14px;height:14px}
  .tw-app .progress-bar {display:flex;align-items:center;justify-content:center;width:100%;margin:18px 0 12px}
  .tw-app .step-indicator {display:flex;align-items:center;gap:8px;font-size:13px;color:var(--slate-400);font-weight:600;transition:color 0.3s;white-space:nowrap}
  .tw-app .step-indicator.active {color:var(--ocean-600)}
  .tw-app .step-indicator.completed {color:#054a39}
  .tw-app .step-num {width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;background:var(--sand-100);color:var(--slate-400);transition:all 0.3s;flex-shrink:0}
  .tw-app .step-indicator.active .step-num {background:var(--ocean-600);color:var(--white)}
  .tw-app .step-indicator.completed .step-num {background:var(--teal-500);color:var(--white)}
  .tw-app .step-connector {width:48px;height:2px;background:var(--sand-200);margin:0 12px;flex-shrink:0;transition:background 0.3s;border-radius:1px}
  .tw-app .step-connector.completed {background:var(--teal-400)}
  .tw-app .main {max-width:640px;margin:0 auto;padding:32px 24px 80px}
  .tw-app .step-panel {display:none;animation:fadeUp 0.35s ease}
  .tw-app .step-panel.active {display:block}
  @keyframes fadeUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
  .tw-app .section-heading {margin-bottom:24px}
  .tw-app .section-heading h2 {font-family:'Source Serif 4',Georgia,serif;font-size:24px;font-weight:500;color:var(--slate-900);margin-bottom:6px;letter-spacing:-0.3px}
  .tw-app .section-heading p {font-size:14px;color:var(--slate-500);line-height:1.5}
  .tw-app .form-group {margin-bottom:20px}
  .tw-app .form-row {display:grid;grid-template-columns:1fr 1fr;gap:16px}
  .tw-app label {display:block;font-size:13px;font-weight:600;color:var(--slate-700);margin-bottom:6px}
  .tw-app label .opt {color:var(--slate-400);font-weight:400}
  .tw-app label .req {color:#dc2626;font-weight:400;font-size:11px}
  .tw-app input[type="text"], .tw-app input[type="email"], .tw-app input[type="tel"], .tw-app input[type="date"], .tw-app select, .tw-app textarea {width:100%;padding:11px 14px;border:1.5px solid var(--sand-200);border-radius:var(--radius);font-family:'Nunito Sans',sans-serif;font-size:14px;color:var(--slate-800);background:var(--white);transition:border-color 0.2s,box-shadow 0.2s;outline:none}
  .tw-app input:focus, .tw-app select:focus, .tw-app textarea:focus {border-color:var(--ocean-400);box-shadow:0 0 0 3px rgba(44,125,158,0.1)}
  .tw-app input.error, .tw-app select.error, .tw-app textarea.error {border-color:var(--rose-500);box-shadow:0 0 0 3px rgba(244,63,94,0.08)}
  .tw-app .field-error {color:var(--rose-600);font-size:12px;margin-top:5px;display:none}
  .tw-app .field-error.show {display:block}
  .tw-app textarea {resize:vertical;min-height:110px}
  .tw-app select {cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364748b' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}
  .tw-app .tip {border-radius:var(--radius);padding:14px 16px;font-size:13px;line-height:1.55;margin-bottom:24px}
  .tw-app .tip strong {display:block;margin-bottom:2px}
  .tw-app .tip-ocean {background:var(--ocean-50);border-left:3px solid var(--ocean-400);color:var(--slate-600)}
  .tw-app .tip-ocean strong {color:var(--ocean-700)}
  .tw-app .tip-amber {background:var(--amber-50);border-left:3px solid var(--amber-400);color:var(--slate-600)}
  .tw-app .tip-amber strong {color:var(--amber-700)}
  .tw-app .tip-teal {background:var(--teal-50);border-left:3px solid var(--teal-400);color:var(--slate-600)}
  .tw-app .tip-teal strong {color:var(--teal-600)}
  .tw-app .tip-rose {background:var(--rose-50);border-left:3px solid var(--rose-400);color:var(--slate-600)}
  .tw-app .tip-rose strong {color:var(--rose-600)}
  .tw-app .upload-zone {border:2px dashed var(--sand-300);border-radius:var(--radius-lg);padding:30px 24px;text-align:center;cursor:pointer;transition:all 0.2s;background:var(--white)}
  .tw-app .upload-zone:hover, .tw-app .upload-zone.dragging {border-color:var(--ocean-400);background:var(--ocean-50)}
  .tw-app .upload-icon {width:48px;height:48px;margin:0 auto 12px;background:var(--ocean-50);border-radius:50%;display:flex;align-items:center;justify-content:center}
  .tw-app .upload-icon svg {width:22px;height:22px;color:var(--ocean-500)}
  .tw-app .upload-zone h4 {font-size:14px;font-weight:600;color:var(--slate-700);margin-bottom:4px}
  .tw-app .upload-zone p {font-size:12px;color:var(--slate-400)}
  .tw-app .upload-grid {display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}
  .tw-app .upload-card {border:1.5px solid var(--sand-200);border-radius:var(--radius);padding:18px 14px;text-align:center;cursor:pointer;transition:all 0.2s;background:var(--white);position:relative;overflow:hidden}
  .tw-app .upload-card:hover {border-color:var(--ocean-400);background:var(--ocean-50)}
  .tw-app .upload-card .card-label {font-size:10px;font-weight:700;color:var(--ocean-500);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:6px}
  .tw-app .upload-card .card-icon {font-size:26px;margin-bottom:8px}
  .tw-app .upload-card h5 {font-size:13px;font-weight:600;color:var(--slate-700)}
  .tw-app .upload-card p {font-size:11px;color:var(--slate-400);margin-top:3px}
  .tw-app .upload-card.has-file {border-color:var(--teal-400);background:var(--teal-50)}
  .tw-app .upload-card.has-file .card-thumb {position:absolute;inset:0;background-size:cover;background-position:center;border-radius:var(--radius)}
  .tw-app .upload-card.has-file .card-overlay {position:absolute;inset:0;background:rgba(13,42,56,0.55);border-radius:var(--radius);display:flex;flex-direction:column;align-items:center;justify-content:center;color:white;padding:8px}
  .tw-app .upload-card.has-file .card-overlay h5 {color:white;font-size:11px;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
  .tw-app .upload-card.has-file .card-overlay .remove-btn {background:rgba(255,255,255,0.2);border:1px solid rgba(255,255,255,0.4);color:white;padding:4px 10px;border-radius:6px;font-size:10px;font-weight:600;cursor:pointer;margin-top:4px}
  .tw-app .upload-card.has-file .card-overlay .remove-btn:hover {background:rgba(255,255,255,0.3)}
  .tw-app .extra-files {margin-top:14px;display:none}
  .tw-app .extra-files.show {display:block}
  .tw-app .extra-files-list {display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
  .tw-app .extra-file {position:relative;aspect-ratio:1;border-radius:8px;border:1.5px solid var(--sand-200);background:var(--sand-50) center/cover no-repeat;overflow:hidden}
  .tw-app .extra-file .ef-name {position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent, rgba(0,0,0,0.7));color:white;padding:18px 6px 5px;font-size:9px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .tw-app .extra-file .ef-remove {position:absolute;top:4px;right:4px;width:20px;height:20px;border-radius:50%;background:rgba(220,38,38,0.9);border:none;color:white;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:bold;line-height:1}
  .tw-app .extra-file.is-video {background:var(--slate-700)}
  .tw-app .extra-file.is-video::after {content:'▶';position:absolute;top:50%;left:50%;transform:translate(-50%,-60%);color:rgba(255,255,255,0.8);font-size:22px}
  .tw-app .extra-file.is-pdf {background:var(--ocean-50)}
  .tw-app .extra-file.is-pdf::after {content:'PDF';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--ocean-600);font-weight:700;font-size:13px;letter-spacing:0.5px}
  .tw-app .btn-row {display:flex;justify-content:space-between;align-items:center;margin-top:32px;padding-top:24px;border-top:1px solid var(--sand-200)}
  .tw-app .btn {padding:12px 30px;border-radius:var(--radius);font-family:'Nunito Sans',sans-serif;font-size:14px;font-weight:600;cursor:pointer;border:none;transition:all 0.2s}
  .tw-app .btn:disabled {opacity:0.55;cursor:not-allowed}
  .tw-app .btn-primary {background:var(--ocean-600);color:var(--white)}
  .tw-app .btn-primary:hover:not(:disabled) {background:var(--ocean-700);transform:translateY(-1px);box-shadow:0 4px 12px rgba(27,85,112,0.25)}
  .tw-app .btn-ghost {background:transparent;color:var(--slate-500);padding:12px 16px}
  .tw-app .btn-ghost:hover {color:var(--slate-700)}
  .tw-app .btn-spinner {display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,0.3);border-top-color:white;border-radius:50%;animation:spin 0.7s linear infinite;margin-right:8px;vertical-align:-2px}
  @keyframes spin{to{transform:rotate(360deg)}}
  .tw-app .channel-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:20px}
  .tw-app .channel-card {border:1.5px solid var(--sand-200);border-radius:var(--radius);padding:14px 10px;text-align:center;cursor:pointer;transition:all 0.2s;background:var(--white);user-select:none}
  .tw-app .channel-card:hover {border-color:var(--ocean-400);background:var(--ocean-50)}
  .tw-app .channel-card.selected {border-color:var(--ocean-500);background:var(--ocean-50);box-shadow:0 0 0 2px rgba(44,125,158,0.15)}
  .tw-app .channel-card .ch-name {font-size:12px;font-weight:600;color:var(--slate-700)}
  .tw-app .inline-cards {display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .tw-app .opt-section {margin-bottom:20px}
  .tw-app .opt-toggle {display:flex;align-items:center;gap:8px;cursor:pointer;padding:13px 16px;background:var(--sand-100);border:1px solid var(--sand-200);border-radius:var(--radius);font-size:13px;color:var(--slate-500);font-weight:500;transition:all 0.2s;user-select:none}
  .tw-app .opt-toggle:hover {background:var(--white);border-color:var(--sand-300);color:var(--slate-700)}
  .tw-app .plus-i {width:22px;height:22px;border-radius:50%;background:var(--sand-200);display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:600;color:var(--slate-500);transition:all 0.25s;flex-shrink:0;line-height:1}
  .tw-app .opt-section.open .plus-i {transform:rotate(45deg);background:var(--ocean-500);color:var(--white)}
  .tw-app .opt-section.open .opt-toggle {background:var(--white);border-color:var(--ocean-400);color:var(--ocean-600)}
  .tw-app .opt-content {max-height:0;overflow:hidden;transition:max-height 0.35s ease}
  .tw-app .opt-section.open .opt-content {max-height:1400px}
  .tw-app .opt-inner {padding:16px 0 0}
  .tw-app .model-helper {cursor:pointer;margin-top:14px}
  .tw-app .mh-toggle {display:flex;align-items:center;gap:6px;font-size:12px;color:var(--ocean-500);font-weight:600;padding:4px 0}
  .tw-app .mh-toggle:hover {color:var(--ocean-700)}
  .tw-app .chevron {transition:transform 0.2s;color:var(--ocean-500);flex-shrink:0}
  .tw-app .model-helper.open .chevron {transform:rotate(90deg)}
  .tw-app .mh-content {max-height:0;overflow:hidden;transition:max-height 0.35s ease}
  .tw-app .model-helper.open .mh-content {max-height:900px}
  .tw-app .helper-grid {display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:14px 0 4px}
  .tw-app .helper-card {background:var(--white);border:1px solid var(--sand-200);border-radius:var(--radius);padding:14px}
  .tw-app .helper-ill {width:100%;height:80px;background:var(--sand-50);border-radius:8px;margin-bottom:10px;display:flex;align-items:center;justify-content:center;overflow:hidden}
  .tw-app .helper-card strong {font-size:12px;color:var(--slate-800);display:block;margin-bottom:3px}
  .tw-app .helper-card p {font-size:11px;color:var(--slate-500);line-height:1.4;margin:0}
  .tw-app .success-panel {text-align:center;padding:48px 24px}
  .tw-app .success-check {width:68px;height:68px;border-radius:50%;background:var(--teal-50);border:2px solid var(--teal-400);display:flex;align-items:center;justify-content:center;margin:0 auto 22px}
  .tw-app .success-check svg {width:34px;height:34px;color:var(--teal-500)}
  .tw-app .success-panel h2 {font-family:'Source Serif 4',Georgia,serif;font-size:26px;color:var(--slate-900);margin-bottom:8px}
  .tw-app .success-panel>p {color:var(--slate-500);font-size:14px;max-width:440px;margin:0 auto;line-height:1.6}
  .tw-app .claim-num {display:inline-block;background:var(--ocean-50);color:var(--ocean-700);font-weight:700;font-size:16px;padding:10px 24px;border-radius:var(--radius);margin:22px 0;letter-spacing:0.5px;border:1px solid var(--ocean-200)}
  .tw-app .next-steps {background:var(--white);border:1.5px solid var(--sand-200);border-radius:var(--radius-lg);padding:24px;margin-top:24px;text-align:left}
  .tw-app .next-steps h4 {font-size:14px;font-weight:700;color:var(--slate-800);margin-bottom:14px}
  .tw-app .ns-item {display:flex;gap:12px;padding:10px 0;border-bottom:1px solid var(--sand-100)}
  .tw-app .ns-item:last-child {border-bottom:none}
  .tw-app .ns-num {width:24px;height:24px;border-radius:50%;background:var(--ocean-50);color:var(--ocean-600);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px;border:1px solid var(--ocean-200)}
  .tw-app .ns-item p {font-size:13px;color:var(--slate-600);line-height:1.5}
  .tw-app .ns-item strong {color:var(--slate-800)}
  .tw-app .submit-error {background:var(--rose-50);border:1px solid var(--rose-400);border-radius:var(--radius);padding:14px 16px;color:var(--rose-600);font-size:13px;margin-bottom:20px;display:none}
  .tw-app .submit-error.show {display:block}
  .tw-app .upload-warning {font-size:12px;color:var(--amber-700);background:var(--amber-50);border-radius:6px;padding:6px 10px;margin-top:8px;display:none}
  .tw-app .upload-warning.show {display:block}
  
  .tw-app .hp-field {position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;opacity:0}
  @media(max-width:600px){
    .tw-app .form-row {grid-template-columns:1fr}.tw-app .channel-grid {grid-template-columns:repeat(2,1fr)}.tw-app .helper-grid {grid-template-columns:1fr}
    .tw-app .hero h1 {font-size:27px}.tw-app .step-indicator span:not(.step-num) {display:none}.tw-app .step-connector {width:24px;margin:0 6px}
    .tw-app .header {padding:12px 16px}.tw-app .main {padding:24px 16px 80px}
    .tw-app .extra-files-list {grid-template-columns:repeat(2,1fr)}
  }
