 :root{--navy:#072f55;--deep:#052541;--blue:#0874c9;--green:#168351;--saffron:#ec921f;--ink:#0c2f50;--muted:#60768e;--line:#d8e3ec;--bg:#f4f7fa}
    *{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:14px "Segoe UI",Arial,sans-serif}button,input{font:inherit}button{color:inherit;cursor:pointer}.gov{height:34px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:var(--deep);border-top:3px solid var(--saffron);color:#fff;font-size:12px}.gov div{display:flex;gap:11px;align-items:center}.gov button{height:31px;border:0;border-left:1px solid #31506d;background:none;color:#fff;font-size:11px}.header{height:76px;padding:0 5%;display:flex;align-items:center;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:9;box-shadow:0 3px 15px #0525410b}.brand{display:flex;align-items:center;gap:13px;min-width:360px}.logo{width:58px;height:58px;object-fit:contain;display:block}.brand b{font-size:17px;letter-spacing:.06em}.brand em{font-style:normal;color:var(--blue)}.brand small{display:block;margin-top:3px;color:var(--muted);font-size:9px;letter-spacing:.14em}.nav{display:flex;align-self:stretch;margin-left:auto}.nav a{display:grid;place-items:center;min-width:105px;padding:0 12px;color:#405d77;text-decoration:none;font-size:13px;font-weight:600;border-bottom:3px solid transparent}.nav a:first-child{color:var(--blue);background:#f3f9fd;border-color:var(--blue)}.person{display:flex;align-items:center;gap:9px;margin-left:20px}.avatar{width:39px;height:39px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#1185d0,#075690);color:#fff;font-weight:800;font-size:12px}.person small{display:block;color:var(--muted);font-size:10px}.hero{min-height:238px;padding:38px 5%;display:grid;grid-template-columns:1.2fr .8fr;gap:8%;align-items:center;color:#fff;background:radial-gradient(circle at 80% 15%,#1989ce59,transparent 28%),linear-gradient(117deg,#062b4e,#0b4775 70%,#076b8b)}.eyebrow{margin:0 0 9px;color:#4bb3f3;font-size:10px;font-weight:800;letter-spacing:.17em}.hero h1{margin:0;font:500 38px Georgia}.hero h1 span{color:#75cbff}.hero-copy>p:not(.eyebrow){max-width:650px;color:#d7e5f1;line-height:1.7}.session{display:flex;gap:28px;color:#bed1e1;font-size:10px}.session i{display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:#45d18c}.search{padding:20px;background:#fff;border-top:3px solid var(--saffron);border-radius:10px;color:var(--ink);box-shadow:0 16px 40px #021b3238}.search label{display:block;font-size:12px;font-weight:700;margin-bottom:9px}.search div{height:48px;display:flex;align-items:center;gap:10px;padding:0 12px;border:1px solid #bdd2e2;border-radius:6px}.search input{width:100%;border:0;outline:0;font-size:12px}.search small{display:block;margin-top:9px;color:var(--muted);font-size:9px}.shell{width:min(90%,1460px);margin:auto;padding:34px 0 48px}.title{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:17px}.title h2{margin:0;font:600 23px Georgia}.title button{border:0;background:none;color:var(--blue);font-size:11px;font-weight:700}.quick{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.quick button,.app{min-height:82px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:13px;background:#fff;border:1px solid var(--line);border-radius:9px;text-align:left;box-shadow:0 4px 14px #0e335209;transition:.2s}.quick button:hover,.app:hover{transform:translateY(-2px);border-color:#78bce8;box-shadow:0 10px 24px #0e4c7819}.icon{width:42px;height:42px;display:grid;place-items:center;border:1px solid #b9d8e9;border-radius:9px;background:#eaf4f9;color:#08669d;font-size:11px;font-weight:800}.quick b,.quick small,.app b,.app small,.app em{display:block}.quick b,.app b{font-size:13px}.quick small,.app small{margin-top:4px;color:var(--muted);font-size:9px}.launch{color:var(--blue);font-size:16px}.layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;margin-top:38px;align-items:start}.filters{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:15px}.filters button{padding:7px 13px;border:1px solid var(--line);border-radius:18px;background:#fff;font-size:10px}.filters button.active{background:var(--navy);border-color:var(--navy);color:#fff}.apps{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.app{min-height:102px}.app em{margin-top:5px;color:#c86534;font-size:10px;font-style:normal}.app.lock{opacity:.55;cursor:not-allowed;background:#f8fafb}.restricted{padding:4px 6px;border-radius:3px;background:#e8edf1;color:#54677a;font-size:8px;text-transform:uppercase}aside{display:grid;gap:14px}.side{padding:18px;background:#fff;border:1px solid var(--line);border-radius:9px}.side h3{margin:3px 0 12px;font-size:15px}.side article{padding:12px 0;border-top:1px solid #ebf0f4}.side time{color:#b36313;font-size:8px;font-weight:800}.side article b{display:block;margin:5px 0;font-size:11px}.side article p{margin:0;color:var(--muted);font-size:9px;line-height:1.55}.score{padding:10px 12px;background:#ecf8f2;border-left:3px solid var(--green);color:#137749}.side ul{padding:0;list-style:none;color:#4c6377;font-size:10px;line-height:2.3}.side li::before{content:"✓";margin-right:7px;color:var(--green)}.help{padding:15px;display:flex;align-items:center;justify-content:space-between;border-radius:9px;background:linear-gradient(115deg,#07335b,#0a5b83);color:#fff}.help small{display:block;color:#c9ddeb;font-size:8px;margin-top:4px}.help button{padding:8px;border:0;border-radius:5px;background:#fff;color:#07598b;font-size:8px;font-weight:800}footer{min-height:86px;padding:18px 5%;display:grid;grid-template-columns:1.2fr 1fr auto;align-items:center;gap:20px;background:var(--deep);border-top:3px solid var(--green);color:#d8e5ef;font-size:9px}footer b,footer span{display:block}footer b{margin-bottom:4px;color:#fff;font-size:12px}footer nav{display:flex;gap:18px}footer a{color:#d8e5ef;text-decoration:none}
    @media(max-width:1050px){.nav{display:none}.quick{grid-template-columns:repeat(3,1fr)}.layout{grid-template-columns:1fr}.apps{grid-template-columns:repeat(3,1fr)}aside{grid-template-columns:1fr 1fr}.help{grid-column:span 2}}
    @media(max-width:700px){.header,.gov{padding-left:16px;padding-right:16px}.header{height:65px}.brand{min-width:0}.logo{width:48px;height:48px}.brand b{font-size:13px}.person div:last-child{display:none}.hero{padding:28px 20px;grid-template-columns:1fr;gap:24px}.hero h1{font-size:30px}.session{flex-direction:column;gap:7px}.shell{width:auto;margin:0 16px}.quick,.apps{grid-template-columns:1fr 1fr}aside{grid-template-columns:1fr}.help{grid-column:auto}footer{grid-template-columns:1fr;text-align:center}footer nav{justify-content:center}}
    @media(max-width:460px){.quick,.apps{grid-template-columns:1fr}.brand small{display:none}}
    /* Government colour enhancement: navy structure with restrained saffron and green accents. */
    .shell{position:relative}.shell:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:3px;border-radius:4px;background:linear-gradient(90deg,#f29a2e 0 33.33%,#fff 33.33% 66.66%,#168351 66.66%);box-shadow:0 1px 0 #dbe4ec}
    .quick button{border-color:color-mix(in srgb,var(--module) 22%,#d8e3ec);border-bottom:3px solid var(--module);border-radius:10px;background:linear-gradient(135deg,color-mix(in srgb,var(--module) 7%,white),#fff 58%);box-shadow:0 6px 18px #0e33520f;position:relative;overflow:hidden}.quick button:after{content:"";position:absolute;width:54px;height:54px;border-radius:50%;right:-27px;top:-27px;background:color-mix(in srgb,var(--module) 12%,transparent)}
    #applications{padding:22px;border:1px solid #d7e3ec;border-top:4px solid var(--navy);border-radius:12px;background:linear-gradient(180deg,#f9fcff,#f4f8fb);box-shadow:0 10px 30px #062b4e0f}
    .filters button{padding:8px 14px;border-color:#c9dae7;box-shadow:0 2px 5px #072f550a}.filters button.active,.filters button:hover{background:linear-gradient(135deg,#07365f,#0a5b8f);border-color:var(--navy);color:#fff;box-shadow:0 5px 12px #072f552d}
    .app{min-height:108px;border-color:color-mix(in srgb,var(--module) 20%,#d8e3ec);border-left:5px solid var(--module);border-radius:10px;background:linear-gradient(115deg,color-mix(in srgb,var(--module) 7%,white),#fff 48%);box-shadow:0 5px 14px #072f550e;position:relative;overflow:hidden}.app:before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,#f49a28 0 32%,#f7f9fb 32% 66%,#14834f 66%);opacity:.85}.app:after{content:"";position:absolute;width:70px;height:70px;border-radius:50%;right:-40px;bottom:-43px;background:color-mix(in srgb,var(--module) 9%,transparent)}
    .side{border-color:#ccdce8;border-radius:11px;box-shadow:0 8px 24px #072f5511;overflow:hidden}.side:first-child{border-top:4px solid var(--saffron);background:linear-gradient(180deg,#fffaf1,#fff 24%)}.side:nth-child(2){border-top:4px solid var(--green);background:linear-gradient(180deg,#f1fbf6,#fff 24%)}.score{background:linear-gradient(90deg,#dff4e9,#eef9f3);border:1px solid #b8dfcb;border-left:4px solid var(--green);border-radius:0 6px 6px 0}.help{border-bottom:4px solid var(--saffron);box-shadow:0 8px 24px #072f5526}
    /* Final institutional palette: government navy, official blue, slate and antique gold. */
    .shell:before{height:2px;background:linear-gradient(90deg,#0a3156,#2477ad 72%,#b8944f)}
    .quick button{border:1px solid #c9d9e6;border-radius:10px;border-bottom:1px solid #c9d9e6;background:linear-gradient(135deg,#f1f7fb,#fff 62%);box-shadow:inset 4px 0 #1f5f91,0 6px 18px #0e33520f}.quick button:after{right:-30px;top:-30px;background:#1e609117}.quick button:hover,.app:hover{border-color:#6ba3ca;box-shadow:inset 4px 0 #1f5f91,0 13px 28px #0e4c7824}
    .icon{background:linear-gradient(145deg,#e4eef6,#f8fbfd);color:#0b568d;border-color:#b9d2e3;box-shadow:inset 0 0 0 1px #fff}
    .app{border:1px solid #ccdbe7;border-left:5px solid #174f7e;background:linear-gradient(115deg,#f3f8fb,#fff 48%);box-shadow:0 5px 14px #072f550e}.app:before{left:0;right:auto;top:17px;width:5px;height:30px;background:#b8944f;border-radius:0 4px 4px 0;opacity:1}.app:after{right:-42px;bottom:-45px;background:#1e609111}
    .side:first-child{border-top-color:#b8944f;background:linear-gradient(180deg,#fbf8f1,#fff 24%)}.side:nth-child(2){border-top-color:#1f648d;background:linear-gradient(180deg,#f1f7fb,#fff 24%)}.score{background:linear-gradient(90deg,#e6f0f7,#f3f8fb);border-color:#c4d9e7;border-left-color:#1f648d;color:#104f79}.side li:before{color:#1f648d}.help{border-bottom-color:#b8944f;background:linear-gradient(115deg,#062d50,#0a5e8b)}
    .search-strip{padding:20px 5%;background:linear-gradient(100deg,#082f54,#0b547e);border-bottom:1px solid #2d7099}.search-strip .search{width:min(82%,980px);margin:auto;padding:14px 18px;display:grid;grid-template-columns:220px minmax(0,1fr);gap:8px 18px;align-items:center;border:0;border-left:4px solid #b8944f;border-radius:8px}.search-strip .search label{margin:0;display:flex;align-items:center;gap:10px}.search-strip .search>div{grid-column:2;grid-row:1 / span 2}.search-strip .search small{margin:0}.search-badge{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#e8f1f7;color:#0d5b8e}
    .layout{grid-template-columns:minmax(0,1fr) 360px;gap:20px}.apps{grid-template-columns:repeat(2,minmax(0,1fr))}.info-grid{display:grid;grid-template-columns:1fr;gap:14px;margin:0}.info-grid .side{min-height:0}.notice-window{height:176px;overflow:hidden;position:relative;border-top:1px solid #e6edf2}.notice-window:after{content:"";position:absolute;inset:auto 0 0;height:28px;background:linear-gradient(transparent,#fff)}.notice-track{animation:noticeScroll 18s linear infinite}.notice-track:hover{animation-play-state:paused}@keyframes noticeScroll{0%,12%{transform:translateY(0)}38%,50%{transform:translateY(-68px)}76%,88%{transform:translateY(-136px)}100%{transform:translateY(-204px)}}
    .image-side{border-top-color:#174f7e!important;background:linear-gradient(180deg,#f1f7fb,#fff 24%)!important}.image-slider{height:210px;position:relative;overflow:hidden;border-radius:7px;background:#082d4d}.slide{position:absolute;inset:0;margin:0;opacity:0;animation:imageFade 15s infinite}.slide.s2{animation-delay:5s}.slide.s3{animation-delay:10s}.slide img{width:100%;height:100%;object-fit:cover}.slide:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#031e34e8)}.slide figcaption{position:absolute;z-index:2;left:16px;right:16px;bottom:16px;color:#fff}.slide figcaption b,.slide figcaption span{display:block}.slide figcaption b{font:600 18px Georgia}.slide figcaption span{margin-top:4px;color:#d4e3ed;font-size:9px}@keyframes imageFade{0%{opacity:0;transform:scale(1.03)}7%,30%{opacity:1;transform:scale(1)}36%,100%{opacity:0}}
    .help{margin-top:18px;min-height:62px}.shell{padding-bottom:30px}footer{min-height:58px;padding:9px 5%;font-size:8px;border-top-color:#1f648d}
    @media(max-width:1050px){.layout{grid-template-columns:1fr}.info-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.image-side{grid-column:auto}.search-strip .search{width:min(90%,900px)}}@media(max-width:700px){.search-strip{padding:14px 16px}.search-strip .search{width:100%;grid-template-columns:1fr}.search-strip .search>div{grid-column:1;grid-row:auto}.apps{grid-template-columns:1fr 1fr}.info-grid{grid-template-columns:1fr}.image-side{grid-column:auto}footer{padding:10px 16px}}@media(max-width:460px){.apps{grid-template-columns:1fr}}

    /* Full-page institutional background and module colour upgrade — visual layer only. */
    html{
      min-height:100%;
      background:#173f59;
    }
    body{
      min-height:100vh;
      display:flex;
      flex-direction:column;
      background:
        radial-gradient(circle at 8% 18%,rgba(59,154,190,.27),transparent 29rem),
        radial-gradient(circle at 94% 39%,rgba(26,118,139,.24),transparent 30rem),
        radial-gradient(circle at 54% 92%,rgba(184,148,79,.10),transparent 26rem),
        linear-gradient(145deg,#234f69 0%,#386b80 43%,#1c4b62 100%);
      background-attachment:fixed;
      background-repeat:no-repeat;
      background-size:cover;
    }
    .header{
      background:rgba(255,255,255,.96);
      backdrop-filter:blur(12px);
      box-shadow:0 8px 28px rgba(5,37,65,.10);
    }
    .search-strip{
      background:
        radial-gradient(circle at 84% 20%,rgba(62,164,198,.28),transparent 18rem),
        linear-gradient(105deg,#062b4d 0%,#0a4f77 58%,#116b83 100%);
      box-shadow:inset 0 -1px rgba(255,255,255,.12),0 12px 30px rgba(5,37,65,.14);
    }
    .search-strip .search{
      background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(239,247,251,.98));
      border-left-color:#c3a15d;
      box-shadow:0 16px 38px rgba(2,27,50,.28);
    }
    .shell{
      flex:1 0 auto;
      width:min(calc(100% - 32px),1800px);
      margin:22px auto;
      padding:28px;
      border:1px solid rgba(160,187,204,.55);
      border-radius:18px;
      background:
        linear-gradient(145deg,rgba(242,249,252,.94),rgba(218,235,243,.92));
      box-shadow:0 24px 70px rgba(1,24,42,.30),inset 0 1px rgba(255,255,255,.85);
      backdrop-filter:blur(12px);
    }
    .shell:before{
      left:28px;
      width:calc(100% - 56px);
      background:linear-gradient(90deg,#0a3156,#2b87b3 72%,#c3a15d);
    }
    .quick button{
      border-color:#bdd3e1;
      background:
        linear-gradient(135deg,rgba(226,241,249,.96),rgba(255,255,255,.98) 68%);
      box-shadow:inset 4px 0 #176997,0 8px 22px rgba(7,47,85,.11);
    }
    .quick button:nth-child(even){
      background:linear-gradient(135deg,rgba(230,242,244,.98),#fff 68%);
      box-shadow:inset 4px 0 #267c82,0 8px 22px rgba(7,47,85,.11);
    }
    #applications{
      border-color:#b9cedc;
      background:
        radial-gradient(circle at 96% 0,rgba(34,120,163,.10),transparent 20rem),
        linear-gradient(155deg,rgba(248,252,254,.98),rgba(229,240,247,.96));
      box-shadow:0 18px 42px rgba(6,43,78,.12);
    }
    .app{
      border-color:#bfd2df;
      background:linear-gradient(120deg,#eaf4f9 0%,#fff 62%);
      box-shadow:0 7px 20px rgba(7,47,85,.10);
    }
    .app:nth-child(4n+2),.app:nth-child(4n+3){
      background:linear-gradient(120deg,#edf5f4 0%,#fff 62%);
    }
    .app:hover{
      background:linear-gradient(120deg,#deeff8,#fff 68%);
    }
    .icon{
      background:linear-gradient(145deg,#dcecf5,#fff);
      border-color:#a9cada;
      box-shadow:0 5px 12px rgba(7,79,122,.10),inset 0 0 0 1px #fff;
    }
    .side{
      border-color:#bcd0dd;
      box-shadow:0 13px 32px rgba(7,47,85,.12);
    }
    .side:first-child{background:linear-gradient(155deg,#f8f2e7,#fff 34%)}
    .side:nth-child(2){background:linear-gradient(155deg,#e8f3f8,#fff 34%)}
    .image-side{background:linear-gradient(155deg,#e7f1f7,#fff 34%)!important}
    .help{
      background:
        radial-gradient(circle at 88% 20%,rgba(66,172,190,.30),transparent 13rem),
        linear-gradient(115deg,#062d50,#0b6484);
      box-shadow:0 12px 28px rgba(5,47,85,.22);
    }
    @media(max-width:700px){
      .shell{width:calc(100% - 20px);margin:12px 10px;padding:22px 14px;border-radius:14px}
      .shell:before{left:14px;width:calc(100% - 28px)}
    }

.form-card {
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.06);
    overflow: hidden;
}

.form-header {
    padding: 20px 24px;
    border-bottom: 1px solid #e5e7eb;
    background: #f8fafc;
}

.form-header h4 {
    margin: 0;
    font-size: 20px;
    font-weight: 600;
    color: #1f2937;
}

.form-header p {
    margin: 4px 0 0;
    font-size: 13px;
    color: #6b7280;
}

#applicationForm {
    padding: 24px;
}

.form-label {
    font-size: 14px;
    font-weight: 500;
    color: #374151;
    margin-bottom: 6px;
}

.form-control,
.form-select {
    min-height: 44px;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    font-size: 14px;
}

textarea.form-control {
    min-height: 100px;
}

.form-control:focus,
.form-select:focus {
    border-color: #0d6efd;
    box-shadow: 0 0 0 3px rgba(13, 110, 253, 0.10);
}

.form-actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    padding-top: 10px;
}

.form-actions .btn {
    min-width: 100px;
    border-radius: 8px;
}

@media (max-width: 767px) {
    .shell {
        padding: 10px;
    }

    #applicationForm {
        padding: 16px;
    }

    .form-header {
        padding: 16px;
    }

    .form-actions {
        flex-direction: column-reverse;
    }

    .form-actions .btn {
        width: 100%;
    }
}
fieldset {
    border: 1px solid #b9cedc !important;
    border-radius: 10px;
    padding: 20px;
    margin: 0 0 20px;
    background: #fff;
    margin-top: 35px !important;

}

legend {
    max-width: 40%;
    padding: 2px 12px !important;
    margin-top: -20px;
    margin-left: 10px;
    font-size: 15px;
    font-weight: 600;
    color: #2563eb;
    background: #fff;
    border-radius: 6px;
      border: 1px solid #b9cedc !important;

}
