/* Appeals form styling - harmonized with inner.css design tokens */
.form-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:32px;align-items:start}
.form-guide{position:sticky;top:98px;padding:26px;border:1px solid var(--line,#dce7f5);border-radius:18px;background:#ffffff;box-shadow:0 12px 32px rgba(23,70,130,.05)}
.guide-steps{margin:0;padding:0;list-style:none;display:flex;flex-direction:column}
.guide-steps li{position:relative;display:flex;align-items:center;gap:14px;padding-bottom:22px;user-select:none}
.guide-steps li:not(:last-child)::after{content:"";position:absolute;top:32px;bottom:0;left:15px;width:2px;background:#e5edf8}
.guide-steps li.is-active:not(:last-child)::after{background:linear-gradient(180deg,#075ef7 0%,#e5edf8 100%)}
.guide-steps li>span{display:grid;width:32px;height:32px;flex:0 0 auto;place-items:center;border:2px solid #d4e3f7;border-radius:50%;color:#647c9e;background:#ffffff;font-size:13px;font-weight:850;transition:all .2s ease}
.guide-steps li.is-active>span{color:#ffffff;border-color:#075ef7;background:#075ef7;box-shadow:0 4px 12px rgba(7,94,247,.3)}
.guide-steps li div{display:flex;flex-direction:column;gap:2px}
.guide-steps li b{font-size:14px;font-weight:800;color:var(--ink,#071d54)}
.guide-steps li small{color:var(--muted,#50688f);font-size:12px}
.guide-card{display:flex;gap:12px;margin-top:16px;padding:16px;border-radius:12px;font-size:13px;line-height:1.5}
.guide-card--security{background:#edf9f2;border:1px solid #c8ecd6}
.guide-card--security .guide-card__icon{display:grid;width:28px;height:28px;place-items:center;border-radius:8px;background:#c2eed5;color:#0d8b36;font-weight:900;font-size:14px;flex-shrink:0}
.guide-card--security b{color:#0d7a31;font-size:13px;display:block}
.guide-card--security p{margin:3px 0 0;color:#2e6047;font-size:12px;line-height:1.45}
.guide-card--notice{background:#f0f6ff;border:1px solid #d6e7fd}
.guide-card--notice .guide-card__icon{display:grid;width:28px;height:28px;place-items:center;border-radius:8px;background:#d7e8fe;color:#075ef7;font-weight:900;font-size:14px;flex-shrink:0}
.guide-card--notice p{margin:0;color:#37537b;font-size:12px;line-height:1.45}
.guide-card--notice .free-notice{display:block;margin-top:6px;color:var(--green-text,#0d7a31);font-size:12px;font-weight:750}
.guide-contact{display:flex;flex-direction:column;gap:4px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line,#dce7f5);text-decoration:none;transition:color .15s ease}
.guide-contact:hover b{color:#054ecc}
.guide-contact small{color:var(--muted,#50688f);font-size:12px}
.guide-contact b{color:var(--blue,#075ef7);font-size:14px;font-weight:750}

.official-form{display:grid;gap:22px}
.form-card{padding:32px;border:1px solid var(--line,#dce7f5);border-radius:18px;background:#ffffff;box-shadow:0 12px 32px rgba(23,70,130,.05)}
.card-header{display:flex;align-items:flex-start;gap:16px;padding-bottom:20px;border-bottom:1px solid var(--line,#dce7f5)}
.card-badge{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;border-radius:10px;color:var(--blue,#075ef7);background:#eaf2ff;font-weight:900;font-size:14px}
.card-header h2{margin:0 0 4px;font-size:22px;font-weight:850;letter-spacing:-.02em;color:var(--ink,#071d54)}
.card-header p{margin:0;color:var(--muted,#50688f);font-size:13px;line-height:1.5}
.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:24px}
.field{display:grid;gap:8px;align-content:start}
.field--wide{grid-column:1/-1}
.field>span{font-size:13px;font-weight:750;color:var(--ink,#071d54)}
.field input,.field select,.field textarea{width:100%;min-height:48px;padding:11px 14px;border:1px solid var(--line,#dce7f5);border-radius:10px;background:#fbfdff;color:var(--ink,#071d54);font-size:14px;outline:none;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}
.field textarea{resize:vertical;line-height:1.6}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--blue,#075ef7);box-shadow:0 0 0 3.5px rgba(7,94,247,.15);background:#ffffff}
.field>small{font-size:11px;color:var(--muted,#50688f);margin-top:2px}
.field>small:last-child{text-align:right}
.field>small i{font-style:normal}

.file-drop{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:150px;padding:24px;border:2px dashed #b9d2f2;border-radius:14px;background:#f8fbff;text-align:center;cursor:pointer;transition:all .2s ease;margin-top:22px}
.file-drop.is-dragover,.file-drop:hover{border-color:var(--blue,#075ef7);background:#eef6ff}
.file-drop input{position:absolute;width:1px;height:1px;opacity:0}
.file-drop__icon{display:grid;width:48px;height:48px;place-items:center;border-radius:12px;background:#e6f0fe;color:var(--blue,#075ef7);margin-bottom:12px}
.file-drop b{font-size:14px;font-weight:750;color:var(--ink,#071d54)}
.file-drop small{margin-top:6px;color:var(--muted,#50688f);font-size:12px}
.file-list{grid-column:1/-1;display:grid;gap:8px;margin-top:12px}
.file-item{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:12px;padding:10px 14px;border:1px solid #dce7f5;border-radius:10px;background:#fbfdff}
.file-item>span:first-child{display:grid;width:38px;height:38px;place-items:center;border-radius:8px;background:#e8f2ff;color:#075ef7;font-weight:850;font-size:11px}
.file-item div{display:flex;flex-direction:column;gap:2px}
.file-item b{font-size:13px;color:#071d54}
.file-item small{font-size:11px;color:#50688f}
.file-item button{display:grid;width:28px;height:28px;place-items:center;border:0;background:#fee2e2;color:#dc2626;border-radius:6px;cursor:pointer;font-size:16px;font-weight:bold;transition:background-color .15s ease}
.file-item button:hover{background:#fecaca}

.check-field{grid-column:1/-1;display:flex;align-items:flex-start;gap:12px;margin-top:14px;font-size:13px;line-height:1.55;color:var(--ink,#071d54);cursor:pointer}
.check-field input{width:18px;height:18px;margin-top:2px;accent-color:var(--blue,#075ef7);flex-shrink:0}
.check-field a{color:var(--blue,#075ef7);text-decoration:underline}

.form-submit{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 32px;border:1px solid var(--line,#dce7f5);border-radius:18px;background:#ffffff;box-shadow:0 12px 32px rgba(23,70,130,.05)}
.form-submit p{max-width:440px;margin:0;color:var(--muted,#50688f);font-size:13px;line-height:1.5}
.free-notice{display:block;margin-top:4px;color:var(--green-text,#0d7a31);font-size:12px;font-weight:750}
.form-submit button{min-height:52px;padding:0 34px;border:1px solid #0d5ce6;border-radius:12px;color:white;background:linear-gradient(180deg,#126bfe 0%,#0655e8 100%);font-size:15px;font-weight:750;box-shadow:0 4px 14px rgba(7,94,247,.3),inset 0 1px 0 rgba(255,255,255,.2);cursor:pointer;transition:all .2s ease;white-space:nowrap;user-select:none}
.form-submit button:hover:not(:disabled){background:linear-gradient(180deg,#1b72ff 0%,#054ecc 100%);box-shadow:0 6px 20px rgba(7,94,247,.4);transform:translateY(-1.5px)}
.form-submit button:active:not(:disabled){transform:scale(.98)}
.form-submit button:disabled{opacity:.6;cursor:not-allowed}
.form-error{margin-top:14px;padding:16px 20px;border:1px solid #fecaca;border-radius:12px;color:#b91c1c;background:#fef2f2;font-size:14px}

.appeal-success{padding:64px 40px;border:1px solid var(--line,#dce7f5);border-radius:20px;background:#ffffff;text-align:center;box-shadow:0 15px 35px rgba(23,70,130,.06)}
.success-icon{display:grid;width:64px;height:64px;margin:0 auto 20px;place-items:center;border-radius:50%;color:white;background:var(--green,#12bd4a);font-size:28px;font-weight:900;box-shadow:0 6px 18px rgba(18,189,74,.3)}
.appeal-success small{color:var(--green-text,#0d7a31);font-size:12px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.appeal-success h2{margin:10px 0 12px;font-size:28px;color:var(--ink,#071d54)}
.appeal-success p{max-width:500px;margin:0 auto 22px;color:var(--muted,#50688f);font-size:15px;line-height:1.6}
.appeal-success strong{display:inline-block;margin:16px auto 28px;padding:14px 28px;border-radius:12px;color:var(--blue,#075ef7);background:#eef5ff;border:1px solid #d0e3fc;font-size:22px;font-weight:850;letter-spacing:.06em}
.appeal-success a{display:inline-flex;align-items:center;justify-content:center;margin-top:10px}

@media(max-width:960px){
  .form-layout{grid-template-columns:1fr;gap:24px}
  .form-guide{position:static}
  .guide-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
  .guide-steps li{padding-bottom:0}
  .guide-steps li::after{display:none}
  .guide-card,.guide-contact{display:none}
}
@media(max-width:640px){
  .form-card{padding:22px 18px}
  .field-grid{grid-template-columns:1fr;gap:14px}
  .guide-steps li div{display:none}
  .guide-steps li{justify-content:center}
  .form-submit{flex-direction:column;align-items:stretch;text-align:center;gap:18px}
  .form-submit button{width:100%}
  .appeal-success{padding:42px 20px}
}

