:root{--ssu-blue:#004c97;--ssu-blue-dark:#003a75;--ssu-blue-50:#accae9;--ssu-blue-25:#e8f2fe;--ssu-blue-10:#f3f8fe;--black:#1b1b1b;--grey-dark:#535554;--grey:#8a8c8e;--grey-light:#cdcfd3;--grey-lighter:#e9eaec;--field-dark:#7b3b0c;--field:#efb532;--field-light:#ffe39c;--hills-dark:#326027;--hills:#7abc57;--hills-light:#d9eda4;--salmon-dark:#98363d;--salmon:#f59470;--salmon-light:#ffd6c7;--grape-dark:#6d4181;--grape:#ae8ac9;--grape-light:#e6cce0;--lakes-dark:#1d5d65;--lakes:#5fcbd5;--lakes-light:#d0efef;--warning:#ac0000;--bg:#f6f8fb;--surface:#fff;--border:#d9e4f2;--radius:6px;--shadow:none;--font:"Segoe UI", system-ui, -apple-system, Roboto, "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{font-family:var(--font);color:var(--black);background:var(--bg);margin:0;font-size:15px;line-height:1.5}a{color:var(--ssu-blue);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{color:var(--ssu-blue-dark);margin:0 0 .5rem;line-height:1.2}h1{letter-spacing:-.01em;font-size:1.9rem}h2{font-size:1.3rem}h3{font-size:1.05rem}code,.mono{font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:.92em}button{font:inherit}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--grey-lighter);vertical-align:top;padding:.5rem .6rem}th{text-transform:uppercase;letter-spacing:.04em;color:var(--grey-dark);background:var(--ssu-blue-10);font-size:.78rem}tr:hover td{background:#fbfdff}.topbar{background:var(--ssu-blue);color:#fff;border-bottom:4px solid var(--ssu-blue-50)}.topbar-inner{flex-wrap:wrap;align-items:center;gap:1.25rem;max-width:1180px;margin:0 auto;padding:.7rem 1.25rem;display:flex}.brand{color:#fff;letter-spacing:.01em;align-items:center;gap:.7rem;font-size:1.15rem;font-weight:700;display:flex}.brand:hover{text-decoration:none}.brand-mark{width:38px;height:38px;color:var(--ssu-blue);letter-spacing:-.02em;background:#fff;border-radius:8px;place-items:center;font-size:.95rem;font-weight:800;display:grid}.brand small{opacity:.85;letter-spacing:.02em;font-size:.72rem;font-weight:400;display:block}.nav{flex-wrap:wrap;gap:.25rem;display:flex}.nav a{color:#fff;opacity:.92;border-radius:6px;padding:.45rem .75rem;font-weight:500}.nav a:hover,.nav a.active{opacity:1;background:#ffffff24;text-decoration:none}.topbar .search{flex:260px;min-width:260px;max-width:420px;margin-left:auto}.page{max-width:1180px;margin:0 auto;padding:1.5rem 1.25rem 4rem}.footer{text-align:center;color:var(--grey-dark);border-top:1px solid var(--grey-lighter);padding:2rem 1rem;font-size:.82rem}.search{position:relative}.search input{border:1px solid var(--ssu-blue-50);width:100%;font:inherit;color:var(--black);background:#fff;border-radius:8px;padding:.55rem .8rem .55rem 2.2rem}.search input:focus{outline:2px solid var(--ssu-blue-50);outline-offset:1px}.search .icon{color:var(--grey);pointer-events:none;position:absolute;top:50%;left:.7rem;transform:translateY(-50%)}.search-results{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);z-index:20;max-height:70vh;color:var(--black);background:#fff;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:auto}.search-results h4{text-transform:uppercase;letter-spacing:.05em;color:var(--grey-dark);background:var(--ssu-blue-10);margin:0;padding:.5rem .8rem;font-size:.72rem}.search-results a{color:var(--black);border-bottom:1px solid var(--grey-lighter);justify-content:space-between;gap:1rem;padding:.5rem .8rem;display:flex}.search-results a:hover,.search-results a.focus{background:var(--ssu-blue-25);text-decoration:none}.search-results .muted{color:var(--grey-dark);white-space:nowrap;font-size:.85rem}.search-results .empty{color:var(--grey-dark);padding:.8rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.1rem 1.25rem}.card+.card{margin-top:1rem}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.5rem;display:flex}.grid{gap:1rem;display:grid}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.grid-6{grid-template-columns:repeat(auto-fit,minmax(165px,1fr))}.badge{text-transform:uppercase;letter-spacing:.04em;background:var(--grey-lighter);color:var(--grey-dark);vertical-align:middle;border-radius:999px;padding:.15rem .5rem;font-size:.72rem;font-weight:600;display:inline-block}.badge-major{background:var(--ssu-blue);color:#fff}.badge-minor{background:var(--lakes-light);color:var(--lakes-dark)}.badge-masters{background:var(--grape-light);color:var(--grape-dark)}.badge-credential{background:var(--hills-light);color:var(--hills-dark)}.badge-certificate{background:var(--field-light);color:var(--field-dark)}.badge-authorization{background:var(--salmon-light);color:var(--salmon-dark)}.badge-concentration{background:var(--ssu-blue-25);color:var(--ssu-blue-dark)}.badge-roadmap{background:var(--grey-lighter);color:var(--grey-dark)}.badge-ge{background:var(--ssu-blue-25);color:var(--ssu-blue-dark)}.badge-rule{background:var(--field-light);color:var(--field-dark);text-transform:none;letter-spacing:0;font-weight:600}.chip{border:1px solid var(--ssu-blue-50);color:var(--ssu-blue-dark);cursor:pointer;background:#fff;border-radius:999px;padding:.3rem .75rem;font-size:.85rem;display:inline-block}.chip:hover{background:var(--ssu-blue-25);text-decoration:none}.chip.active{background:var(--ssu-blue);border-color:var(--ssu-blue);color:#fff}.chips{flex-wrap:wrap;gap:.4rem;display:flex}.muted{color:var(--grey-dark)}.small{font-size:.85rem}.crumbs{color:var(--grey-dark);margin-bottom:.6rem;font-size:.85rem}.crumbs a{color:var(--ssu-blue)}.crumbs span{color:var(--grey-light);margin:0 .4rem}.stat{background:var(--ssu-blue-10);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:.1rem;padding:.8rem 1rem;display:flex}.stat b{color:var(--ssu-blue-dark);font-size:1.35rem}.stat span{text-transform:uppercase;letter-spacing:.04em;color:var(--grey-dark);font-size:.78rem}.toolbar{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.toolbar select,.toolbar input[type=text]{border:1px solid var(--grey-light);font:inherit;background:#fff;border-radius:8px;min-width:180px;padding:.5rem .7rem}.toolbar label{color:var(--grey-dark);flex-direction:column;gap:.2rem;font-size:.8rem;display:flex}.loading{text-align:center;color:var(--grey-dark);padding:3rem}.loading:before{content:"";border:3px solid var(--ssu-blue-25);border-top-color:var(--ssu-blue);border-radius:50%;width:28px;height:28px;margin:0 auto .75rem;animation:.9s linear infinite spin;display:block}@keyframes spin{to{transform:rotate(360deg)}}.error{color:var(--warning);background:#fff3f3;border:1px solid #f0c0c0;border-radius:8px;padding:1rem}.notice{background:var(--field-light);border-left:4px solid var(--field);border-radius:6px;padding:.7rem .9rem;font-size:.9rem}.hero{border-bottom:1px solid var(--border);margin-bottom:1.5rem;padding:.1rem 0 1.4rem}.hero h1{margin-bottom:.3rem;font-size:1.55rem}.hero p{color:var(--grey-dark);max-width:560px;margin:0 0 1rem;font-size:.95rem}.hero-row{flex-wrap:wrap;align-items:stretch;gap:.6rem;display:flex}.hero-row .search{flex:420px;max-width:480px}.hero-row .search input{border:1px solid var(--grey-light)}.btn-link{white-space:nowrap;align-items:center;display:inline-flex}.quicklinks{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);grid-template-columns:repeat(4,1fr);margin-bottom:1.5rem;display:grid;overflow:hidden}.quicklink{color:var(--black);border-right:1px solid var(--border);border-bottom:1px solid var(--border);flex-direction:column;gap:.15rem;padding:.8rem 1rem;display:flex}.quicklink:hover{background:var(--ssu-blue-10);text-decoration:none}.quicklink b{color:var(--ssu-blue-dark);font-size:.95rem;font-weight:600}@media (width<=800px){.quicklinks{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.quicklinks{grid-template-columns:1fr}}.dept-list{columns:3;column-gap:1.5rem;margin:0;padding:0;list-style:none}.dept-list li{break-inside:avoid;padding:.3rem 0}@media (width<=800px){.dept-list{columns:2}}@media (width<=520px){.dept-list{columns:1}}.program-list{margin:0;padding:0;list-style:none}.program-list li{border-bottom:1px solid var(--grey-lighter);align-items:center;gap:.6rem;padding:.45rem 0;display:flex}.program-list li:last-child{border-bottom:none}.program-list .badge{margin-left:auto}.req-group{margin-bottom:1rem}.req-group h2,.req-group h3{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.req-group .units{color:var(--grey-dark);font-size:.85rem;font-weight:500}details.req-collapsible{margin:0}details.req-collapsible>summary{cursor:pointer;list-style:none}details.req-collapsible>summary::-webkit-details-marker{display:none}details.req-collapsible>summary h2,details.req-collapsible>summary h3{display:inline-flex}details.req-collapsible>summary:before{content:"▸";width:.9em;color:var(--ssu-blue);margin-right:.4rem;font-size:.85em;transition:transform .1s;display:inline-block}details.req-collapsible[open]>summary:before{transform:rotate(90deg)}details.req-collapsible>summary:hover h2,details.req-collapsible>summary:hover h3{text-decoration:underline}.req-group-body{margin-top:.5rem}details.req-sub-card{background:var(--ssu-blue-10);border-left:3px solid var(--ssu-blue-50);border-radius:0 6px 6px 0;margin-top:.7rem;padding:.6rem .8rem}details.req-sub-card>summary{padding:0}details.req-sub-card .req-group-body{margin-top:.4rem}.req-note{color:var(--grey-dark);margin:.25rem 0 .5rem;font-size:.92rem}.req-sub{background:var(--ssu-blue-10);border-left:3px solid var(--ssu-blue-50);border-radius:0 6px 6px 0;margin-top:.6rem;padding:.6rem .8rem}.req-sub-label{color:var(--ssu-blue-dark);flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.3rem;font-size:.92rem;font-weight:600;display:flex}.req-items{margin:0;padding:0;list-style:none}.req-items li{border-bottom:1px dashed var(--grey-lighter);grid-template-columns:1.5rem 6.2rem 1fr auto;align-items:baseline;gap:.6rem;padding:.32rem 0;display:grid}.req-items li:last-child{border-bottom:none}.req-items .code{white-space:nowrap;font-weight:600}.req-items .units{color:var(--grey-dark);white-space:nowrap;font-size:.88rem}.req-items li.connector{text-align:center;letter-spacing:.1em;color:var(--field-dark);border:none;padding:0;font-size:.72rem;font-weight:700;display:block}.req-items .placeholder .code{color:var(--grey-dark);font-weight:500}.req-items li.note-item{color:var(--grey-dark);font-size:.88rem;font-style:italic;display:block}.req-items .item-note{color:var(--grey-dark);font-size:.85rem}.prereq-chart .req-note{margin-bottom:.6rem}.prereq-legend{color:var(--grey-dark);flex-wrap:wrap;gap:1rem;margin:0 0 .9rem;font-size:.8rem;display:flex}.prereq-legend-item{align-items:center;gap:.35rem;display:inline-flex}.prereq-swatch{border:1.5px solid var(--grey-light);background:#fafbfc;border-radius:3px;width:12px;height:12px;display:inline-block}.prereq-swatch.ready{border-color:var(--ssu-blue);border-width:2px}.prereq-swatch.progress{background:var(--field-light);border-color:var(--field-dark)}.prereq-swatch.done{background:var(--hills-light);border-color:var(--hills-dark)}.prereq-scroll{padding-bottom:.3rem;overflow-x:auto}.prereq-box{box-sizing:border-box;border:1.5px solid var(--grey-light);width:100%;height:100%;color:var(--black);background:#fafbfc;border-radius:6px;flex-direction:column;justify-content:center;gap:2px;padding:.4rem .55rem;font-size:.76rem;line-height:1.25;display:flex;overflow:hidden}.prereq-box:hover{border-color:var(--ssu-blue);text-decoration:none}.prereq-box b{color:var(--grey-dark);font-size:.8rem}.prereq-box span{color:var(--grey-dark);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.prereq-box.is-ready{border-color:var(--ssu-blue);background:#fff;border-width:2px}.prereq-box.is-ready b{color:var(--ssu-blue-dark)}.prereq-box.status-progress{background:var(--field-light);border-color:var(--field-dark)}.prereq-box.status-progress b{color:var(--field-dark)}.prereq-box.status-done{background:var(--hills-light);border-color:var(--hills-dark)}.prereq-box.status-done b{color:var(--hills-dark)}.prereq-box.is-dim{opacity:.3}.roadmap-year{margin-bottom:1.25rem}.roadmap-year h2{margin-bottom:.6rem}.roadmap-terms{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;display:grid}.roadmap-term{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.9rem 1rem}.roadmap-term h3{border-bottom:2px solid var(--ssu-blue-25);justify-content:space-between;padding-bottom:.4rem;font-size:.95rem;display:flex}.course-layout{grid-template-columns:230px 1fr;align-items:start;gap:1.25rem;display:grid}@media (width<=800px){.course-layout{grid-template-columns:1fr}}.side{max-height:calc(100vh - 2rem);position:sticky;top:1rem;overflow:auto}.side a{color:var(--black);border-radius:6px;justify-content:space-between;padding:.3rem .5rem;font-size:.9rem;display:flex}.side a:hover,.side a.active{background:var(--ssu-blue-25);color:var(--ssu-blue-dark);text-decoration:none}.side a .n{color:var(--grey);font-size:.8rem}.course-row{border-bottom:1px solid var(--grey-lighter);grid-template-columns:6.5rem 1fr auto;align-items:baseline;gap:.75rem;padding:.5rem 0;display:grid}.course-row .code{white-space:nowrap;font-weight:600}.dl{grid-template-columns:max-content 1fr;gap:.35rem 1rem;margin:0;display:grid}.dl dt{color:var(--grey-dark);text-transform:uppercase;letter-spacing:.03em;font-size:.85rem}.dl dd{margin:0}.desc{font-size:1.02rem;line-height:1.65}.pill-list{flex-wrap:wrap;gap:.4rem;display:flex}.pill-list a{background:var(--ssu-blue-25);border-radius:999px;padding:.25rem .6rem;font-size:.88rem}.pill-list a:hover{background:var(--ssu-blue-50);text-decoration:none}.sec-table td.nowrap,.nowrap{white-space:nowrap}.sec-table .sub{color:var(--grey-dark);font-size:.85rem}.sec-table tr.secondary td{background:var(--ssu-blue-10)}.sec-table tr.secondary td:first-child{padding-left:1.5rem}.days{gap:2px;display:inline-flex}.days i{background:var(--grey-lighter);width:18px;height:18px;color:var(--grey);border-radius:4px;place-items:center;font-size:.7rem;font-style:normal;font-weight:700;display:grid}.days i.on{background:var(--ssu-blue);color:#fff}.fn{cursor:help;border-bottom:1px dotted var(--grey);color:var(--grey-dark);margin-right:.3rem;font-size:.8rem}.table-wrap{overflow-x:auto}.req-items .check{align-items:center;display:flex}.req-items li.done .code a{color:var(--hills-dark)}.req-items li.done>span:nth-child(3){color:var(--grey-dark);text-decoration:line-through;-webkit-text-decoration-color:var(--grey-light);text-decoration-color:var(--grey-light)}.req-items li.in-progress{background:var(--field-light);border-bottom-color:#0000;border-radius:4px;margin:0 -.5rem;padding-left:.5rem;padding-right:.5rem}.status-btn{border:1.5px solid var(--grey-light);cursor:pointer;color:#fff;background:#fff;border-radius:4px;flex:none;place-items:center;width:17px;height:17px;padding:0;font-size:.72rem;font-weight:800;line-height:1;display:grid}.status-btn:hover{border-color:var(--ssu-blue)}.status-btn.status-in_progress{background:var(--field);border-color:var(--field-dark)}.status-btn.status-done{background:var(--hills-dark);border-color:var(--hills-dark)}.badge-progress{background:var(--field-light);color:var(--field-dark);text-transform:none;letter-spacing:0;margin-left:.5rem}.status-chip{border:1px solid var(--ssu-blue-50);cursor:pointer}.status-chip.status-in_progress{background:var(--field-light);border-color:var(--field-dark);color:var(--field-dark)}.status-chip.status-done{background:var(--hills-light);border-color:var(--hills-dark);color:var(--hills-dark)}.badge-offered{background:var(--hills-light);color:var(--hills-dark);text-transform:none;letter-spacing:0;margin-left:.5rem}.badge-plan{background:var(--hills-light);color:var(--hills-dark)}.progress{color:var(--grey-dark);align-items:center;gap:.5rem;font-size:.8rem;font-weight:500;display:inline-flex}.progress-bar{background:var(--grey-lighter);border-radius:999px;width:90px;height:8px;display:inline-block;overflow:hidden}.progress-bar span{background:var(--ssu-blue);border-radius:999px;height:100%;transition:width .2s;display:block}.progress.complete .progress-bar span{background:var(--hills)}.progress.complete .progress-text{color:var(--hills-dark)}.stat-progress .progress{margin-top:.3rem}.stat-progress .progress-bar{flex:1}.nav-plan{background:#ffffff29}.btn-primary{background:var(--ssu-blue);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:.65rem 1.2rem;font-weight:600}.btn-primary:hover{background:var(--ssu-blue-dark)}.btn-primary:disabled{background:var(--grey-light);cursor:not-allowed}.picker-label{color:var(--grey-dark);margin-bottom:.3rem;font-size:.8rem;display:block}.picker input{border:1px solid var(--grey-light);width:100%;font:inherit;border-radius:8px;padding:.55rem .7rem}.picker-list{border:1px solid var(--grey-lighter);border-radius:8px;max-height:300px;margin-top:.4rem;overflow:auto}.picker-list button{text-align:left;border:none;border-bottom:1px solid var(--grey-lighter);cursor:pointer;width:100%;color:var(--black);background:#fff;justify-content:space-between;gap:1rem;padding:.45rem .7rem;display:flex}.picker-list button:hover{background:var(--ssu-blue-25)}.plan-program h2{align-items:center;gap:.5rem;display:flex}.prose p{margin:0 0 .6rem;line-height:1.6}.prose p:last-child{margin-bottom:0}.req-exclude h2,.req-exclude h3,.req-exclude .req-items .code a{color:var(--grey-dark)}.badge-repeat{background:var(--grape-light);color:var(--grape-dark);text-transform:none;letter-spacing:0;margin-left:.5rem}.units-earned{color:var(--grey-dark);white-space:nowrap;align-items:center;gap:.35rem;font-size:.85rem;display:inline-flex}.units-earned input{border:1px solid var(--ssu-blue-50);width:3.2rem;font:inherit;text-align:right;border-radius:6px;padding:.15rem .3rem}.link-btn{color:var(--ssu-blue);cursor:pointer;background:0 0;border:none;padding:0 .3rem;font-size:.8rem}.link-btn:hover{text-decoration:underline}.audit-page-head{justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1rem;display:flex}.audit-page-head h1{margin-bottom:.2rem}.audit-page-head p{color:var(--grey-dark);margin:0}.text-link{white-space:nowrap;font-weight:600}.audit-notice{border-left:3px solid var(--ssu-blue);color:var(--grey-dark);background:#fff;margin:0 0 1.25rem;padding:.7rem .9rem;font-size:.9rem}.grad-summary{background:var(--ssu-blue);border-radius:var(--radius);color:#fff;flex-direction:column;gap:.2rem;margin-bottom:1rem;padding:1rem 1.1rem;display:flex}.grad-summary b{font-size:1.15rem}.grad-summary span{opacity:.9;font-size:.88rem}.grad-summary-done{background:var(--hills-dark)}.lead-note{background:var(--ssu-blue-10);border-left:3px solid var(--ssu-blue);border-radius:0 6px 6px 0;margin:0 0 1.1rem;padding:.7rem .9rem;font-size:.95rem}.lead-note b{color:var(--ssu-blue-dark)}.degree-audit{flex-direction:column;gap:.8rem;display:flex}.audit-program{border:1px solid var(--grey-light);background:#fff;border-radius:4px;overflow:hidden}.audit-program.is-complete{border-color:#b9d1c3}.audit-program-head{width:100%;color:var(--black);text-align:left;cursor:pointer;background:#fff;border:0;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1rem;display:flex}.audit-program-head:hover{background:#f8fafc}.audit-program-title{align-items:center;gap:.75rem;min-width:0;display:flex}.audit-program-title>span:last-child{flex-direction:column;min-width:0;display:flex}.audit-program-title b{color:var(--ssu-blue-dark);font-size:1.05rem}.audit-program-title small{color:var(--grey-dark);text-transform:capitalize;margin-top:.08rem;font-size:.78rem}.audit-check{border:1.5px solid var(--grey-light);color:#fff;border-radius:2px;flex:0 0 20px;place-items:center;width:20px;height:20px;font-size:.75rem;font-weight:800;display:grid}.is-complete>.audit-program-head .audit-check,.audit-requirement.is-complete>summary .audit-check{background:var(--hills-dark);border-color:var(--hills-dark)}.audit-program-status{color:var(--grey-dark);white-space:nowrap;font-size:.85rem}.disclosure{width:1rem;color:var(--ssu-blue);text-align:center;margin-left:.5rem;font-size:1.1rem;display:inline-block}.audit-program-body{border-top:1px solid var(--grey-lighter);padding:0 1rem 1rem}.audit-links{color:var(--grey-dark);margin:.7rem 0;font-size:.85rem}.audit-description{background:var(--ssu-blue-10);color:var(--grey-dark);margin:.8rem 0;padding:.7rem .8rem;font-size:.9rem}.audit-group{border-bottom:1px solid var(--grey-lighter);padding:.7rem 0}.audit-group:last-of-type{border-bottom:0}.audit-group .req-group{margin:0}.audit-group>summary h2,.audit-group .req-group h2{font-size:1.05rem}.audit-group .req-group h3{font-size:.95rem}.audit-group .progress-bar{display:none}.audit-group .progress{margin-left:auto}.audit-program-body>.card{border:1px solid var(--grey-lighter);box-shadow:none;border-radius:3px;margin-top:.8rem}.manual-adjustments{border-top:1px solid var(--grey-lighter);margin-top:.8rem}.manual-adjustments>summary{color:var(--ssu-blue);cursor:pointer;padding:.7rem 0;font-size:.85rem;font-weight:600}.manual-adjustments>.card{border:1px solid var(--grey-lighter);box-shadow:none;border-radius:3px;margin:0}.audit-summary{border-bottom:2px solid var(--ssu-blue-dark);color:var(--grey-dark);justify-content:space-between;gap:1rem;margin:0 0 1rem;padding-bottom:.7rem;display:flex}.audit-summary b{color:var(--black)}.audit-section{margin-top:1.2rem}.audit-section>h2{color:var(--black);margin-bottom:.45rem;font-size:1.02rem}.audit-requirements{border:1px solid var(--grey-light);background:#fff;border-radius:3px}.audit-requirement+.audit-requirement{border-top:1px solid var(--grey-lighter)}.audit-requirement>summary{cursor:pointer;grid-template-columns:auto minmax(220px,1fr) auto auto;align-items:center;gap:.75rem;min-height:52px;padding:.65rem .8rem;list-style:none;display:grid}.audit-requirement>summary::-webkit-details-marker{display:none}.audit-requirement>summary:after{content:"+";width:1rem;color:var(--ssu-blue);text-align:center;font-size:1.05rem}.audit-requirement[open]>summary:after{content:"−"}.audit-requirement>summary:hover{background:#f8fafc}.audit-requirement-name{grid-template-columns:5.5rem minmax(0,1fr);gap:.6rem;min-width:0;display:grid}.audit-requirement-name b{color:var(--ssu-blue-dark)}.audit-requirement-name span{color:var(--black)}.audit-result{color:var(--grey-dark);white-space:nowrap;font-size:.82rem}.audit-requirement.is-complete .audit-result{color:var(--hills-dark);font-weight:600}.audit-requirement-body{border-top:1px solid var(--grey-lighter);padding:.2rem .8rem .85rem 3.05rem}.audit-rule{color:var(--grey-dark);margin:.65rem 0;font-size:.86rem}.manual-complete{background:var(--ssu-blue-10);cursor:pointer;align-items:flex-start;gap:.55rem;margin:.6rem 0 .8rem;padding:.55rem .65rem;display:flex}.manual-complete input{width:16px;height:16px;accent-color:var(--ssu-blue);margin:.15rem 0 0}.manual-complete span{flex-direction:column;font-size:.85rem;display:flex}.manual-complete small{color:var(--grey-dark);font-size:.78rem}.audit-course-list{border-top:1px solid var(--grey-lighter)}.audit-course-list li{padding:.5rem 0}.course-copy{min-width:0}.course-prereq{color:var(--grey-dark);margin-top:.25rem;font-size:.78rem;line-height:1.4;display:block}.course-prereq.needs-review{color:var(--field-dark)}.prereq-missing{font-weight:600;display:block}.course-side{justify-content:flex-end;align-items:center;gap:.45rem;display:flex}.course-side .badge{white-space:nowrap}.audit-footer-note{border-top:1px solid var(--grey-light);color:var(--grey-dark);margin-top:1.25rem;padding-top:.8rem;font-size:.82rem}.audit-footer-note p{margin:0 0 .45rem}.danger-link{color:var(--warning);padding-left:0}@media (width<=700px){.audit-page-head{flex-direction:column;align-items:flex-start}.audit-program-head{align-items:flex-start}.audit-program-status{white-space:normal;text-align:right}.audit-requirement>summary{grid-template-columns:auto minmax(0,1fr) auto}.audit-requirement-name{flex-direction:column;gap:0;display:flex}.audit-result{white-space:normal;grid-column:2}.audit-requirement>summary:after{grid-area:1/3/span 2}.audit-requirement-body{padding-left:.8rem}.audit-course-list li,.audit-group .req-items li{grid-template-columns:1.5rem 5.6rem minmax(0,1fr)}.audit-course-list .course-side,.audit-group .req-items>li>.units{grid-column:3;justify-content:flex-start}}
