*{box-sizing:border-box;margin:0;padding:0}body{min-height:100vh;font-family:Nunito,Arial,sans-serif;background:#c9d9ef;color:#143158}.stage{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:52px}.browser-frame{width:min(1148px,100%);height:760px;background:#e9f0fb;border:10px solid #265a9b;border-radius:25px;box-shadow:0 22px 50px rgba(16,61,112,.26);overflow:hidden}.browser-bar{height:45px;background:linear-gradient(180deg,#4a89d3,#2f66ad);display:flex;align-items:center;padding:0 20px;gap:22px}.window-dots{display:flex;gap:9px}.dot{width:15px;height:15px;border-radius:50%;display:block;box-shadow:inset 0 -2px 3px rgba(0,0,0,.13)}.red{background:#ff6d6d}.yellow{background:#ffd54f}.green{background:#7fd46f}.address-pill{height:22px;flex:1;border-radius:999px;background:rgba(255,255,255,.22);display:flex;align-items:center;padding-left:18px;gap:12px;max-width:930px}.address-pill span{width:14px;height:14px;border-radius:50%;background:rgba(255,255,255,.15)}.browser-actions{display:flex;gap:13px;margin-left:auto}.browser-actions span{width:10px;height:10px;border-radius:50%;background:#d8e8fb}.app-shell{height:calc(100% - 45px);display:grid;grid-template-columns:162px 1fr;background:#eef4fd}.sidebar{background:linear-gradient(180deg,#3175c9,#2a67bd);padding:18px 16px 22px;position:relative;color:#fff}.student-badge{position:relative;display:grid;place-items:center;background:linear-gradient(145deg,#f9fbff,#dcecff);border-radius:50%;box-shadow:0 8px 18px rgba(13,67,123,.2);overflow:hidden}.avatar-large{width:72px;height:72px;margin:0 auto 22px}.avatar-small{width:58px;height:58px}.avatar-tiny{width:48px;height:48px;box-shadow:none}.cap{position:absolute;top:15%;width:54%;height:21%;background:#164c8f;clip-path:polygon(50% 0,100% 34%,50% 70%,0 34%)}.cap:after{content:"";position:absolute;right:-7px;top:10px;width:22px;height:4px;background:#f2bd43;transform:rotate(32deg)}.face{position:absolute;top:35%;width:34%;height:34%;background:#ffd0a6;border-radius:45%}.tie{position:absolute;bottom:12%;width:42%;height:26%;background:#fff;border-radius:50% 50% 0 0}.tie:after{content:"";position:absolute;left:43%;top:18%;width:13%;height:62%;background:#1f70b7}.side-menu{display:flex;flex-direction:column;gap:8px}.menu-item{height:42px;display:flex;align-items:center;gap:12px;padding:0 11px;color:#eef7ff;text-decoration:none;font-size:14px;font-weight:700}.menu-item i{width:18px;font-size:17px}.menu-item.active{background:#eff6ff;color:#17375e;border-radius:0 22px 22px 0;margin-left:-16px;padding-left:27px}.menu-item:not(.active):hover{background:rgba(255,255,255,.12);border-radius:12px}.logout{position:absolute;left:20px;right:20px;bottom:24px;border-top:1px solid rgba(255,255,255,.16);padding-top:20px;color:#fff;text-decoration:none;display:flex;gap:10px;align-items:center;font-weight:700}.workspace{min-width:0;background:#f3f7fe}.top-header{height:88px;background:rgba(255,255,255,.92);display:flex;align-items:center;justify-content:space-between;padding:0 28px;border-bottom:1px solid #e0e8f4}.top-header h1{font-size:24px;line-height:1.1;color:#17345c;font-weight:900;letter-spacing:-.4px}.top-header p{font-size:16px;color:#1f3150;margin-top:4px}.header-icons{display:flex;align-items:center;gap:16px}.header-icons button{width:48px;height:48px;border:1px solid #edf1f7;background:#fff;border-radius:50%;color:#173d73;font-size:19px;box-shadow:0 6px 14px rgba(36,86,145,.08);position:relative;cursor:pointer}.header-icons b{position:absolute;right:2px;top:0;background:#f4c548;color:#18324f;width:18px;height:18px;border-radius:50%;font-size:11px;display:grid;place-items:center}.chevron{color:#7eb7cb}.content-grid{height:calc(100% - 88px);display:grid;grid-template-columns:minmax(0,1fr) 246px;gap:16px;padding:16px 16px 18px 24px;overflow:auto}.card{background:#fff;border-radius:12px;box-shadow:0 7px 18px rgba(54,99,151,.13);border:1px solid #e6eef9}.main-panel{min-width:0;display:grid;grid-template-rows:auto 1fr;gap:10px}.page-panel{grid-column:1/-1;display:grid;gap:14px;align-content:start}.two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:14px}.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.hero-card,.form-card,.table-card,.stat-card{padding:15px 18px 14px}.hero-card h2,.plan-card h3,.right-panel h3,.page-title{font-size:22px;font-weight:900;color:#163458;margin-bottom:10px}.page-title{margin:0}.page-subtitle{color:#5c7190;font-size:14px;margin-bottom:4px}.progress-track{height:38px;display:flex;align-items:center;margin-bottom:13px;border-radius:17px;overflow:hidden;width:100%}.step{height:100%;display:flex;align-items:center;justify-content:center;gap:8px;color:#fff;font-size:13px;font-weight:800;padding:0 15px;background:#42b8a5;position:relative;white-space:nowrap;flex:1}.step:after{content:"";position:absolute;right:-19px;border-top:19px solid transparent;border-bottom:19px solid transparent;border-left:19px solid currentColor;color:#42b8a5;z-index:2}.step.next{background:#f3c94d;color:#17345c;max-width:128px}.step.next:after{display:none}.blue-pill,.action-btn{height:35px;border:0;border-radius:20px;background:#245c99;color:#fff;padding:0 24px;font-size:14px;font-weight:800;cursor:pointer}.action-btn.gold,.see-all{background:#f4c548;color:#5a4300}.action-btn.light{background:#eef3f9;color:#163458}.plan-card{padding:10px 13px 12px;min-height:0}.section-head{display:flex;justify-content:space-between;align-items:center}.more{display:flex;gap:8px}.more span{width:8px;height:8px;background:#9aa9be;border-radius:50%}.month-line{height:44px;border-radius:11px;background:#fff;box-shadow:inset 0 0 0 1px #e8eef8,0 4px 12px rgba(45,91,144,.09);display:flex;align-items:center;gap:14px;padding:0 24px;font-size:15px;color:#193558}.line{width:47px;height:5px;border-radius:9px;background:#91d3d7}.line.long{width:88px}.arrow{width:38px;height:5px;border-radius:9px;background:#91d3d7;position:relative}.arrow:after{content:"";position:absolute;right:-2px;top:-5px;border-left:12px solid currentColor;border-top:7px solid transparent;border-bottom:7px solid transparent;color:#91d3d7}.gold,.gold:after{background:#e9c54a;color:#e9c54a}.timeline-card{height:89px;margin-top:10px;border-radius:12px;background:#fdfefe;border:1px solid #e8eef8;display:grid;grid-template-columns:165px 1fr 1fr 1fr;align-items:start;gap:12px;padding:13px 14px;position:relative}.profile-mini{display:flex;gap:10px}.profile-mini h4{font-size:15px;color:#17345c}.profile-mini p,.timeline-item p{font-size:11px;color:#395171}.timeline-item{display:grid;grid-template-columns:38px 1fr;column-gap:10px;cursor:pointer;border-radius:8px;padding:2px}.timeline-item:hover{background:#eef7ff}.timeline-item h5{font-size:14px;color:#17345c}.icon{width:35px;height:35px;border-radius:4px;display:grid;place-items:center;color:#fff;font-size:19px}.icon.blue{background:#3498d0}.icon.teal{background:#eaf9fb;color:#1e83a7;border:2px solid #4ab0bf}.timeline-dots{position:absolute;bottom:11px;left:228px;right:77px;height:2px;background:#c6d9eb}.timeline-dots span{position:absolute;top:-5px;width:12px;height:12px;border-radius:50%;background:#d7ecff;border:2px solid #7ca8c8}.timeline-dots span:nth-child(1){left:0}.timeline-dots span:nth-child(2){left:52%}.timeline-dots span:nth-child(3){right:0}.lower-grid{display:grid;grid-template-columns:210px 1fr;gap:10px;margin-top:10px}.card-soft{background:#fff;border:1px solid #e8eef8;border-radius:11px;box-shadow:0 5px 13px rgba(45,91,144,.08)}.readiness{padding:12px}.small-label{font-size:13px;color:#7f6a84;margin-bottom:7px}.gauge{height:116px;position:relative;overflow:hidden}.gauge:before{content:"";position:absolute;left:13px;right:13px;bottom:0;height:92px;border-radius:100px 100px 0 0;background:conic-gradient(from 270deg,#0194c8 0 62deg,#f4c43d 62deg 185deg,#e8edf5 185deg 360deg);clip-path:inset(0 0 38% 0)}.gauge-cover{position:absolute;left:34px;right:34px;bottom:9px;height:76px;background:#fff;border-radius:80px 80px 0 0;text-align:center;padding-top:28px}.gauge-cover strong{font-size:35px;color:#25446a}.gauge-cover span{font-size:21px;font-weight:900;color:#25446a}.gauge-cover em{display:block;font-style:normal;color:#e1ad30;font-size:14px;font-weight:800;margin-top:-6px}.readiness button{width:100%;height:34px;border:0;border-radius:18px;background:#eef3f9;color:#1d3555;font-weight:800;cursor:pointer}.mini-list{list-style:none;margin-top:14px;font-size:11px;color:#354a68;display:grid;gap:8px}.blue-text{color:#178bc8}.gold-text{color:#e6ba37}.roadmap{padding:12px;min-width:0}.roadmap-head{display:flex;align-items:center;gap:22px;margin-bottom:11px}.roadmap-head h4{font-size:17px;margin-right:auto}.roadmap-head span{font-size:14px;font-weight:800}.career-icons{display:flex;align-items:flex-start;gap:8px}.circle{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:25px;box-shadow:0 3px 8px rgba(20,74,126,.15);cursor:pointer}.cyan{background:#1e9cc8}.yellow{background:#f5c543}.sky{background:#5db4dc}.career-step{text-align:center;max-width:78px}.career-step p{font-size:11px;line-height:1.1;color:#203955;margin-top:5px;font-weight:700}.career-step small{font-size:9px;color:#49647f}.connector{width:18px;height:4px;background:#bfe1e6;margin-top:23px;position:relative}.connector:after{content:"";position:absolute;right:-5px;top:-4px;border-left:8px solid #bfe1e6;border-top:6px solid transparent;border-bottom:6px solid transparent}.chart-card{margin-top:8px;border-top:1px solid #e8eef8;padding-top:8px}.chart-card h4{font-size:15px}.bars{height:63px;background:repeating-linear-gradient(to top,#eaf0f7 0,#eaf0f7 1px,transparent 1px,transparent 16px);display:flex;align-items:end;gap:28px;padding:0 25px;border:1px solid #edf2f9}.bars span{width:28px;background:#4ea7dc;border-radius:4px 4px 0 0;cursor:pointer}.bars span:nth-child(2),.bars span:nth-child(4){background:#86cad2}.bars span:nth-child(5){background:#847bd0}.bars span:nth-child(6){background:#f0cb5b}.bar-labels{display:flex;justify-content:space-around;font-size:9px;color:#748199}.right-panel{display:grid;grid-template-rows:auto auto 1fr;gap:12px;min-width:0}.recommendation-card{padding:14px}.career-card{border-radius:8px;padding:10px;border:1px solid #cfd8e8;margin-bottom:9px;cursor:pointer}.career-card:hover{transform:translateY(-2px);box-shadow:0 8px 15px rgba(22,59,103,.14)}.yellow-card{background:#fff}.blue-card{background:linear-gradient(180deg,#0d83c0 0,#fff 48%)}.career-title{display:flex;gap:9px;align-items:center}.career-title h4{font-size:19px;line-height:1;color:#fff}.yellow-card .career-title h4{color:#23405f}.career-title p{font-size:10px;color:#fff;font-weight:800}.yellow-card .career-title p{color:#62718a}.helmet,.cube{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#f6cd4c;color:#fff;font-size:18px}.cube{background:#d8eff8;color:#278cc2}.career-card ul{list-style:none;margin-top:10px;display:grid;gap:7px;font-size:10px;color:#273d59}.career-card li:before{content:"";display:inline-block;width:9px;height:9px;background:#f0c545;border-radius:50%;margin-right:8px}.see-all{height:35px;width:146px;border:0;border-radius:18px;font-size:15px;font-weight:900;display:block;margin:5px 0 0 auto;cursor:pointer}.follow-card{padding:14px;background:#fff7d9}.follow-card label{height:30px;display:flex;align-items:center;gap:9px;font-size:13px;color:#384b65}.follow-card input{appearance:none;width:17px;height:17px;background:#fff;border:2px solid #c9b76a;border-radius:2px}.follow-card input:checked{background:#2f8fce;box-shadow:inset 0 0 0 3px #fff}.data-card{padding:14px}.data-card h3{font-size:15px}.data-card p{font-size:10px;margin-top:6px;color:#284362}.data-card p i{color:#2285be;margin-right:6px}.stars{margin-top:18px;display:flex;align-items:center;gap:9px;color:#f2c94c}.stars .muted{color:#b7d4df}.stars span{margin-left:auto;width:21px;height:7px;border-radius:9px;background:#3076ad}.stars small{width:13px;height:7px;border-radius:9px;background:#65a2c7}.stat-card h3{font-size:15px;color:#63728d}.stat-card strong{font-size:30px;color:#17345c}.stat-card i{float:right;font-size:28px;color:#2e90c8}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{display:grid;gap:5px}.field label{font-size:12px;font-weight:900;color:#334b6a}.field input,.field select,.field textarea{border:1px solid #d7e2f0;border-radius:10px;padding:10px 12px;font:inherit;color:#17345c;background:#fff}.field textarea{min-height:92px;resize:vertical}.full{grid-column:1/-1}.tag-row{display:flex;flex-wrap:wrap;gap:8px}.tag{background:#e9f4fb;color:#1c6698;border:1px solid #cce7f4;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:900;cursor:pointer}.tag.selected{background:#245c99;color:#fff}.table{width:100%;border-collapse:collapse;font-size:13px}.table th,.table td{text-align:left;padding:10px;border-bottom:1px solid #e8eef8}.table th{color:#5d7190}.status{border-radius:999px;padding:5px 9px;font-size:11px;font-weight:900}.status.done{background:#dbf7e5;color:#16804a}.status.progress{background:#fff0bf;color:#8b6600}.status.todo{background:#eaf2fb;color:#246091}.filter-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.filter-row input,.filter-row select{height:36px;border:1px solid #d7e2f0;border-radius:18px;padding:0 13px;font:inherit}.modal-backdrop{position:fixed;inset:0;background:rgba(10,32,58,.35);display:none;align-items:center;justify-content:center;z-index:20}.modal-backdrop.show{display:flex}.modal{width:min(460px,calc(100% - 32px));background:#fff;border-radius:18px;padding:20px;box-shadow:0 20px 55px rgba(0,0,0,.22)}.modal h3{font-size:22px;margin-bottom:8px}.modal p{color:#5d7190;margin-bottom:12px}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.toast{position:fixed;right:28px;bottom:28px;background:#17345c;color:#fff;border-radius:14px;padding:13px 18px;font-weight:900;box-shadow:0 12px 32px rgba(0,0,0,.22);opacity:0;transform:translateY(12px);pointer-events:none;transition:.25s;z-index:30}.toast.show{opacity:1;transform:translateY(0)}@media(max-width:980px){.stage{padding:18px}.browser-frame{height:auto;min-height:760px}.app-shell{grid-template-columns:74px 1fr}.sidebar{padding:14px 8px}.menu-item span,.logout span{display:none}.menu-item{justify-content:center}.menu-item.active{margin-left:0;padding-left:11px;border-radius:14px}.avatar-large{width:50px;height:50px}.content-grid{grid-template-columns:1fr;overflow:auto}.right-panel{grid-template-columns:repeat(3,1fr);grid-template-rows:auto}.top-header h1{font-size:18px}.progress-track{overflow:visible;height:auto;flex-wrap:wrap}.step{height:35px;min-width:190px}.lower-grid,.two-col,.three-col{grid-template-columns:1fr}.timeline-card{grid-template-columns:1fr 1fr;min-height:180px;height:auto}.timeline-dots{display:none}}@media(max-width:680px){.stage{padding:0}.browser-frame{border-width:0;border-radius:0}.browser-bar{display:none}.app-shell{height:auto;grid-template-columns:1fr}.sidebar{display:none}.top-header{height:auto;padding:16px;gap:12px}.header-icons button,.avatar-small,.chevron{display:none}.content-grid{padding:12px}.right-panel{grid-template-columns:1fr}.month-line{overflow:auto;padding:0 12px}.career-icons{overflow:auto}.timeline-card{grid-template-columns:1fr}.top-header h1{font-size:16px}.form-grid{grid-template-columns:1fr}}

.full-stage{padding:0;align-items:stretch;justify-content:stretch;background:#f3f7fe}.full-shell{width:100vw;height:100vh;grid-template-columns:230px 1fr}.full-stage .browser-frame,.browser-bar{display:none}.full-shell .sidebar{border-radius:0}.full-shell .workspace{height:100vh}.full-shell .content-grid{height:calc(100vh - 88px);padding:22px 24px}.clickable-avatar{border:0;cursor:pointer}.clickable-avatar:hover{transform:translateY(-2px);filter:saturate(1.1)}.stat-card,.student-badge,.header-icons button,.career-card,.timeline-item,.circle,.bars span,.menu-item{transition:.2s ease}.stat-card{cursor:pointer}.stat-card:hover{transform:translateY(-3px);box-shadow:0 12px 24px rgba(54,99,151,.18)}.crud-actions{display:flex;gap:7px;flex-wrap:wrap}.crud-btn{border:0;border-radius:999px;padding:6px 10px;font-weight:900;cursor:pointer;background:#e9f4fb;color:#1c6698}.crud-btn.danger{background:#ffe8e8;color:#b42323}.crud-btn.edit{background:#fff2c5;color:#745400}.modal-backdrop{position:fixed;inset:0;background:rgba(10,32,58,.35);display:none;align-items:center;justify-content:center;z-index:20}.modal-backdrop.show{display:flex}.modal{width:min(480px,calc(100% - 32px));background:#fff;border-radius:18px;padding:20px;box-shadow:0 20px 55px rgba(0,0,0,.22)}.modal h3{font-size:22px;margin-bottom:8px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:12px}@media(max-width:980px){.full-shell{grid-template-columns:74px 1fr}.full-shell .content-grid{height:calc(100vh - 88px)}}@media(max-width:680px){.full-shell{grid-template-columns:1fr}.full-shell .workspace{height:auto}.full-shell .content-grid{height:auto;min-height:calc(100vh - 82px)}}

.profile-menu-btn{width:34px!important;height:34px!important;background:transparent!important;box-shadow:none!important;border:0!important;color:#7eb7cb!important}.student-badge{border:0}.profile-mini .student-badge{flex:0 0 auto}.menu-item:focus-visible,.header-icons button:focus-visible,.clickable-avatar:focus-visible,.action-btn:focus-visible,.crud-btn:focus-visible,.tag:focus-visible{outline:3px solid #f4c548;outline-offset:3px}.side-menu a[aria-current="page"]{box-shadow:inset 4px 0 0 #f4c548}

.login-screen{position:fixed;inset:0;z-index:100;background:linear-gradient(135deg,#e8f2ff 0%,#c9d9ef 45%,#f7fbff 100%);display:flex;align-items:center;justify-content:center;padding:24px}.login-screen.hidden{display:none}.login-card{width:min(920px,100%);display:grid;grid-template-columns:1fr 1fr;background:#fff;border-radius:28px;overflow:hidden;box-shadow:0 28px 70px rgba(17,61,112,.22);border:1px solid #dce8f7}.login-hero{background:linear-gradient(180deg,#3175c9,#245c99);color:#fff;padding:42px;display:flex;flex-direction:column;justify-content:space-between;min-height:520px}.login-hero h1{font-size:32px;line-height:1.12;margin:18px 0 10px}.login-hero p{color:#eaf4ff;font-size:16px}.login-form{padding:42px;display:flex;flex-direction:column;justify-content:center}.login-form h2{font-size:30px;color:#17345c;margin-bottom:8px}.login-form .field{margin-top:14px}.role-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.role-card{border:2px solid #dbe7f5;border-radius:18px;padding:18px;cursor:pointer;background:#f9fcff;color:#17345c;text-align:left;font-weight:900}.role-card i{font-size:26px;color:#2f7dca;margin-bottom:10px;display:block}.role-card.active{border-color:#245c99;background:#eaf4ff;box-shadow:0 10px 20px rgba(36,92,153,.14)}.login-submit{height:46px;border:0;border-radius:999px;background:#245c99;color:#fff;font-weight:900;font-size:16px;cursor:pointer}.role-badge{display:inline-flex;align-items:center;gap:8px;border-radius:999px;background:#eaf4ff;color:#245c99;padding:8px 13px;font-weight:900;font-size:13px;margin-top:8px}.menu-item[hidden]{display:none!important}.access-denied{padding:26px;text-align:center}.access-denied i{font-size:46px;color:#e6ba37;margin-bottom:12px}@media(max-width:760px){.login-card{grid-template-columns:1fr}.login-hero{min-height:auto}.role-options{grid-template-columns:1fr}}

.assessment-page{gap:18px}.assessment-intro p,.citation-card p{color:#5f7188;line-height:1.7}.scale-box{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}.scale-box strong,.scale-box span{background:#eef6ff;border-radius:14px;padding:10px;color:#245c99;font-weight:900}.assessment-section{margin-top:18px}.assessment-section .section-head{align-items:flex-start}.assessment-section small{display:block;color:#6d8198;margin-top:8px;line-height:1.5}.question-row{display:grid;grid-template-columns:1fr 250px;gap:16px;align-items:center;border-top:1px solid #e8eef6;padding:14px 0}.question-row p{color:#233c5c;font-weight:700;line-height:1.45}.likert-options{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.likert-options label{cursor:pointer}.likert-options input{display:none}.likert-options span{display:grid;place-items:center;height:38px;border-radius:12px;background:#f2f7fd;border:2px solid #dce8f7;font-weight:900;color:#245c99}.likert-options input:checked+span{background:#245c99;color:#fff;border-color:#245c99;box-shadow:0 8px 18px rgba(36,92,153,.22)}.assessment-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.assessment-modal{max-height:88vh;overflow:auto}.score-list{display:grid;gap:12px;margin-top:14px}.score-list div{position:relative;background:#eef6ff;border-radius:14px;padding:12px;overflow:hidden}.score-list strong,.score-list span{position:relative;z-index:1;display:block}.score-list span{color:#245c99;font-weight:900;margin-top:4px}.score-list em{position:absolute;left:0;bottom:0;height:5px;background:#f4c548}.assessment-summary .stat-card{cursor:default}@media(max-width:820px){.scale-box{grid-template-columns:1fr}.question-row{grid-template-columns:1fr}.likert-options{max-width:320px}}
.assessment-wizard{max-width:1180px;margin:0 auto}.assessment-intro.compact{display:grid;grid-template-columns:1.35fr .95fr;gap:18px;align-items:center;border:1px solid #dce8f7;background:linear-gradient(135deg,#fff,#f4f9ff)}.wizard-shell{display:grid;gap:18px}.wizard-card{padding:0;overflow:hidden;border:1px solid #dce8f7;box-shadow:0 18px 42px rgba(31,77,130,.13)}.wizard-top{display:flex;justify-content:space-between;gap:20px;padding:24px;background:linear-gradient(135deg,#f5fbff,#eef6ff)}.wizard-top h3{font-size:24px;color:#17345c;margin:12px 0 8px}.wizard-top p{color:#60758d;line-height:1.6;max-width:760px}.wizard-top>strong{width:74px;height:74px;border-radius:24px;background:#245c99;color:#fff;display:grid;place-items:center;font-size:22px;box-shadow:0 14px 28px rgba(36,92,153,.25)}.wizard-progress{height:10px;background:#e5eef9}.wizard-progress span{display:block;height:100%;background:linear-gradient(90deg,#245c99,#f4c548);border-radius:0 999px 999px 0}#assessmentStepForm{padding:28px}#assessmentStepForm h2{font-size:26px;line-height:1.35;color:#18385e;margin-bottom:22px}.wizard-likert{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.wizard-likert label{cursor:pointer}.wizard-likert input{display:none}.wizard-likert span{min-height:118px;border:2px solid #dce8f7;border-radius:22px;background:#f8fbff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;padding:14px;transition:.2s ease}.wizard-likert b{width:42px;height:42px;border-radius:50%;background:#eaf4ff;color:#245c99;display:grid;place-items:center;font-size:20px}.wizard-likert small{font-weight:900;color:#48627f;line-height:1.25}.wizard-likert input:checked+span{border-color:#245c99;background:#245c99;transform:translateY(-3px);box-shadow:0 14px 28px rgba(36,92,153,.22)}.wizard-likert input:checked+span b{background:#f4c548;color:#17345c}.wizard-likert input:checked+span small{color:#fff}.wizard-textarea{width:100%;min-height:180px;border:2px solid #dce8f7;border-radius:20px;padding:16px;font:inherit;resize:vertical;background:#f8fbff}.wizard-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.wizard-actions button[disabled]{opacity:.45;cursor:not-allowed}.wizard-mini{display:flex;justify-content:space-between;padding:14px 28px;background:#f8fbff;border-top:1px solid #e5eef9;color:#60758d;font-weight:900}.assessment-result{padding:26px;border:1px solid #dce8f7;box-shadow:0 18px 42px rgba(31,77,130,.13)}.result-hero{display:grid;grid-template-columns:1fr 150px;gap:22px;align-items:center;padding:24px;border-radius:24px;background:linear-gradient(135deg,#eef6ff,#fff9df);margin-bottom:18px}.result-hero h2{font-size:30px;color:#17345c;margin:12px 0}.result-hero p{color:#526b87;line-height:1.7}.result-score{width:140px;height:140px;border-radius:36px;background:#245c99;color:#fff;display:flex;align-items:flex-end;justify-content:center;padding:20px;box-shadow:0 18px 34px rgba(36,92,153,.24)}.result-score strong{font-size:56px;line-height:.9}.result-score span{font-size:22px;font-weight:900}.recommendation-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:18px}.recommendation-grid article{border:1px solid #dce8f7;border-radius:20px;background:#f8fbff;padding:18px}.recommendation-grid i{width:42px;height:42px;border-radius:14px;background:#eaf4ff;color:#245c99;display:grid;place-items:center;font-size:20px;margin-bottom:12px}.recommendation-grid h3{color:#17345c;margin-bottom:8px}.recommendation-grid p{color:#5d728a;line-height:1.6}.assessment-actions.card{box-shadow:none;background:#f8fbff;border:1px solid #e5eef9}@media(max-width:920px){.assessment-intro.compact,.result-hero{grid-template-columns:1fr}.wizard-likert,.recommendation-grid{grid-template-columns:1fr 1fr}.result-score{width:120px;height:120px}}@media(max-width:620px){.wizard-top{flex-direction:column}.wizard-likert,.recommendation-grid{grid-template-columns:1fr}#assessmentStepForm h2{font-size:21px}.wizard-mini{flex-direction:column;gap:6px}.scale-box{grid-template-columns:1fr 1fr}}
.question-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:0 0 22px}.question-meta span{display:block;border:1px solid #dce8f7;background:#f8fbff;border-radius:16px;padding:12px;color:#526b87;line-height:1.45}.question-meta b{display:block;color:#245c99;font-size:12px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px}.wizard-card .role-badge{max-width:100%;white-space:normal}.citation-card{border:1px solid #dce8f7}.result-hero p strong{color:#17345c}@media(max-width:760px){.question-meta{grid-template-columns:1fr}}
.dashboard-page{max-width:1240px;margin:0 auto}.dashboard-grid{align-items:start}.dashboard-stats .stat-card p{margin-top:6px;color:#6a7e95;font-size:13px;font-weight:800}.dashboard-main{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;align-items:start}.assessment-dashboard-card{display:grid;gap:16px;border:1px solid #dce8f7;box-shadow:0 18px 42px rgba(31,77,130,.12)}.compact-result{grid-template-columns:1fr 124px;margin-bottom:0;padding:20px}.compact-result h2{font-size:26px;margin:10px 0}.compact-result .result-score{width:112px;height:112px;border-radius:28px}.compact-result .result-score strong{font-size:44px}.assessment-snapshot{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.assessment-snapshot div{background:#f8fbff;border:1px solid #dce8f7;border-radius:18px;padding:14px}.assessment-snapshot b{display:block;color:#245c99;font-size:12px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:7px}.assessment-snapshot span{display:block;color:#17345c;font-weight:900;line-height:1.35}.assessment-snapshot small{display:block;color:#6a7e95;margin-top:5px;font-weight:800}.dashboard-score-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.dashboard-recommendations{grid-template-columns:repeat(2,1fr);margin-top:0}.dashboard-recommendations article{padding:14px}.dashboard-recommendations article p{font-size:13px}.dashboard-side{display:grid;gap:18px}.dashboard-side .table-card{overflow:auto}.dashboard-side .table{min-width:520px}@media(max-width:1120px){.dashboard-main{grid-template-columns:1fr}.dashboard-side{grid-template-columns:1fr 1fr}.dashboard-score-list{grid-template-columns:1fr 1fr}}@media(max-width:820px){.assessment-snapshot,.dashboard-side,.dashboard-score-list,.dashboard-recommendations{grid-template-columns:1fr}.compact-result{grid-template-columns:1fr}.compact-result .result-score{width:108px;height:108px}}

/* Layout polish: prevent overlapping cards and improve spacing */
*{box-sizing:border-box}html,body{width:100%;min-width:0;overflow:hidden}.full-shell{min-width:0;overflow:hidden}.workspace{min-width:0;overflow:hidden;display:flex;flex-direction:column}.top-header{flex:0 0 auto;min-height:88px;gap:16px}.top-header>div:first-child{min-width:0}.top-header h1{line-height:1.15;word-break:normal;overflow-wrap:anywhere}.header-icons{flex:0 0 auto}.full-shell .content-grid,.content-grid{flex:1 1 auto;min-height:0;overflow:auto;display:block;padding:28px;background:#f4f8ff}.page-panel,.assessment-page,.dashboard-page{width:100%;max-width:1240px;margin:0 auto;display:flex;flex-direction:column;gap:22px}.card,.panel,.page-panel section,.right-panel section{min-width:0;max-width:100%;overflow-wrap:anywhere}.three-col{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.stat-card{min-height:150px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px}.stat-card strong{line-height:1}.dashboard-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,360px);gap:22px;align-items:start}.dashboard-side{min-width:0}.assessment-dashboard-card,.assessment-result,.wizard-card{overflow:visible}.result-hero{min-width:0}.score-list,.dashboard-score-list{min-width:0}.score-list div{min-width:0}.recommendation-grid,.dashboard-recommendations{align-items:stretch}.recommendation-grid article{min-width:0;height:100%}.table-card{overflow:hidden}.table-card h3{margin-bottom:12px}.table{width:100%;border-collapse:collapse;table-layout:auto}.table th,.table td{vertical-align:top;white-space:normal;overflow-wrap:anywhere}.dashboard-side .table-card,.page-panel .table-card{overflow:auto}.filter-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.filter-row input,.filter-row select{min-width:0;flex:1 1 190px}.assessment-snapshot{align-items:stretch}.assessment-snapshot div{min-width:0}.wizard-top{min-width:0}.wizard-top>div{min-width:0}.wizard-likert{grid-template-columns:repeat(4,minmax(0,1fr))}.wizard-likert span{height:100%;min-width:0}.question-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.main-panel{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}.right-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:18px}.lower-grid,.roadmap,.timeline-card,.chart-card{min-width:0}.career-icons{display:flex;flex-wrap:wrap;gap:12px}.connector{display:none}@media(max-width:1180px){.dashboard-main{grid-template-columns:1fr}.dashboard-side{grid-template-columns:repeat(2,minmax(0,1fr))}.right-panel{grid-template-columns:1fr 1fr}.full-shell{grid-template-columns:210px minmax(0,1fr)}}@media(max-width:900px){html,body{overflow:auto}.full-stage,.full-shell{min-height:100vh;height:auto}.full-shell{grid-template-columns:76px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh}.sidebar .menu-item span,.sidebar .logout span{display:none}.top-header{align-items:flex-start}.top-header h1{font-size:18px}.three-col,.two-col,.dashboard-side,.right-panel,.assessment-snapshot,.dashboard-score-list,.dashboard-recommendations,.recommendation-grid{grid-template-columns:1fr}.wizard-likert{grid-template-columns:repeat(2,minmax(0,1fr))}.question-meta{grid-template-columns:1fr}.full-shell .content-grid,.content-grid{height:auto;min-height:calc(100vh - 88px);overflow:visible;padding:20px}}@media(max-width:640px){.full-shell{display:block}.sidebar{position:relative;width:100%;height:auto;display:flex;align-items:center;gap:10px;overflow:auto;padding:12px}.side-menu{display:flex;flex-direction:row;gap:8px;overflow:auto}.menu-item,.logout{flex:0 0 auto}.workspace{height:auto;overflow:visible}.top-header{padding:16px;flex-direction:column}.header-icons{width:100%;justify-content:flex-start}.content-grid{padding:16px}.wizard-likert{grid-template-columns:1fr}.result-hero,.compact-result{grid-template-columns:1fr}.result-score{width:112px;height:112px}.scale-box{grid-template-columns:1fr 1fr}.assessment-actions,.wizard-actions{align-items:stretch}.assessment-actions .action-btn,.wizard-actions .action-btn{width:100%}}

/* Visual spacing polish: keep text away from borders */
.card,.panel,.modal,.table-card,.form-card,.assessment-dashboard-card,.assessment-result,.wizard-card,.assessment-intro,.citation-card,.recommendation-card,.follow-card,.data-card,.plan-card,.hero-card{padding:24px!important;border-radius:24px!important}.wizard-card{padding:0!important}.wizard-top{padding:28px 30px!important}.wizard-progress{margin:0 30px;border-radius:999px;overflow:hidden}.wizard-progress span{border-radius:999px}#assessmentStepForm{padding:30px!important}.wizard-mini{padding:16px 30px!important}.result-hero,.compact-result{padding:26px!important;border-radius:24px!important}.assessment-actions.card{padding:18px!important}.stat-card{padding:24px!important}.page-title{margin-bottom:8px}.page-subtitle{line-height:1.65;margin-bottom:4px}.card h2,.card h3,.card h4,.card h5,.panel h2,.panel h3{line-height:1.3;margin-bottom:10px}.card p,.panel p,.table td,.table th,label,small,textarea,input,select{line-height:1.55}.table{border-spacing:0 8px}.table th{padding:14px 16px!important;background:#f2f7fd}.table td{padding:14px 16px!important;background:#fff}.table tr{border-radius:16px}.form-grid{gap:18px!important}.field label{display:block;margin-bottom:8px;color:#385677;font-weight:900}.field input,.field textarea,.field select,.filter-row input,.filter-row select{padding:13px 15px!important;border-radius:14px!important;border:1px solid #d7e4f3!important;background:#fff;line-height:1.5}.field textarea{min-height:118px}.question-meta{gap:14px!important;margin:6px 0 26px!important}.question-meta span{padding:16px!important;border-radius:18px!important}.wizard-likert{gap:16px!important}.wizard-likert span{padding:18px!important}.assessment-snapshot{gap:16px!important}.assessment-snapshot div{padding:18px!important}.score-list{gap:14px!important}.score-list div{padding:16px 18px 18px!important;border-radius:18px!important}.recommendation-grid{gap:16px!important}.recommendation-grid article{padding:20px!important;border-radius:20px!important}.dashboard-main,.two-col,.three-col,.right-panel,.dashboard-side{gap:22px!important}.side-menu{gap:10px}.menu-item{padding:13px 14px!important;border-radius:16px}.logout{padding:13px 14px!important}.top-header{padding:20px 26px!important}.sidebar{padding:22px 18px!important}.toast{padding:13px 18px!important;line-height:1.45}.role-badge{line-height:1.35;padding:9px 14px}.action-btn,.blue-pill,.see-all,.crud-btn{line-height:1.35;padding:10px 16px}.crud-btn{padding:8px 12px}.profile-mini{gap:14px}.career-card{padding:18px!important}.career-card ul{padding-left:18px;margin-top:10px}.career-card li{line-height:1.5;margin-bottom:6px}.timeline-item{padding:13px!important;gap:12px}.login-form,.login-hero{padding:46px!important}.role-card{padding:20px!important;line-height:1.45}.role-card small{display:block;margin-top:6px}@media(max-width:760px){.card,.panel,.modal,.table-card,.form-card,.assessment-dashboard-card,.assessment-result,.assessment-intro,.citation-card{padding:18px!important;border-radius:20px!important}.wizard-top,#assessmentStepForm{padding:22px!important}.wizard-progress{margin:0 22px}.wizard-mini{padding:14px 22px!important}.top-header{padding:16px!important}.login-form,.login-hero{padding:28px!important}}

/* Revision features polish */
.academic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}.academic-grid label{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:14px;align-items:center;padding:16px;border:1px solid #dce8f7;border-radius:18px;background:#f8fbff}.academic-grid b,.academic-grid small{display:block}.academic-grid b{color:#245c99;margin-bottom:4px}.academic-grid small{color:#6a7e95;margin-top:4px;font-weight:800}.academic-grid input{width:100%;padding:12px 14px;border:1px solid #d7e4f3;border-radius:14px;font-weight:900;color:#17345c}.spider-card{text-align:center;overflow:hidden}.spider-card h3{text-align:left}.spider-svg{width:min(100%,360px);height:auto;margin:6px auto 0;display:block}.spider-svg circle{fill:none;stroke:#dce8f7;stroke-width:1.5}.spider-svg line{stroke:#c8d9ee;stroke-width:1.4}.spider-svg text{font-size:10px;font-weight:900;fill:#245c99}.spider-svg polygon{fill:rgba(36,92,153,.22);stroke:#245c99;stroke-width:2}.spider-svg polyline{fill:none;stroke:#f4c548;stroke-width:3}.salary-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.salary-list article{padding:16px;border:1px solid #dce8f7;border-radius:18px;background:#f8fbff}.salary-list b,.salary-list span,.salary-list small{display:block}.salary-list b{color:#17345c}.salary-list span{margin-top:7px;color:#245c99;font-size:18px;font-weight:900}.salary-list small{margin-top:5px;color:#6a7e95;font-weight:800}.cv-preview{display:grid;gap:10px;padding:18px;border-radius:20px;background:#f8fbff;border:1px solid #dce8f7}.cv-preview h2{margin:0;color:#17345c}.cv-preview b{color:#245c99;margin-top:6px}.login-card{grid-template-columns:1fr 1.15fr}.role-options{grid-template-columns:repeat(3,minmax(0,1fr))}.role-card small{line-height:1.35}@media(max-width:980px){.academic-grid,.salary-list{grid-template-columns:1fr}.role-options{grid-template-columns:1fr}}@media(max-width:640px){.academic-grid label{grid-template-columns:1fr}.academic-grid input{width:100%}}

/* Rekomendasi filter/dropdown layout polish */
.page-panel > .table-card:first-of-type .filter-row{display:grid!important;grid-template-columns:minmax(260px,1.4fr) minmax(190px,.8fr) minmax(230px,.9fr);gap:14px;align-items:end;width:100%}.page-panel > .table-card:first-of-type .filter-row input,.page-panel > .table-card:first-of-type .filter-row select{width:100%;min-width:0;height:48px;line-height:1.4;padding:12px 16px!important;border:1px solid #d7e4f3!important;border-radius:16px!important;background:#fff;color:#17345c;font-weight:800;box-shadow:0 6px 16px rgba(36,92,153,.06);appearance:auto}.page-panel > .table-card:first-of-type .filter-row select{cursor:pointer;white-space:normal;text-overflow:ellipsis}.page-panel > .table-card:first-of-type .filter-row input:focus,.page-panel > .table-card:first-of-type .filter-row select:focus{outline:3px solid rgba(244,197,72,.45);border-color:#245c99!important}.page-panel > .table-card:first-of-type{overflow:visible!important}.page-panel > .table-card:first-of-type .filter-row *{box-sizing:border-box}@media(max-width:980px){.page-panel > .table-card:first-of-type .filter-row{grid-template-columns:1fr 1fr}.page-panel > .table-card:first-of-type .filter-row input{grid-column:1/-1}}@media(max-width:640px){.page-panel > .table-card:first-of-type .filter-row{grid-template-columns:1fr}.page-panel > .table-card:first-of-type .filter-row input,.page-panel > .table-card:first-of-type .filter-row select{height:auto;min-height:48px}}

/* CV builder and printable template */
.cv-builder-form textarea{min-height:120px}.cv-print-card{background:#f1f5fb!important;display:flex;justify-content:center;overflow:auto}.cv-template{width:794px;min-height:1123px;background:#fff;display:grid;grid-template-columns:330px 1fr;color:#24242a;font-family:Nunito,Arial,sans-serif;box-shadow:0 24px 70px rgba(16,61,112,.18)}.cv-left{background:#224654;color:#fff;margin:26px 0 26px 26px;border-radius:28px;padding:32px 30px;display:flex;flex-direction:column}.cv-photo{width:220px;height:220px;border-radius:50%;overflow:hidden;margin:0 auto 26px;background:#d8e8ef;display:grid;place-items:center;color:#224654;font-size:54px;font-weight:900}.cv-photo img{width:100%;height:100%;object-fit:cover}.cv-left h1{font-size:42px;line-height:1.06;font-weight:500;margin:0 0 4px;letter-spacing:-1px}.cv-left h2{font-size:23px;font-style:italic;font-weight:700;text-align:center;margin:0 0 28px;color:#f0f5f7}.cv-summary{font-size:15px;line-height:1.65;margin-bottom:28px;color:#f6fbfd}.cv-left h3{font-size:30px;line-height:1;margin:22px 0 14px;color:#fff;font-weight:900}.cv-left ul{padding-left:24px;margin:0 0 18px}.cv-left li{font-size:17px;line-height:1.65;padding-left:8px}.cv-contact{display:grid;gap:18px;margin-top:8px}.cv-contact p{display:grid;grid-template-columns:34px 1fr;gap:14px;align-items:center;font-size:16px;line-height:1.35;color:#f6fbfd}.cv-contact i{font-size:24px;text-align:center}.cv-right{padding:58px 34px 38px 32px;background:#fff}.cv-right h3{font-size:30px;line-height:1;margin:0 0 8px;color:#25242a;font-weight:900}.cv-right h3:not(:first-child){margin-top:34px}.cv-right ul{margin:0 0 8px;padding-left:22px}.cv-right li{font-size:14px;line-height:1.42}.cv-data{list-style:disc}.cv-data li{display:grid;grid-template-columns:145px 1fr;gap:5px}.cv-data b{font-weight:600}.cv-edu li{display:grid;grid-template-columns:1fr 110px;gap:12px}.cv-edu b{font-weight:700;text-align:left}.cv-exp{margin:0 0 22px}.cv-exp h4{font-size:15px;margin:0;color:#25242a}.cv-exp em{display:block;font-size:13px;font-weight:800;margin:1px 0 5px;color:#25242a}.cv-exp ul{margin-top:2px}.cv-exp li{line-height:1.42}.cv-page-grid .page-panel{max-width:1260px}.cv-page-grid .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cv-page-grid .field.full{grid-column:1/-1}@media(max-width:1100px){.cv-template{transform:scale(.86);transform-origin:top center;margin-bottom:-150px}.cv-page-grid .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.cv-template{width:100%;min-height:0;grid-template-columns:1fr;transform:none}.cv-left{margin:0;border-radius:24px 24px 0 0}.cv-right{padding:28px}.cv-data li,.cv-edu li{grid-template-columns:1fr}.cv-page-grid .form-grid{grid-template-columns:1fr}}@media print{body *{visibility:hidden!important}#cvTemplate,#cvTemplate *{visibility:visible!important}#cvTemplate{position:absolute;left:0;top:0;width:210mm;min-height:297mm;box-shadow:none;transform:none!important}.cv-left{margin:7mm 0 7mm 7mm}.cv-right{padding-top:16mm}@page{size:A4;margin:0}}

/* Exact CV preview print: print the same visual template */
@media print{html,body{width:210mm!important;height:297mm!important;margin:0!important;padding:0!important;background:#fff!important;overflow:hidden!important}.login-screen,.sidebar,.top-header,.cv-builder-form,.page-panel>div:first-child,.toast{display:none!important}.stage,.full-stage,.full-shell,.workspace,.content-grid,.cv-page-grid,.page-panel,.cv-print-card{display:block!important;width:210mm!important;height:297mm!important;min-height:297mm!important;margin:0!important;padding:0!important;background:#fff!important;box-shadow:none!important;overflow:hidden!important}.cv-print-card{visibility:visible!important;border:0!important;border-radius:0!important}.cv-print-card *{visibility:visible!important}.cv-template{visibility:visible!important;position:fixed!important;inset:0!important;width:210mm!important;height:297mm!important;min-height:297mm!important;margin:0!important;padding:0!important;display:grid!important;grid-template-columns:88mm 122mm!important;background:#fff!important;box-shadow:none!important;transform:none!important;overflow:hidden!important}.cv-left{margin:7mm 0 7mm 7mm!important;width:76mm!important;height:283mm!important;border-radius:9mm!important;padding:9mm 8mm!important;background:#224654!important;color:#fff!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.cv-right{width:122mm!important;height:297mm!important;padding:18mm 9mm 10mm 8mm!important;background:#fff!important;color:#24242a!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.cv-photo{width:58mm!important;height:58mm!important;margin:0 auto 8mm!important}.cv-left h1{font-size:31pt!important;line-height:1.02!important;margin:0 0 1mm!important}.cv-left h2{font-size:15pt!important;margin:0 0 8mm!important}.cv-summary{font-size:10.5pt!important;line-height:1.55!important;margin-bottom:8mm!important}.cv-left h3{font-size:21pt!important;margin:7mm 0 4mm!important}.cv-left li{font-size:12pt!important;line-height:1.55!important}.cv-contact{gap:5mm!important}.cv-contact p{font-size:11pt!important;grid-template-columns:8mm 1fr!important;gap:5mm!important}.cv-contact i{font-size:15pt!important}.cv-right h3{font-size:22pt!important;margin:0 0 2mm!important;line-height:1!important}.cv-right h3:not(:first-child){margin-top:9mm!important}.cv-data li{font-size:9.5pt!important;line-height:1.34!important;grid-template-columns:43mm 1fr!important}.cv-edu li{font-size:10.5pt!important;line-height:1.42!important;grid-template-columns:1fr 28mm!important}.cv-exp{margin:0 0 5mm!important}.cv-exp h4{font-size:10.5pt!important;margin:0!important}.cv-exp em{font-size:9.5pt!important;margin:0 0 1mm!important}.cv-exp li,.cv-right li{font-size:9.5pt!important;line-height:1.34!important}@page{size:A4;margin:0}}

/* Modern UI refinement: cleaner, more dynamic, and better structured */
:root{--sipeta-blue:#1f5f9f;--sipeta-blue-2:#2f7fd0;--sipeta-dark:#123457;--sipeta-soft:#f5f9ff;--sipeta-border:#dce8f6;--sipeta-gold:#f4c548;--sipeta-shadow:0 18px 48px rgba(20,49,88,.12)}
body{background:radial-gradient(circle at top left,#edf6ff 0,#f6f9ff 38%,#d8e8fb 100%);color:var(--sipeta-dark)}
.full-shell{background:#f5f8fd}.sidebar{background:linear-gradient(180deg,#164a82 0%,#226fbd 58%,#1a5798 100%)!important;box-shadow:10px 0 34px rgba(18,52,87,.14);padding:24px 18px!important}.side-menu{display:grid;gap:10px}.menu-item{min-height:48px;border-radius:18px!important;padding:0 16px!important;background:rgba(255,255,255,.08);color:#eaf4ff!important;border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(10px)}.menu-item:hover{background:rgba(255,255,255,.17);transform:translateX(4px)}.menu-item.active,.side-menu a[aria-current="page"]{background:#fff!important;color:#1d5f9f!important;box-shadow:0 14px 28px rgba(0,0,0,.12),inset 4px 0 0 var(--sipeta-gold)!important}.menu-item i{width:22px;text-align:center}.logout{border-radius:18px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.14)}
.workspace{background:linear-gradient(135deg,#f8fbff,#edf4fc)}.top-header{position:sticky;top:0;z-index:10;background:rgba(248,251,255,.88)!important;backdrop-filter:blur(18px);border-bottom:1px solid rgba(220,232,246,.85);box-shadow:0 8px 26px rgba(18,52,87,.06);padding:18px 28px!important}.top-header h1{font-size:clamp(22px,2.5vw,34px);letter-spacing:.02em;color:var(--sipeta-dark)}.top-header p{font-weight:900;color:#5d7691}.header-icons button{border:1px solid var(--sipeta-border)!important;background:#fff!important;color:var(--sipeta-blue)!important}.header-icons button:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(31,95,159,.14)}
.full-shell .content-grid,.content-grid{background:transparent!important;padding:30px!important}.page-panel{gap:24px!important}.page-panel>div:first-child{padding:22px 26px;border-radius:26px;background:linear-gradient(135deg,#fff,#f2f8ff);border:1px solid var(--sipeta-border);box-shadow:var(--sipeta-shadow)}.page-title{font-size:clamp(26px,3vw,40px)!important;color:var(--sipeta-dark);letter-spacing:-.03em}.page-subtitle{max-width:900px;color:#60778f!important;font-weight:800}
.card,.table-card,.form-card,.stat-card{background:rgba(255,255,255,.94)!important;border:1px solid rgba(220,232,246,.92)!important;box-shadow:var(--sipeta-shadow)!important}.card:hover,.table-card:hover,.form-card:hover{box-shadow:0 24px 58px rgba(20,49,88,.16)!important}.stat-card{position:relative;overflow:hidden!important}.stat-card:before{content:"";position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,var(--sipeta-blue),var(--sipeta-gold));opacity:.92}.stat-card i{width:52px;height:52px;border-radius:18px;background:linear-gradient(135deg,#eaf4ff,#fff7d9);display:grid;place-items:center;color:var(--sipeta-blue)!important;font-size:22px}.stat-card strong{font-size:clamp(28px,3vw,42px);color:var(--sipeta-dark)}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px!important}.field.full{grid-column:1/-1}.field input,.field textarea,.field select,.filter-row input,.filter-row select,.admin-inline{width:100%;background:#fbfdff!important;border:1px solid var(--sipeta-border)!important;border-radius:16px!important;color:var(--sipeta-dark);font-weight:800;transition:.18s ease}.field input:focus,.field textarea:focus,.field select:focus,.filter-row input:focus,.filter-row select:focus,.admin-inline:focus{outline:4px solid rgba(244,197,72,.32);border-color:var(--sipeta-blue)!important;background:#fff!important;box-shadow:0 10px 22px rgba(31,95,159,.09)}.action-btn,.login-submit{border-radius:999px!important;box-shadow:0 12px 24px rgba(31,95,159,.16);transition:.18s ease}.action-btn:hover,.login-submit:hover{transform:translateY(-2px);box-shadow:0 16px 32px rgba(31,95,159,.22)}.action-btn.gold{background:linear-gradient(135deg,#f4c548,#ffe08a)!important;color:#533c00!important}
.table-scroll{width:100%;overflow:auto;border-radius:20px;border:1px solid var(--sipeta-border);background:#fff}.table-scroll table,table{width:100%;border-collapse:separate!important;border-spacing:0!important;min-width:720px}.table-scroll th,.table-scroll td,table th,table td{padding:14px 16px!important;border-bottom:1px solid #edf3fb;text-align:left;vertical-align:middle}.table-scroll th,table th{position:sticky;top:0;background:#edf6ff!important;color:var(--sipeta-blue);font-size:12px;text-transform:uppercase;letter-spacing:.08em;z-index:1}.table-scroll tr:hover td{background:#f8fbff}.mini-btn{border:0;border-radius:999px;padding:8px 12px;background:#eaf4ff;color:var(--sipeta-blue);font-weight:900;cursor:pointer;margin:2px}.mini-btn:hover{filter:brightness(.96);transform:translateY(-1px)}.mini-btn.danger{background:#ffe9e9;color:#b42323}.upload-box{display:grid;gap:10px;margin:18px 0;padding:18px;border-radius:20px;background:linear-gradient(135deg,#f8fbff,#fff);border:1px dashed #aac6e7}.upload-box label{font-weight:900;color:var(--sipeta-blue)}.upload-box textarea{width:100%;min-height:110px;border-radius:16px;border:1px solid var(--sipeta-border);padding:14px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#fff;color:var(--sipeta-dark)}
.admin-page .table-card{display:grid;gap:16px}.admin-page .three-col{align-items:stretch}.admin-page .form-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-page .field.full{grid-column:1/-1}.admin-inline{min-width:170px;padding:10px 12px!important}.switch-mini{display:inline-flex;align-items:center;gap:8px;font-weight:900;color:#48627f}.switch-mini input{accent-color:var(--sipeta-blue)}
.recommendation-grid article,.salary-list article,.assessment-snapshot div,.academic-grid label{transition:.18s ease}.recommendation-grid article:hover,.salary-list article:hover,.assessment-snapshot div:hover,.academic-grid label:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(20,49,88,.1)}.spider-card svg{filter:drop-shadow(0 12px 24px rgba(31,95,159,.08))}.role-badge{background:#eaf4ff!important;border:1px solid #d9eafa;color:var(--sipeta-blue)!important}
@media(max-width:1100px){.admin-page .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.three-col{grid-template-columns:repeat(2,minmax(0,1fr))}.two-col{grid-template-columns:1fr}.full-shell{grid-template-columns:92px 1fr}.sidebar{padding:18px 10px!important}.menu-item{justify-content:center;padding:0 10px!important}.menu-item span,.logout span{display:none}.avatar-large{width:58px;height:58px}}
@media(max-width:720px){html,body{overflow:auto}.full-shell{grid-template-columns:1fr}.sidebar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:10px;overflow:auto}.side-menu{display:flex;grid-template-columns:none;overflow:auto}.menu-item{min-width:54px}.logout{display:none}.top-header{padding:16px!important;position:relative}.header-icons{display:none}.full-shell .content-grid,.content-grid{padding:18px!important}.page-panel>div:first-child{padding:18px}.form-grid,.admin-page .form-grid,.three-col{grid-template-columns:1fr}.table-scroll table,table{min-width:640px}.page-title{font-size:26px!important}}

/* Course edit popup modal */
.course-modal-backdrop{position:fixed;inset:0;z-index:200;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(7,24,45,.48);backdrop-filter:blur(10px)}.course-modal-backdrop.show{display:flex}.course-modal{width:min(620px,100%);background:#fff;border:1px solid #dce8f6;border-radius:28px;padding:26px;box-shadow:0 32px 90px rgba(7,24,45,.32);animation:modalPop .18s ease}.modal-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}.modal-head h3{font-size:28px;color:#123457;margin:0 0 6px}.modal-head p{color:#60778f;font-weight:800;line-height:1.55}.modal-close{width:42px;height:42px;border:0;border-radius:50%;background:#eef6ff;color:#1f5f9f;cursor:pointer;font-size:18px}.modal-close:hover{background:#ffe9e9;color:#b42323}.course-modal .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.course-modal .field.full{grid-column:1/-1}.modal-actions{display:flex!important;justify-content:flex-end;gap:12px;margin-top:8px}@keyframes modalPop{from{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:640px){.course-modal{padding:20px;border-radius:22px}.course-modal .form-grid{grid-template-columns:1fr}.modal-actions{justify-content:stretch;flex-direction:column}.modal-actions .action-btn{width:100%}}

/* User edit popup modal */
.user-modal-backdrop{position:fixed;inset:0;z-index:200;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(7,24,45,.48);backdrop-filter:blur(10px)}.user-modal-backdrop.show{display:flex}.user-modal{width:min(680px,100%);background:#fff;border:1px solid #dce8f6;border-radius:28px;padding:26px;box-shadow:0 32px 90px rgba(7,24,45,.32);animation:modalPop .18s ease}.user-modal .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.user-modal .field.full{grid-column:1/-1}@media(max-width:640px){.user-modal{padding:20px;border-radius:22px}.user-modal .form-grid{grid-template-columns:1fr}}

/* Admin student grade input */
.admin-grade-card{display:grid;gap:16px}.admin-grade-card #adminStudentSelect{width:100%;min-height:52px;padding:13px 16px;border-radius:16px;border:1px solid #dce8f6;background:#fff;color:#123457;font-weight:900}.admin-grade-card .academic-grid{margin-top:18px}.admin-grade-card .action-btn{margin-top:8px}

/* Active student academic sync */
.active-student-card{display:grid;gap:8px;background:linear-gradient(135deg,#ffffff,#eef7ff)!important}.active-student-card h3{color:#1f5f9f;margin:0}.active-student-card p{font-size:18px;color:#123457}.active-student-card small{color:#60778f;font-weight:900}

/* Dosen student reference and per-student review */
.dosen-student-picker,.dosen-reference-card{background:linear-gradient(135deg,#fff,#eef7ff)!important}.dosen-student-picker #dosenStudentSelect{width:100%;min-height:52px;padding:13px 16px;border-radius:16px;border:1px solid #dce8f6;background:#fff;color:#123457;font-weight:900}.dosen-reference-card .assessment-snapshot{grid-template-columns:repeat(3,minmax(0,1fr))}.dosen-reference-card .assessment-snapshot div{background:#fff}@media(max-width:900px){.dosen-reference-card .assessment-snapshot{grid-template-columns:1fr}}

/* Smaller spider chart labels to avoid overlap */
.spider-svg text{font-size:7.5px!important;font-weight:800;letter-spacing:-.01em}.spider-svg tspan{font-size:7.5px!important}.spider-card svg{max-width:430px;margin:auto;display:block}.spider-card{overflow:hidden}@media(max-width:720px){.spider-svg text,.spider-svg tspan{font-size:6.5px!important}.spider-card svg{max-width:100%}}

/* Readable spider chart labels and visible zero-value academic chart */
.spider-svg text{font-size:9px!important;font-weight:900;letter-spacing:-.01em}.spider-svg tspan{font-size:9px!important}.spider-svg .spider-point{fill:#1f5f9f;stroke:#fff;stroke-width:1.5}.spider-card svg{max-width:460px;margin:auto;display:block}.spider-card polygon{fill:rgba(31,95,159,.16)!important;stroke:#1f5f9f!important;stroke-width:2!important}.spider-card polyline{stroke:#1f5f9f!important;stroke-width:2!important}@media(max-width:720px){.spider-svg text,.spider-svg tspan{font-size:8px!important}.spider-card svg{max-width:100%}}

/* SNA legend: show full content below spider chart */
.sna-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px;padding-top:12px;border-top:1px solid #dce8f6}.sna-legend span{display:flex;align-items:center;gap:7px;min-height:34px;padding:8px 10px;border-radius:12px;background:#f7fbff;color:#123457;font-size:12px;font-weight:900;line-height:1.25}.sna-legend b{display:grid;place-items:center;flex:0 0 30px;height:24px;border-radius:999px;background:#1f5f9f;color:#fff;font-size:11px}.sna-legend em{margin-left:auto;color:#1f5f9f;font-style:normal;font-weight:1000}.sna-legend.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.sna-legend.compact span{justify-content:space-between}.spider-svg text{font-size:12px!important;font-weight:1000!important}@media(max-width:720px){.sna-legend{grid-template-columns:1fr}.spider-svg text{font-size:10px!important}}

/* Clean SNA explanation bars */
.sna-note{margin:8px 0 4px;padding:12px 14px;border-radius:14px;background:#eef6ff;color:#24435f;font-size:13px;line-height:1.5}.sna-note b{color:#123f70}.sna-legend{display:grid!important;grid-template-columns:repeat(2,minmax(220px,1fr))!important;gap:10px!important;margin-top:12px!important;padding-top:14px!important;border-top:1px solid #dce8f6!important}.sna-legend span{display:grid!important;grid-template-columns:46px minmax(0,1fr) 54px!important;align-items:center!important;gap:10px!important;min-height:46px!important;padding:10px 12px!important;border-radius:16px!important;background:#f5f9fd!important;color:#173b5f!important;font-size:13px!important;font-weight:800!important;line-height:1.25!important;overflow:visible!important}.sna-legend b{display:flex!important;align-items:center!important;justify-content:center!important;width:46px!important;height:28px!important;border-radius:999px!important;background:#1f5f9f!important;color:#fff!important;font-size:12px!important;white-space:nowrap!important;overflow:hidden!important}.sna-legend small{display:block!important;color:#24435f!important;font-size:12px!important;font-weight:800!important;line-height:1.25!important;white-space:normal!important;overflow:visible!important}.sna-legend em{justify-self:end!important;color:#1f5f9f!important;font-style:normal!important;font-size:16px!important;font-weight:1000!important;white-space:nowrap!important}.sna-legend.compact span{grid-template-columns:minmax(0,1fr) 54px!important}.sna-legend.compact b{display:none!important}.sna-legend.compact small{font-size:13px!important}.spider-card{overflow:visible!important}@media(max-width:900px){.sna-legend{grid-template-columns:1fr!important}.sna-legend span{grid-template-columns:42px minmax(0,1fr) 52px!important}.sna-legend.compact span{grid-template-columns:minmax(0,1fr) 52px!important}}

/* Remove blue badges only from SNA Akademik legend */
.academic-legend span{grid-template-columns:minmax(0,1fr) 58px!important;padding-left:18px!important}.academic-legend b{display:none!important}.academic-legend small{font-size:15px!important;font-weight:900!important;color:#173b5f!important}.academic-legend em{font-size:18px!important}
