.fm-sec{font-size:1.1875rem;font-weight:900;color:var(--navy);margin:2.25rem 0 1rem;padding-bottom:.625rem;border-bottom:2px solid var(--navy)}
.fm-sec.first{margin-top:.375rem}
.fm-sub{font-size:.96875rem;font-weight:900;color:var(--ink);margin:1.5rem 0 .625rem;display:flex;align-items:center;justify-content:space-between;gap:.625rem}
.fm-sub .rq{font-size:.78125rem;color:#d64545;font-weight:700}
.cs-bar{display:flex;align-items:center;justify-content:space-between;gap:.875rem;flex-wrap:wrap;border:1.5px solid var(--line);border-radius:1rem;padding:1rem 1.25rem;background:#fbfcff;margin-top:1.5rem}
.cs-chk{display:flex;align-items:center;gap:.5625rem;font-size:.90625rem;font-weight:800;color:var(--ink);cursor:pointer}
.cs-chk input{width:1.125rem;height:1.125rem;accent-color:var(--navy)}
.cs-view{font-size:.84375rem;font-weight:800;color:var(--navy);text-decoration:underline;text-underline-offset:.1875rem;background:none;border:0;cursor:pointer;padding:.25rem .125rem}
.cs-view:hover{color:var(--navy-2)}
.fm-table{width:100%;border-collapse:collapse;border-top:2px solid var(--navy);font-size:.90625rem;margin-bottom:.375rem}
.fm-table th,.fm-table td{border-bottom:1px solid var(--line);padding:.8125rem 1rem;text-align:left;vertical-align:middle}
.fm-table th{background:var(--bg-soft);color:var(--ink);font-weight:800;width:10.625rem;white-space:nowrap}
.fm-table .req{color:#d64545;margin-left:.1875rem}
.fm-detail{color:#b5462b;font-weight:600;line-height:1.95}
.fm-detail .tgt{font-weight:800;display:block;margin-bottom:.25rem}
.fm-input{border:1.5px solid var(--line);border-radius:.625rem;padding:.625rem .8125rem;font-size:.90625rem;font-family:inherit;width:100%;max-width:18.75rem;box-sizing:border-box;background:#fff;color:var(--ink,#1a1a1a)}
.fm-input:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 .1875rem rgba(11,49,143,.10)}
.fm-input.sm{max-width:10rem}
.fm-input.wide{max-width:100%}
.fm-input[readonly]{background:#f7f8fa;color:#555}
.fm-radio{display:inline-flex;align-items:center;gap:.375rem;margin-right:1.25rem;font-weight:700}
.fm-radio input{width:1rem;height:1rem;accent-color:var(--navy)}
.fm-hint{display:block;margin-top:.4375rem;font-size:.78125rem;color:#d64545;font-weight:600}
.dob{display:inline-flex;gap:1rem;flex-wrap:wrap;align-items:center}
.dob-item{display:inline-flex;align-items:center;gap:.5rem;white-space:nowrap}
.dob select,.fm-sel{border:1.5px solid var(--line);border-radius:.625rem;padding:.5625rem 2.375rem .5625rem .875rem;font-size:.875rem;font-family:inherit;background-color:#fff;height:2.625rem;box-sizing:border-box;min-width:7.5rem}
.dob select[name="dob_m"],.dob select[name="dob_d"]{min-width:5.5rem}
.txarea{width:100%;min-height:7.5rem;border:1.5px solid var(--line);border-radius:.75rem;padding:.8125rem .9375rem;font-size:.90625rem;font-family:inherit;line-height:1.7;resize:vertical}
.txarea:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 .1875rem rgba(11,49,143,.10)}
.fm-btns{display:flex;justify-content:flex-end;gap:.625rem;margin-top:2.25rem}
.fm-btns .btn{padding:.875rem 2.125rem;font-size:.9375rem}
.path-box{display:flex;flex-direction:column;gap:.625rem}
.path-chk{display:flex;align-items:center;gap:.5625rem;font-size:.875rem;color:var(--ink);font-weight:600;cursor:pointer}
.path-chk input[type=checkbox]{width:1.0625rem;height:1.0625rem;accent-color:var(--navy)}
.opt-row{display:flex;flex-wrap:wrap;gap:.625rem 1.375rem}
.opt-chk{display:inline-flex;align-items:center;gap:.4375rem;font-size:.875rem;color:var(--ink);font-weight:600;cursor:pointer}
.opt-chk input{width:1rem;height:1rem;accent-color:var(--navy)}
.file-row{display:flex;align-items:center;gap:.625rem;margin:.375rem 0}
.file-lb{min-width:11.25rem;font-weight:700;color:var(--gray);font-size:.84375rem}
.inl{display:inline-flex;align-items:center;gap:.375rem;flex-wrap:wrap}
.load-row{display:flex;align-items:center;gap:.75rem;margin:0 0 .75rem}
.load-btn{border:1.5px solid var(--navy);background:#fff;color:var(--navy);font-weight:800;border-radius:.625rem;padding:.5rem .875rem;cursor:pointer}
.done2{margin-top:.625rem}
.d2-msg{font-size:1.1875rem;font-weight:800;color:var(--ink);line-height:1.7}
.d2-msg b{color:var(--navy)}
.d2-msg .hl{color:#d64545}
.d2-note{margin-top:.75rem;font-size:.875rem;color:#9a3b3b;font-weight:700}
.d2-hr{border:0;border-top:1px solid var(--line);margin:1.875rem 0 0}
.tm-modal{position:fixed;inset:0;z-index:200;display:none;align-items:center;justify-content:center;padding:1.25rem}
.tm-modal.on{display:flex}
.tm-dim{position:absolute;inset:0;background:rgba(6,20,48,.55)}
.tm-panel{position:relative;z-index:1;width:100%;max-width:35rem;max-height:80vh;display:flex;flex-direction:column;background:#fff;border-radius:1.125rem;overflow:hidden;box-shadow:0 1.875rem 4.375rem -1.25rem rgba(6,20,48,.5)}
.tm-head{display:flex;align-items:center;justify-content:space-between;padding:1.125rem 1.375rem;background:var(--navy);color:#fff}
.tm-head h3{font-size:1.0625rem;font-weight:900;margin:0}
.tm-close{background:rgba(255,255,255,.15);border:0;color:#fff;width:2rem;height:2rem;border-radius:50%;font-size:1.1875rem;cursor:pointer}
.tm-body{padding:1.25rem 1.375rem;overflow-y:auto;font-size:.875rem;line-height:1.8;color:#33405c}
.tm-body b{color:var(--ink)}
.tm-body .warn{display:block;margin-top:.875rem;color:#9a3b3b;font-weight:700}
.tm-foot{padding:1rem 1.5rem;border-top:1px solid var(--line);display:flex;justify-content:center;gap:.625rem}

.ys-pgm .block-dots{display:flex;flex:none;width:.375rem;height:1.25rem;border-radius:.25rem;background:#0B318F}
.ys-pgm .fm-sec{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;font-size:1.75rem;font-weight:700;color:#292a2d;letter-spacing:-.01em;line-height:1.29;margin:0;padding:0;border:0}
.ys-pgm .fm-block{display:flex;flex-direction:column;gap:2.25rem;width:100%}
.ys-pgm .fm-block + .fm-block{margin-top:3.25rem}
.ys-pgm .fm-sub{font-size:1.375rem;font-weight:700;color:#0B318F;letter-spacing:-.005em;line-height:1.45;margin:0 0 1rem;padding:0 0 .25rem;display:flex;align-items:baseline;justify-content:flex-start;gap:.75rem;flex-wrap:wrap}
.ys-pgm .fm-sub .rq{font-size:.875rem;color:#cc1c24;font-weight:400;line-height:1.43}
.ys-pgm .fm-sub .rq-navy{color:#0B318F}
.ys-pgm .fm-desc{margin:0;font-size:1rem;color:#878a93;font-weight:400;line-height:1.5}
.ys-pgm .fm-desc.navy{color:#0B318F}
.ys-pgm .cs-bar{border:0;border-radius:0;padding:0;background:transparent;margin:0}
.ys-pgm .cs-chk{gap:.625rem;font-size:1.125rem;font-weight:400;color:#5a5c63}
.ys-pgm .cs-chk input{width:1.375rem;height:1.375rem}
.ys-pgm .cs-chk .req-txt{color:#cc1c24}
.ys-pgm .cs-view{display:inline-flex;align-items:center;gap:.25rem;font-size:.875rem;font-weight:500;color:#5a5c63;text-decoration:none;background:#fff;border:1px solid #aeb0b6;border-radius:100px;padding:.625rem 1rem .625rem 1.25rem;line-height:1.43;font-family:inherit}
.ys-pgm .cs-view img{width:1rem;height:1rem;display:block}
.ys-pgm .cs-view:hover{color:#0B318F;border-color:#0B318F}
.ys-pgm .fm-table{border-top:1px solid #292a2d;font-size:1.125rem;margin:0}
.ys-pgm .fm-table th,.ys-pgm .fm-table td{padding:1.25rem 0;border-bottom:1px solid #e1e2e4}
.ys-pgm .fm-table th{background:transparent;color:#292a2d;font-weight:700;width:15rem;padding-right:1.25rem}
.ys-pgm .fm-table td{color:#878a93;font-weight:400}
.ys-pgm .fm-table .req{color:#cc1c24;margin-left:.25rem}
.ys-pgm .fm-detail{color:#878a93;font-weight:400;line-height:1.5;display:flex;flex-direction:column;gap:.75rem}
.ys-pgm .fm-detail .tgt{font-weight:700;margin:0;color:#292a2d;font-size:1.25rem;letter-spacing:-.005em;line-height:1.45}
.ys-pgm .fm-price{color:#cc1c24;font-weight:700}
.ys-pgm .fm-table td.fm-price{color:#cc1c24;font-weight:700}
.ys-pgm .fm-input{border:1px solid #e1e2e4;border-radius:.75rem;padding:.75rem 1rem;font-size:1.125rem;max-width:22.5rem;line-height:1.5;color:#171719}
.ys-pgm .fm-input.sm{max-width:12.5rem}
.ys-pgm .fm-input.md{max-width:30rem}
.ys-pgm .fm-input::placeholder{color:#878a93}
.ys-pgm .fm-radio{gap:.5rem;margin-right:1.75rem;font-weight:400;font-size:1.125rem;color:#171719}
.ys-pgm .fm-radio input{width:1.375rem;height:1.375rem}
.ys-pgm .fm-hint{margin-top:.625rem;font-size:.875rem;color:#cc1c24;font-weight:400;line-height:1.43}
.ys-pgm .dob{gap:.625rem}
.ys-pgm .dob-item{gap:0}
.ys-pgm .dob select,.ys-pgm .fm-sel{border:1px solid #e1e2e4;border-radius:.625rem;padding:.75rem .875rem .75rem 1rem;font-size:1.125rem;height:3.1875rem;min-width:10rem;color:#171719}
.ys-pgm .dob select[name="dob_m"],.ys-pgm .dob select[name="dob_d"],.ys-pgm .dob select[name="part_dob_m"],.ys-pgm .dob select[name="part_dob_d"]{min-width:8.125rem;width:8.125rem}
.ys-pgm .dob select[name="dob_y"],.ys-pgm .dob select[name="part_dob_y"]{width:10rem}
.ys-pgm .txarea{min-height:8.75rem;border:1px solid #e1e2e4;padding:1rem;font-size:1.125rem;line-height:1.5}
.ys-pgm .fm-btns{justify-content:center;align-items:center;gap:.75rem;margin-top:3.25rem}
.ys-pgm .fm-btns .btn{min-width:12.5rem;height:3.375rem;padding:0 1.5rem;font-size:1.125rem;font-weight:500;justify-content:center;box-sizing:border-box}
.ys-pgm .fm-btns .btn-ghost,.ys-pgm .fm-btns a.btn-ghost{border:1.5px solid #0B318F;color:#0B318F;background:#fff}
.ys-pgm .fm-btns .btn-ghost:hover,.ys-pgm .fm-btns a.btn-ghost:hover,.ys-pgm .fm-btns a.btn-ghost:visited:hover{background:#0B318F;color:#fff;border-color:#0B318F;transform:none}
.ys-pgm .fm-btns .btn-cancel{border-color:#aeb0b6;color:#171719}
.ys-pgm .fm-btns .btn-wide{min-width:15rem}
.ys-pgm .path-chk{font-size:1rem;font-weight:400;color:#171719}
.ys-pgm .opt-chk{gap:.5rem;font-size:1rem;font-weight:400;color:#171719}
.ys-pgm .file-lb{font-weight:500;color:#5a5c63;font-size:1rem}
.ys-pgm .same-chk{display:inline-flex;align-items:center;gap:.625rem;margin:0 0 1rem;font-size:1.125rem;font-weight:400;color:#171719;line-height:1.5;cursor:pointer}
.ys-pgm .same-chk input{width:1.25rem;height:1.25rem;margin:0;padding:0;flex:none;align-self:center;accent-color:#0B318F}
.ys-pgm .same-chk .same-txt{flex:none;line-height:1.5}
.ys-pgm .same-chk span:not(.same-txt){font-weight:400;color:#878a93;font-size:1rem;line-height:1.5}
@media(max-width:764px){
  .ys-pgm .same-chk{display:flex;flex-wrap:wrap;align-items:center;row-gap:.25rem}
  .ys-pgm .same-chk span:not(.same-txt){flex:1 0 100%;padding-left:1.875rem;box-sizing:border-box}
}
.ys-pgm .addr-cell{display:flex;flex-direction:column;gap:.5rem}
.ys-pgm .addr-cell .zrow{display:flex;gap:.625rem;flex-wrap:wrap;align-items:center}
.ys-pgm .addr-cell .zrow .fm-input{max-width:12.5rem}
.ys-pgm .zbtn{display:inline-flex;align-items:center;justify-content:center;height:3.1875rem;border:1px solid #0B318F;background:#fff;color:#0B318F;font-weight:500;border-radius:.75rem;padding:0 1.375rem;font-size:1rem;cursor:pointer;white-space:nowrap;font-family:inherit}
.ys-pgm .zbtn:hover{background:#0B318F;color:#fff}
.ys-pgm .cf-box{border:1px solid #e1e2e4;border-radius:.75rem;padding:2rem 1.75rem;background:#fff;display:flex;flex-direction:column;gap:.75rem}
.ys-pgm .cf-item{display:flex;align-items:flex-start;gap:.625rem;font-size:1.125rem;color:#171719;line-height:1.5;cursor:pointer}
.ys-pgm .cf-item input{width:1.25rem;height:1.25rem;accent-color:#0B318F;margin-top:.1875rem;flex:0 0 auto}
.ys-pgm .cf-item b{color:#cc1c24;font-weight:700}
.ys-pgm .q-item{margin-bottom:1.75rem}
.ys-pgm .q-item .q{font-size:1.125rem;font-weight:400;color:#171719;margin:0 0 .75rem;line-height:1.5}
.ys-pgm .done2{margin-top:0;background:#f4f4f5;border-radius:1.25rem;padding:4rem 2.5rem;display:flex;flex-direction:column;align-items:center;gap:2.5rem;text-align:center}
.ys-pgm .done2 .d2-ic{width:4.5rem;height:4.5rem;display:block}
.ys-pgm .done2 .d2-ic img{width:4.5rem;height:4.5rem;display:block}
.ys-pgm .d2-msg{font-size:1.5rem;font-weight:700;color:#292a2d;line-height:1.33;letter-spacing:-.01em;margin:0}
.ys-pgm .d2-msg b,.ys-pgm .d2-msg .hl{color:#0B318F;font-weight:700}
.ys-pgm .d2-note{margin:1rem 0 0;font-size:1.125rem;color:#878a93;font-weight:400;line-height:1.5}
.ys-pgm .d2-copy{display:flex;flex-direction:column;align-items:center;gap:1rem}
.ys-pgm .d2-hr{display:none}
.ys-pgm .done2 .fm-btns{margin-top:0}
.ys-pgm .content .fm-desc,.ys-pgm .content .q,.ys-pgm .d2-note,.ys-pgm .tm-body p{margin-bottom:0}
.ys-pgm .tm-dim{background:rgba(17,17,17,.7)}
.ys-pgm .tm-panel{max-width:42.8125rem;border-radius:0;overflow:visible;box-shadow:none;padding:2.5rem 3rem 2.25rem}
.ys-pgm .tm-head{padding:0 0 1.25rem;background:transparent;color:#141414;border-bottom:1px solid #000;gap:1rem}
.ys-pgm .tm-head h3{font-size:1.25rem;font-weight:600;line-height:1.45;color:#141414}
.ys-pgm .tm-close{position:absolute;top:-2.25rem;right:0;background:transparent;border:0;width:1.25rem;height:1.25rem;padding:0;border-radius:0;line-height:0}
.ys-pgm .tm-close img{width:1.25rem;height:1.25rem;display:block}
.ys-pgm .tm-body{padding:1.9375rem 0 0;max-height:42vh;font-size:1rem;line-height:1.5;color:#8e8e8e}
.ys-pgm .tm-body .tm-art{font-size:1.125rem;font-weight:600;color:#000;margin:0 0 1.25rem}
.ys-pgm .tm-body b{color:#000}
.ys-pgm .tm-body .warn{color:#cc1c24;font-weight:400}
.ys-pgm .tm-foot{padding:1.9375rem 0 0;border:0;gap:.75rem}
.ys-pgm .tm-foot .btn{min-width:8.75rem;height:3.375rem;padding:0 1.5rem;font-size:1.125rem;font-weight:500;justify-content:center}
.ys-pgm .tm-foot .btn-ghost{border-color:#aeb0b6;color:#171719}

@media(max-width:768px){
  .ys-pgm .block-dots{width:.3125rem;height:1.125rem}
  .ys-pgm .fm-sec{font-size:1.375rem}
  .ys-pgm .fm-sub{font-size:1rem}
  .ys-pgm .fm-table,
  .ys-pgm .cs-chk,
  .ys-pgm .fm-input,
  .ys-pgm .fm-radio,
  .ys-pgm .txarea,
  .ys-pgm .fm-btns .btn,
  .ys-pgm .same-chk,
  .ys-pgm .cf-item,
  .ys-pgm .q-item .q,
  .ys-pgm .tm-body .tm-art,
  .ys-pgm .tm-foot .btn,
  .ys-pgm .pc-target,
  .ys-pgm .pc-list{font-size:1rem}
  .ys-pgm .fm-table tr{display:flex;align-items:flex-start;gap:.75rem;border-bottom:1px solid #e1e2e4}
  .ys-pgm .fm-table th,.ys-pgm .fm-table td{display:block;width:auto;padding:1.125rem 0;border-bottom:0}
  .ys-pgm .fm-table th{flex:0 0 6.75rem;width:6.75rem;padding-right:0;word-break:keep-all}
  .ys-pgm .fm-table td{flex:1 1 auto;min-width:0}
  .ys-pgm .fm-table tr:has(.fm-input),
  .ys-pgm .fm-table tr:has(.txarea),
  .ys-pgm .fm-table tr:has(input[type=file]),
  .ys-pgm .fm-table tr:has(.dob){flex-wrap:wrap;gap:0}
  .ys-pgm .fm-table tr:has(.fm-input) th,
  .ys-pgm .fm-table tr:has(.txarea) th,
  .ys-pgm .fm-table tr:has(input[type=file]) th,
  .ys-pgm .fm-table tr:has(.dob) th{flex-basis:100%;width:100%;padding-bottom:0;border-bottom:0}
  .ys-pgm .fm-table tr:has(.fm-input) td,
  .ys-pgm .fm-table tr:has(.txarea) td,
  .ys-pgm .fm-table tr:has(input[type=file]) td,
  .ys-pgm .fm-table tr:has(.dob) td{flex-basis:100%;width:100%;padding-top:.5rem}
  .ys-pgm .fm-input,.ys-pgm .fm-input.md{max-width:100%}
  .ys-pgm .dob{display:flex;flex-wrap:wrap;width:100%;gap:.5rem}
  .ys-pgm .dob-item{flex:1 1 calc((100% - 1rem) / 3);min-width:5.5rem;max-width:100%}
  .ys-pgm .dob select,
  .ys-pgm .dob select[name="dob_y"],
  .ys-pgm .dob select[name="part_dob_y"],
  .ys-pgm .dob select[name="dob_m"],
  .ys-pgm .dob select[name="part_dob_m"],
  .ys-pgm .dob select[name="dob_d"],
  .ys-pgm .dob select[name="part_dob_d"]{
    width:100%;min-width:0;max-width:100%;flex:none;padding:.75rem .5rem .75rem .625rem;font-size:1rem
  }
  .ys-pgm .addr-cell .zrow{flex-wrap:nowrap;width:100%}
  .ys-pgm .addr-cell .zrow .fm-input{flex:1 1 auto;min-width:0;width:auto;max-width:none}
  .ys-pgm .zbtn{flex:none;padding:0 .75rem;font-size:.875rem;height:3.1875rem}
  .ys-pgm .fm-btns .btn,.ys-pgm .fm-btns .btn-wide{min-width:0;flex:1 1 8.75rem}
  .ys-pgm .done2{padding:2.5rem 1.25rem}
  .ys-pgm .d2-msg{font-size:1.25rem}
  .ys-pgm .d2-note{font-size:.9375rem}
  .ys-pgm .done2 .fm-btns .btn,
  .ys-pgm .done2 .fm-btns .btn-wide{font-size:.875rem;padding:0 .75rem;min-width:0;flex:1 1 0;height:2.75rem;white-space:normal}
  .ys-pgm .tm-panel{padding:2rem 1.25rem 1.5rem}
  .ys-pgm .cs-bar{flex-direction:column;align-items:flex-start}
}
