/* CACTS Admissions Portal — v1.9.51 3D dashboard interface (appearance only; forms, links and logic unchanged). */
.cacsp-applicant-layout.cacsp-ap{--n:#05402a;--n2:#0a5a38;--g:#f6b61f;--g2:#e58f06;--ink:#154c31;--mu:#566c84;--ln:#dcf1e6;
display:grid;grid-template-columns:288px minmax(0,1fr);gap:26px;align-items:start;max-width:1480px;margin:0 auto;padding:clamp(10px,2vw,24px);
font-family:Inter,"Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif;font-size:16px;line-height:1.6;color:var(--ink);
background:radial-gradient(1200px 500px at 85% -10%,#dbf9ea 0,transparent 60%),linear-gradient(180deg,#eefaf4,#f8fafd);border-radius:28px}
.cacsp-ap *{box-sizing:border-box}
.cacsp-ap .cacsp-applicant-side{position:sticky;top:16px;display:flex;flex-direction:column;gap:16px;padding:20px 16px;border-radius:26px;color:#fff;height:max-content;
background:linear-gradient(160deg,#17884f 0,#05402a 55%,#07361f 100%);box-shadow:0 1px 0 rgba(255,255,255,.25) inset,0 6px 0 #032b1c,0 28px 40px -16px rgba(3,43,28,.6)}
.cacsp-ap .cacsp-ap-brand{display:flex;align-items:center;gap:12px}
.cacsp-ap .cacsp-ap-brand b{display:block;font-size:20px;letter-spacing:.06em;color:#fff}.cacsp-ap .cacsp-ap-brand small{color:#f6c453;font-weight:600}
.cacsp-ap .cacsp-ap-logo,.cacsp-ap .cacsp-ap-toplogo,.cacsp-ap .cacsp-ap-orb{display:grid;place-items:center;background:#fff;overflow:hidden}
.cacsp-ap .cacsp-ap-logo{width:54px;height:54px;border-radius:16px;padding:5px;box-shadow:0 3px 0 #c9e4d6,0 10px 16px -6px rgba(0,0,0,.4)}
.cacsp-ap img{max-width:100%;max-height:100%;object-fit:contain;display:block}
.cacsp-ap .cacsp-ap-user{display:grid;justify-items:center;text-align:center;gap:2px;padding:16px 10px;border-radius:20px;background:rgba(255,255,255,.09);box-shadow:0 1px 0 rgba(255,255,255,.18) inset,0 4px 0 rgba(0,0,0,.18)}
.cacsp-ap .cacsp-ap-user b{color:#fff;font-size:16px;word-break:break-word}.cacsp-ap .cacsp-ap-user small{color:#c8ead9}
.cacsp-ap .cacsp-ap-avatar{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;font-size:26px;font-weight:800;color:#05402a;margin-bottom:6px;background:linear-gradient(150deg,#ffd45e,#f6b61f);box-shadow:0 1px 0 #fff8 inset,0 4px 0 #b97a05,0 12px 16px -6px rgba(0,0,0,.45)}
.cacsp-ap .cacsp-applicant-side nav{display:grid;gap:8px}
.cacsp-ap .cacsp-applicant-side nav a{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:15px;color:#e6f8ef;text-decoration:none;font-weight:600;font-size:15px;background:rgba(255,255,255,.05);transition:transform .15s,background .15s}
.cacsp-ap .cacsp-applicant-side nav a .ico{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:rgba(255,255,255,.12);font-size:16px;flex:none}
.cacsp-ap .cacsp-applicant-side nav a:hover{background:rgba(255,255,255,.14);transform:translateX(3px);color:#fff}
.cacsp-ap .cacsp-applicant-side nav a.active{color:#05402a;background:linear-gradient(150deg,#ffd45e,#f6b61f);box-shadow:0 1px 0 #fff8 inset,0 4px 0 #b97a05,0 12px 16px -8px rgba(0,0,0,.5)}
.cacsp-ap .cacsp-applicant-side nav a.active .ico{background:rgba(5,64,42,.14)}
.cacsp-ap .cacsp-applicant-side nav a.cacsp-ap-out{margin-top:6px;background:rgba(179,38,30,.28)}
.cacsp-ap .cacsp-ap-close,.cacsp-ap .cacsp-ap-overlay,.cacsp-ap .cacsp-ap-toggle{display:none}
.cacsp-ap .cacsp-applicant-main{min-width:0;padding:0;background:none;box-shadow:none;border-radius:0}
.cacsp-ap .cacsp-ap-top{display:flex;align-items:center;gap:14px;padding:14px 18px;margin-bottom:22px;border-radius:24px;background:#fff;box-shadow:0 1px 0 #fff inset,0 4px 0 #d3ebdd,0 20px 30px -16px rgba(5,64,42,.3)}
.cacsp-ap .cacsp-ap-toplogo{width:52px;height:52px;border-radius:14px;padding:4px;box-shadow:0 3px 0 #d3ebdd,0 8px 12px -6px rgba(5,64,42,.3)}
.cacsp-ap .cacsp-ap-top>div{flex:1;min-width:0}.cacsp-ap .cacsp-ap-top small{display:block;color:#8a5a00;font-weight:800;font-size:11.5px;letter-spacing:.09em}
.cacsp-ap .cacsp-ap-top h1{margin:0;font-size:clamp(20px,2.4vw,28px);line-height:1.2;color:var(--n);font-weight:800}
.cacsp-ap .cacsp-ap-pill{padding:8px 16px;border-radius:999px;font-weight:700;font-size:13px;color:#0d6b4a;background:#e3f6ee;box-shadow:0 3px 0 #bfe5d3;white-space:nowrap}
.cacsp-ap .cacsp-applicant-main>h2,.cacsp-ap .cacsp-applicant-main>h3{color:var(--n);font-weight:800}
.cacsp-ap .cacsp-applicant-main>h2{font-size:clamp(22px,2.6vw,30px);margin:0 0 6px}
.cacsp-ap .cacsp-applicant-main>*:not(.cacsp-ap-top):not(h2):not(.cacsp-applicant-cards):not(.cacsp-ap-welcome):not(.cacsp-applicant-alert):not(script){position:relative}
.cacsp-ap .cacsp-ap-welcome{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:30px;margin-bottom:22px;border-radius:28px;color:#fff;overflow:hidden;background:radial-gradient(500px 220px at 90% 0,rgba(246,182,31,.35),transparent 70%),linear-gradient(135deg,#0a6b43,#05402a 60%,#0a5a38);box-shadow:0 1px 0 rgba(255,255,255,.25) inset,0 6px 0 #032b1c,0 28px 38px -18px rgba(3,43,28,.65)}
.cacsp-ap .cacsp-ap-welcome small{color:#f6c453;font-weight:800;letter-spacing:.1em;font-size:12px}
.cacsp-ap .cacsp-ap-welcome h2{margin:4px 0 6px;color:#fff;font-size:clamp(22px,3vw,32px);font-weight:800;line-height:1.2}.cacsp-ap .cacsp-ap-welcome p{margin:0;color:#d6f2e4;max-width:520px}
.cacsp-ap .cacsp-ap-orb{flex:none;width:96px;height:96px;border-radius:50%;padding:10px;box-shadow:0 0 0 8px rgba(255,255,255,.14),0 8px 0 #c9e4d6,0 20px 28px -8px rgba(0,0,0,.5)}
.cacsp-ap .cacsp-applicant-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:22px}
.cacsp-ap .cacsp-applicant-cards article{position:relative;padding:20px;border-radius:22px;background:#fff;box-shadow:0 1px 0 #fff inset,0 4px 0 #d3ebdd,0 18px 26px -14px rgba(5,64,42,.3)}
.cacsp-ap .cacsp-applicant-cards small{color:var(--mu);font-weight:600}.cacsp-ap .cacsp-applicant-cards strong{color:var(--n);font-size:20px;margin-top:2px;word-break:break-word}
.cacsp-ap .cacsp-ap-cico{display:grid;place-items:center;width:42px;height:42px;margin-bottom:10px;border-radius:13px;font-size:19px;color:#05402a;background:linear-gradient(150deg,#ffd45e,#f6b61f);box-shadow:0 1px 0 #fff8 inset,0 3px 0 #b97a05}
.cacsp-ap .cacsp-applicant-main>p,.cacsp-ap .cacsp-applicant-main>form,.cacsp-ap .cacsp-applicant-main>.cacsp-applicant-bank,.cacsp-ap .cacsp-applicant-main>ul,.cacsp-ap .cacsp-applicant-main>h3,.cacsp-ap .cacsp-pe-card{background:#fff}
.cacsp-ap .cacsp-applicant-main>form,.cacsp-ap .cacsp-applicant-main>.cacsp-applicant-bank,.cacsp-ap .cacsp-pe-card{padding:24px;margin:0 0 20px;border-radius:24px;box-shadow:0 1px 0 #fff inset,0 4px 0 #d3ebdd,0 18px 28px -16px rgba(5,64,42,.3)}
.cacsp-ap .cacsp-applicant-main>p{padding:0;background:none}
.cacsp-ap .cacsp-applicant-main label{display:block;margin:14px 0;font-weight:700;color:var(--n)}
.cacsp-ap .cacsp-applicant-main input,.cacsp-ap .cacsp-applicant-main select{display:block;width:100%;min-height:48px;padding:12px 14px;margin-top:6px;border:1px solid #cfe8dc;border-radius:14px;background:#f7fafd;box-shadow:inset 0 2px 4px rgba(5,64,42,.07);font:inherit;color:var(--ink)}
.cacsp-ap .cacsp-applicant-main input:focus,.cacsp-ap .cacsp-applicant-main select:focus{outline:0;border-color:#12924f;box-shadow:0 0 0 3px rgba(18,146,79,.2),inset 0 2px 4px rgba(5,64,42,.07)}
.cacsp-ap .cacsp-applicant-main button[type=submit],.cacsp-ap .cacsp-applicant-main button:not(.cacsp-ap-toggle):not(.cacsp-ap-close){min-height:48px;padding:12px 26px;border:0;border-radius:15px;cursor:pointer;font:inherit;font-weight:800;color:#fff;background:linear-gradient(150deg,#0e7a48,#05402a);box-shadow:0 1px 0 rgba(255,255,255,.3) inset,0 4px 0 #032b1c,0 12px 18px -6px rgba(5,64,42,.45);transition:transform .12s,box-shadow .12s}
.cacsp-ap .cacsp-applicant-main button:active{transform:translateY(3px);box-shadow:0 1px 0 #032b1c,0 4px 8px -4px rgba(5,64,42,.45)}
.cacsp-ap .cacsp-applicant-bank{background:linear-gradient(150deg,#fff,#f2fbf6)}
.cacsp-ap .cacsp-applicant-alert{padding:16px 18px;margin-bottom:20px;border-radius:18px;background:#eaf6ed;border-left:5px solid #328651;box-shadow:0 3px 0 #cfe6d6}
.cacsp-ap .cacsp-pe-list{margin:0;padding-left:20px}
@media(max-width:900px){
.cacsp-applicant-layout.cacsp-ap{grid-template-columns:minmax(0,1fr);gap:0;padding:10px;border-radius:20px}
.cacsp-ap .cacsp-applicant-side{position:fixed;z-index:2147000000;inset:0 auto 0 0;width:min(320px,86vw);border-radius:0 26px 26px 0;overflow-y:auto;transform:translateX(-105%);visibility:hidden}
.cacsp-ap .cacsp-applicant-side.is-open{transform:none;visibility:visible;transition:transform .28s cubic-bezier(.2,.8,.2,1);box-shadow:12px 0 40px rgba(4,34,19,.5)}
.cacsp-ap .cacsp-ap-close{display:grid;place-items:center;align-self:flex-end;width:40px;height:40px;border:0;border-radius:12px;font-size:18px;color:#fff;cursor:pointer;background:rgba(255,255,255,.14)}
.cacsp-ap .cacsp-ap-overlay{display:block;position:fixed;inset:0;z-index:2146999999;background:rgba(5,36,21,.58);opacity:0;pointer-events:none;transition:opacity .25s}
.cacsp-ap .cacsp-applicant-side.is-open+.cacsp-ap-overlay{opacity:1;pointer-events:auto}
.cacsp-ap .cacsp-ap-toggle{display:grid;place-items:center;flex:none;width:48px;height:48px;border:0;border-radius:15px;font-size:22px;color:#fff;cursor:pointer;background:linear-gradient(150deg,#0e7a48,#05402a);box-shadow:0 1px 0 rgba(255,255,255,.3) inset,0 4px 0 #032b1c}
.cacsp-ap .cacsp-ap-top{padding:10px 12px;gap:10px;border-radius:20px}.cacsp-ap .cacsp-ap-toplogo{width:44px;height:44px}.cacsp-ap .cacsp-ap-top small{font-size:9.5px}.cacsp-ap .cacsp-ap-pill{display:none}
.cacsp-ap .cacsp-applicant-cards{grid-template-columns:1fr}
.cacsp-ap .cacsp-ap-welcome{padding:22px;border-radius:22px}.cacsp-ap .cacsp-ap-orb{width:68px;height:68px}
.cacsp-ap .cacsp-applicant-main>form,.cacsp-ap .cacsp-applicant-main>.cacsp-applicant-bank,.cacsp-ap .cacsp-pe-card{padding:18px;border-radius:20px}}
