/* Openings | Formação e Graduação v1 — CSS com escopo grad- */
.grad-notice{padding:14px 18px;border:1px solid rgba(192,148,69,.45);background:rgba(136,92,27,.16);border-radius:14px;margin:18px 0;color:inherit;line-height:1.55}
.grad-panel{display:flex;gap:14px;justify-content:space-between;align-items:end;flex-wrap:wrap;padding:16px;background:rgba(22,42,63,.7);border:1px solid rgba(157,182,205,.18);border-radius:14px;margin:18px 0}
.grad-panel label,.grad-form label,.grad-inline label{display:grid;gap:5px;color:inherit;font-weight:650;min-width:0}
.grad-panel select,.grad-form input,.grad-form textarea,.grad-form select,.grad-inline select,.grad-inline input,.grad-table input,.grad-table select{max-width:100%;width:100%;box-sizing:border-box;background:#102b40;color:#fff;border:1px solid #38556c;border-radius:9px;padding:10px 11px;font:inherit}
.grad-form{display:grid;gap:15px}.grad-form textarea{resize:vertical;min-height:72px}
.grad-stage-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0 22px}
.grad-stage{padding:17px;border:1px solid rgba(161,186,212,.20);background:#10283a;border-radius:14px;display:grid;gap:8px}
.grad-stage h2{font-size:1.08rem;margin:0;line-height:1.35}.grad-stage p{font-size:.86rem;line-height:1.4;margin:0;color:#cad6df}.grad-stage small{color:#e5b959;text-transform:uppercase;font-weight:750;font-size:.71rem}.grad-stage b{font-size:.8rem;color:#e6b763}
.grad-columns{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:16px;margin:16px 0 22px}.grad-columns>.panel{margin:0;min-width:0}
.grad-roster{display:grid;gap:7px;max-height:420px;overflow:auto}.grad-roster>a,.grad-roster-row{display:flex;align-items:center;gap:12px;justify-content:space-between;padding:10px 12px;border:1px solid rgba(176,202,220,.18);border-radius:10px;text-decoration:none;color:inherit}
.grad-roster>a{flex-direction:column;align-items:start}.grad-roster small,.grad-roster>a small{color:#acc3d2;font-size:.8rem}
.grad-roster-row a{color:inherit;text-decoration:none}.grad-roster-row form{margin:0}.grad-actions{display:flex;gap:7px;flex-wrap:wrap}.grad-actions a{font-size:.78rem;color:#eac36d;text-decoration:none;border:1px solid rgba(235,183,75,.38);padding:6px;border-radius:7px}
.grad-inline{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:14px 0}.grad-inline>*:first-child{flex:1 1 220px}.grad-inline select{min-width:210px}
.grad-table-wrap{overflow:auto}.grad-table{border-collapse:collapse;width:100%;margin:14px 0}.grad-table th,.grad-table td{text-align:left;border-bottom:1px solid rgba(175,204,224,.22);padding:10px 12px;vertical-align:middle}.grad-table th{font-size:.78rem;text-transform:uppercase;color:#b6d0df}.grad-table td:first-child{white-space:nowrap}.grad-table select{min-width:145px}.grad-table input{min-width:180px}.grad-table a{color:#e7c66a}
.grad-feature{display:grid;grid-template-columns:1fr minmax(210px,280px);align-items:center;gap:18px;margin:16px 0}.grad-feature h3{margin:6px 0}.grad-feature small{color:#b7c4d2}.grad-feature a,.grad-link{color:#edcb74}
.grad-tabs{display:flex;gap:8px;margin:17px 0;flex-wrap:wrap}.grad-tabs a{display:inline-flex;padding:9px 14px;border:1px solid rgba(161,183,201,.3);border-radius:30px;color:inherit;text-decoration:none}.grad-tabs a.active{background:#244964;color:#fff;border-color:#d3a752}
.grad-stage-stat{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}.grad-stage-stat>div{display:grid;gap:5px;text-align:center;padding:17px 10px;background:#102f43;border:1px solid #365469;border-radius:13px}.grad-stage-stat b{font-size:1.6rem}.grad-stage-stat span{font-size:.82rem;color:#c1d3dc}
.grad-detail{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}.grad-detail-sticky{position:sticky;top:62px}
.grad-items{display:grid;max-height:700px;overflow:auto;gap:5px}.grad-item{display:flex;gap:10px;align-items:center;border:1px solid rgba(152,174,195,.20);border-radius:10px;padding:10px;color:inherit;text-decoration:none}.grad-item:hover,.grad-item.active{background:#193f59;border-color:#a78241}.grad-number{flex:none;display:grid;place-items:center;font-weight:700;background:rgba(228,180,78,.15);color:#f0c46c;width:32px;height:32px;border-radius:50%;font-size:.8rem}.grad-item-main{flex:1;min-width:0;display:grid;gap:5px}.grad-item-main b{font-size:.9rem}.grad-item-main small{font-size:.74rem;color:#a8c1d0}
.grad-status{display:inline-flex;padding:5px 9px;border-radius:30px;font-size:.74rem;white-space:nowrap;font-weight:700;border:1px solid #41607b;color:#d2dfeb}.grad-status-demonstrated{color:#afe4c5;border-color:#387c60;background:#173e36}.grad-status-practicing{color:#f2d49b;border-color:#876730;background:#4e3916}.grad-status-review{color:#ffbec0;border-color:#864b50;background:#4a252a}
.grad-3d{margin:14px 0;max-width:100%}.grad-3d .inline-3d-stage{min-height:160px}.grad-unlinked{border:1px dashed #637e8c;border-radius:12px;padding:26px 16px;font-size:.87rem;color:#c1d2dc;margin:16px 0}.grad-readiness{display:grid;gap:8px;margin:15px 0}.grad-comment{white-space:pre-wrap;color:#d2e0e9}.grad-mini{font-size:.78rem;color:#eed093}.grad-entry{padding:13px;border-bottom:1px solid #294e61}.grad-entry p{white-space:pre-wrap;margin:8px 0}
.grad-search-results{display:grid;gap:5px;max-height:260px;overflow:auto}.grad-search-results button{width:100%;text-align:left;border:1px solid #45677b;border-radius:7px;padding:9px;background:#173850;color:#fff;cursor:pointer}.grad-search-results button:hover,.grad-search-results button:focus{outline:1px solid #f2c45a}.grad-search-results small{display:block;color:#c2d3de;font-size:.72rem}
@media(max-width:950px){.grad-stage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.grad-columns,.grad-detail{grid-template-columns:1fr}.grad-detail-sticky{position:static}}@media(max-width:560px){.grad-stage-grid{grid-template-columns:1fr}.grad-feature{grid-template-columns:1fr}.grad-stage-stat{grid-template-columns:repeat(3,minmax(0,1fr))}.grad-item{flex-wrap:wrap}.grad-item-main{flex-basis:calc(100% - 45px)}.grad-item>.grad-status{margin-left:42px}.grad-roster-row{flex-wrap:wrap}.grad-stage-stat b{font-size:1.22rem}}

.grad-belt-list{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}.grad-belt-list span{padding:7px 12px;background:#26495a;border-radius:30px;border:1px solid #547182;font-size:.85rem}.grad-belts{justify-content:start}.grad-history{margin-top:16px;border-top:1px solid #3f6074;padding-top:14px}.grad-history summary{cursor:pointer;color:#ecc36c;font-weight:700}
