/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--green:#173f6b;--green-dark:#0a1e36;--green-soft:#e5edf6;--cream:#f4f1e9;--paper:#fffdf8;--ink:#182638;--muted:#68778b;--line:#d5d9df;--gold:#b8860b;--shadow:0 18px 50px #0a1e361a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);text-rendering:optimizelegibility;margin:0;font-family:Arial,Helvetica,sans-serif}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}.app-shell{min-height:100vh}.masthead{background:var(--green-dark);color:#fff;border-bottom:4px solid var(--gold);justify-content:space-between;align-items:center;height:76px;padding:0 clamp(22px,4vw,64px);display:flex}.brand{align-items:center;gap:12px;text-decoration:none;display:flex}.brand-mark{border:1px solid #ffffff80;place-items:center;width:42px;height:42px;font-family:Georgia,serif;font-weight:700;display:grid}.brand strong{letter-spacing:.01em;font-family:Georgia,serif;font-size:20px;display:block}.brand small{color:#bed0e3;text-transform:uppercase;letter-spacing:.14em;margin-top:2px;font-size:11px;display:block}.program-switcher{background:#ffffff0f;border:1px solid #ffffff47;border-radius:4px;gap:2px;padding:3px;display:flex}.program-switcher a,.program-switcher span{color:#c9d8e8;text-transform:uppercase;letter-spacing:.08em;border-radius:2px;padding:7px 11px;font-size:10px;font-weight:800;text-decoration:none}.program-switcher a:hover{color:#fff;background:#ffffff1a}.program-switcher .active{color:var(--green-dark);background:#fff}.masthead-meta{color:#d6e2ef;align-items:center;gap:9px;font-size:12px;display:flex}.status-dot{background:#e1bd4f;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #e1bd4f24}.workspace{max-width:1540px;margin:0 auto;padding:38px clamp(18px,3.5vw,52px) 64px}.intro{justify-content:space-between;align-items:end;gap:32px;margin-bottom:32px;display:flex}.eyebrow{color:var(--green);letter-spacing:.16em;margin:0 0 8px;font-size:11px;font-weight:800}h1,h2{font-family:Georgia,Times New Roman,serif}h1{letter-spacing:-.035em;margin:0;font-size:clamp(36px,4vw,60px);font-weight:500;line-height:1.02}.lede{max-width:720px;color:var(--muted);margin:14px 0 0;font-size:17px;line-height:1.55}.intro-links{flex-direction:column;flex:none;gap:8px;font-size:13px;display:flex}.intro-links a,.method-note a{color:var(--green);text-underline-offset:3px}.track-tabs{background:#e7e2d6;border:1px solid #cfcbbf;border-bottom:none;grid-template-columns:repeat(7,1fr);display:grid}.track-tabs button{color:#536477;cursor:pointer;background:0 0;border:0;border-right:1px solid #cfcbbf;min-height:70px;padding:12px;font-size:12px;line-height:1.25;transition:all .18s}.track-tabs button:last-child{border-right:0}.track-tabs button span{color:var(--green-dark);margin-bottom:5px;font-family:Georgia,serif;font-size:16px;font-weight:700;display:block}.track-tabs button:hover{background:#ffffff8c}.track-tabs button.active{background:var(--paper);color:var(--ink);box-shadow:inset 0 4px 0 var(--green)}.track-summary{background:var(--paper);min-height:118px;box-shadow:var(--shadow);border:1px solid #cfcbbf;grid-template-columns:minmax(340px,2fr) repeat(4,minmax(105px,.62fr));align-items:center;padding:22px 26px;display:grid}.requirement-banner{background:#f8f5ec;border:1px solid #cfcbbf;border-top:0;grid-template-columns:minmax(320px,1.35fr) minmax(240px,.9fr) auto;align-items:center;gap:18px;padding:18px 22px;display:grid}.requirement-banner.subfield-rule{border-left:5px solid var(--gold)}.requirement-copy strong{max-width:760px;font-family:Georgia,serif;font-size:16px;line-height:1.35;display:block}.requirement-copy>span{color:var(--muted);margin-top:5px;font-size:11px;display:block}.eligible-subfields small{color:#806117;text-transform:uppercase;letter-spacing:.1em;margin-bottom:7px;font-size:9px;font-weight:800;display:block}.eligible-subfields div{flex-wrap:wrap;gap:4px;display:flex}.eligible-subfields span{color:#694d12;background:#eee4ca;padding:4px 6px;font-size:9px;line-height:1.2}.rule-note{color:#6c5422;grid-column:1/-1;margin:-4px 0 0;font-size:10px;line-height:1.4}.rule-note>span{background:var(--gold);width:16px;height:16px;color:var(--green-dark);border-radius:50%;place-items:center;margin-right:7px;font-weight:800;display:inline-grid}.requirement-banner>a{color:var(--green);white-space:nowrap;text-underline-offset:3px;font-size:11px}.track-title{align-items:center;gap:16px;display:flex}.track-monogram{background:var(--green);color:#fff;border-radius:50%;flex:none;place-items:center;width:62px;height:62px;font-family:Georgia,serif;font-size:18px;font-weight:700;display:grid}.track-title p{color:var(--muted);letter-spacing:.14em;margin:0 0 3px;font-size:10px;font-weight:800}.track-title h2{margin:0;font-size:25px;font-weight:500}.track-title small{color:var(--muted);font-size:11px}.stat{border-left:1px solid var(--line);flex-direction:column;justify-content:center;min-height:64px;padding:6px 18px;display:flex}.stat strong{color:var(--green);font-family:Georgia,serif;font-size:29px;font-weight:500}.stat span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:11px}.stat.total strong{color:var(--gold)}.content-grid{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:22px;margin-top:22px;display:grid}.catalog-panel,.plan-panel{background:var(--paper);box-shadow:var(--shadow);border:1px solid #cfcbbf}.panel-heading,.plan-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:82px;padding:20px 22px;display:flex}.panel-heading h2,.plan-heading h2{margin:0;font-size:24px;font-weight:500}.result-count{color:var(--muted);font-size:12px}.catalog-tabs{border-bottom:1px solid var(--line);background:#eae7de;grid-template-columns:1fr 1fr;display:grid}.catalog-tabs button{color:#596a7d;cursor:pointer;text-align:left;background:0 0;border:0;border-right:1px solid #d1cec4;min-height:54px;padding:10px 18px;font-family:Georgia,serif;font-size:15px}.catalog-tabs button:last-child{border-right:0}.catalog-tabs button span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-top:3px;font-family:Arial,sans-serif;font-size:9px;display:block}.catalog-tabs button:hover{background:#ffffff8c}.catalog-tabs button.active{background:var(--paper);color:var(--green);box-shadow:inset 0 -3px 0 var(--green)}.elective-policy{background:#fbf6e8;border-bottom:1px solid #d8cfb8;padding:16px 18px}.elective-policy strong{color:#735716;font-family:Georgia,serif;font-size:15px;display:block}.elective-policy p{color:#574d37;margin:5px 0;font-size:11px;line-height:1.5}.elective-policy small{color:#7c725d;font-size:9px;line-height:1.4}.numbering-guide{background:#ffffff8c;border:1px solid #dfd2ad;grid-template-columns:repeat(4,minmax(0,1fr));margin:10px 0;display:grid}.numbering-guide span{color:#675c43;border-right:1px solid #dfd2ad;padding:8px 9px;font-size:9px;line-height:1.35}.numbering-guide span:last-child{border-right:0}.numbering-guide b{color:#735716;margin-bottom:2px;font-size:10px;display:block}.subfield-map{background:#f3f7fb;border-bottom:1px solid #cbd8e5;padding:16px 18px 18px}.subfield-map-heading{justify-content:space-between;align-items:start;gap:16px;margin-bottom:12px;display:flex}.subfield-map-heading strong{color:var(--green-dark);font-family:Georgia,serif;font-size:16px}.subfield-map-heading p{color:#586a7d;max-width:680px;margin:4px 0 0;font-size:10px;line-height:1.45}.subfield-map-heading>button{color:var(--green);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;flex:none;padding:5px 0;font-size:10px;text-decoration:underline}.subfield-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.subfield-card{background:#fff;border:1px solid #c6d4e2;transition:border-color .15s,box-shadow .15s}.subfield-card.active{border-color:var(--green);box-shadow:inset 3px 0 0 var(--green)}.subfield-card-select{width:100%;color:var(--green-dark);cursor:pointer;text-align:left;background:0 0;border:0;border-bottom:1px solid #e0e7ee;justify-content:space-between;align-items:baseline;gap:10px;padding:10px;display:flex}.subfield-card-select:hover{background:var(--green-soft)}.subfield-card-select strong{font-family:Georgia,serif;font-size:12px;line-height:1.25}.subfield-card-select span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;flex:none;font-size:8px}.subfield-codes{flex-wrap:wrap;gap:4px;padding:8px 10px 10px;display:flex}.subfield-codes span{color:#31557c;font-family:var(--font-geist-mono), monospace;background:#f7f9fc;border:1px solid #d4dfeb;padding:3px 5px;font-size:8px;line-height:1.2}.subfield-map>small{color:#6c5422;margin-top:10px;font-size:9px;line-height:1.4;display:block}.filters{border-bottom:1px solid var(--line);background:#fbf9f3;grid-template-columns:minmax(220px,1fr) 210px auto auto;align-items:end;gap:12px;padding:14px 16px;display:grid}.filter-label{color:var(--muted);letter-spacing:.12em;margin:0 0 6px;font-size:9px;font-weight:800;display:block}.search-field{background:#fff;border:1px solid #c9c8bf;align-items:center;gap:9px;height:42px;padding:0 12px;display:flex}.search-field span{color:var(--green);font-size:20px}.search-field input{background:0 0;border:0;outline:0;width:100%;font-size:12px}.filters select{width:100%;height:42px;color:var(--ink);background:#fff;border:1px solid #c9c8bf;padding:0 10px;font-size:12px}.term-filter{border:1px solid #c9c8bf;height:42px;display:flex}.term-filter button{min-width:42px;color:var(--muted);cursor:pointer;background:#fff;border:0;border-right:1px solid #d5d3ca;padding:0 10px;font-size:11px}.term-filter button:last-child{border-right:0}.term-filter button.active{background:var(--green);color:#fff}.reset-button{height:42px;color:var(--green);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0 10px;font-size:11px;text-decoration:underline}.table-wrap{overflow-x:auto}table{border-collapse:collapse;table-layout:fixed;width:100%}th{color:#56687b;text-align:left;letter-spacing:.1em;text-transform:uppercase;background:#f0ede5;border-bottom:1px solid #cfcdc4;padding:11px 12px;font-size:9px}th:first-child{width:30%}th:nth-child(2){width:35%}th:nth-child(3){width:auto}td{vertical-align:top;border-bottom:1px solid #e1dfd7;padding:15px 12px;font-size:12px;line-height:1.45}tbody tr{transition:background .14s}tbody tr:hover{background:#fbfaf6}.course-title-wrap{outline:none;margin-top:3px;display:block}.course-title-line{cursor:help;align-items:flex-start;gap:6px;width:fit-content;display:flex}.course-cell strong{font-family:Georgia,serif;font-size:15px;font-weight:600;line-height:1.22;display:block}.summary-hint{width:15px;height:15px;color:var(--green);border:1px solid #8296ab;border-radius:50%;flex:none;place-items:center;margin-top:1px;font-family:Georgia,serif;font-size:9px;font-style:italic;display:grid}.course-summary{opacity:0;color:#4d6075;max-height:0;margin:0;font-size:10px;line-height:1.45;transition:max-height .2s,opacity .16s,margin .2s;display:block;overflow:hidden}.course-title-wrap:hover .course-summary,.course-title-wrap:focus .course-summary{opacity:1;max-height:110px;margin-top:7px}.course-title-wrap:focus .course-title-line{outline-offset:3px;border-radius:1px;outline:2px solid #7ea3ca}.course-code{color:var(--green);text-underline-offset:2px;font-size:11px;font-weight:800;text-decoration-thickness:1px}.group-tags{flex-wrap:wrap;gap:3px;margin-top:7px;display:flex}.group-caption{color:#6b7888;text-transform:uppercase;letter-spacing:.06em;align-self:center;margin-right:2px;font-size:8px;font-weight:800}.group-tag{background:var(--green-soft);color:var(--green-dark);text-transform:uppercase;letter-spacing:.06em;padding:2px 6px;font-size:8px;line-height:1.25;display:inline-block}.course-note{color:#876516;margin-top:6px;line-height:1.3;display:block}.section-list{gap:7px;display:grid}.section-card{background:#f5f8fc;border:1px solid #cdd9e5;padding:8px}.section-card-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.term-badge{color:var(--green-dark);white-space:nowrap;background:#e7eef6;border:1px solid #c7d7e7;padding:4px 6px;font-size:10px;display:inline-flex}.section-add-button{border:1px solid var(--green);width:27px;height:27px;color:var(--green);cursor:pointer;background:#fff;border-radius:50%;flex:none;font-size:17px;line-height:1}.section-add-button:hover{background:var(--green);color:#fff}.section-add-button.selected{background:var(--green-soft);color:var(--green);cursor:default;border-color:#adc2d8}.section-professor{justify-content:space-between;align-items:baseline;gap:8px;margin-top:7px;display:flex}.section-professor>span{font-family:Georgia,serif;font-size:12px;line-height:1.25}.section-professor a{color:#8a6415;text-underline-offset:2px;flex:none;font-size:9px;font-weight:800}.prereq-cell{color:#43566b}.prereq-link{color:var(--green);text-underline-offset:2px;margin:1px 2px;font-weight:700;text-decoration-thickness:1px;display:inline-block}.prereq-link:hover{color:var(--green-dark);text-decoration-thickness:2px}.muted{color:#8b918d;font-style:italic}.empty-state{text-align:center;color:var(--muted);padding:64px 20px}.empty-state strong{margin-bottom:12px;display:block}.empty-state button{color:var(--green);cursor:pointer;background:0 0;border:0;text-decoration:underline}.plan-panel{position:sticky;top:16px}.plan-heading{background:var(--green-dark);color:#fff}.plan-heading .eyebrow{color:#b6cbe2}.plan-heading-actions{align-items:center;gap:12px;display:flex}.plan-heading-actions button{color:#d7e2ee;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:6px 0;font-size:9px;font-weight:700;text-decoration:underline}.plan-heading-actions button:hover:not(:disabled){color:#fff}.plan-heading-actions button:disabled{color:#7188a0;cursor:default;text-decoration:none}.plan-heading-actions span{border:1px solid #7895b4;border-radius:50%;place-items:center;width:44px;height:44px;font-family:Georgia,serif;display:grid}.progress-track{background:#d8e0e8;height:4px}.progress-track i{background:var(--gold);height:100%;transition:width .25s;display:block}.plan-term-tabs{border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.plan-term-tabs button{border:0;border-right:1px solid var(--line);color:var(--muted);cursor:pointer;background:#eeece5;padding:12px 8px;font-size:11px;font-weight:800}.plan-term-tabs button:last-child{border-right:0}.plan-term-tabs button small{margin-top:2px;font-size:9px;font-weight:400;display:block}.plan-term-tabs button.active{color:var(--green);box-shadow:inset 0 -3px 0 var(--green);background:#fff}.add-hint{border-bottom:1px solid var(--line);color:var(--muted);background:#fbf8ef;margin:0;padding:10px 16px;font-size:10px}.term-groups{max-height:480px;padding:14px;overflow-y:auto}.term-groups section{background:#f9f7f1;border:1px solid #dfddd4;margin-bottom:14px;padding:11px}.term-groups section.active-term{box-shadow:inset 3px 0 0 var(--green);border-color:#829fbe}.term-groups header{color:var(--green-dark);text-transform:uppercase;letter-spacing:.08em;justify-content:space-between;margin-bottom:8px;font-size:10px;font-weight:800;display:flex}.term-groups header small{color:var(--muted);letter-spacing:0;text-transform:none;font-weight:400}.planned-course{background:#fff;border:1px solid #d7d6cf;justify-content:space-between;align-items:start;gap:8px;margin-top:7px;padding:9px;display:flex}.planned-course strong{color:var(--green);font-size:10px;display:block}.planned-course span{margin-top:2px;font-family:Georgia,serif;font-size:12px;line-height:1.2;display:block}.planned-course small{color:var(--muted);margin-top:5px;font-size:9px;display:block}.planned-course button{color:#8a918d;cursor:pointer;background:0 0;border:0;font-size:17px}.empty-slot{color:#9ba09d;text-align:center;border:1px dashed #c8c8c0;padding:11px;font-size:10px}.degree-check{background:var(--green-soft);border-left:3px solid var(--green);margin:0 14px 14px;padding:14px}.degree-check div{justify-content:space-between;margin-bottom:7px;font-size:11px;display:flex}.degree-check .subfield-progress{border-bottom:1px solid #c2d1e0;align-items:start;gap:12px;padding-bottom:7px}.degree-check .subfield-progress strong{text-align:right;max-width:155px;color:var(--green-dark);font-size:10px;line-height:1.25}.degree-check p{color:var(--green-dark);margin:10px 0 0;font-size:10px;line-height:1.4}.privacy-note{color:var(--muted);margin:0;padding:0 15px 16px;font-size:9px;line-height:1.4}.method-note{background:#e9e5da;border:1px solid #d2cec2;grid-template-columns:260px minmax(0,1fr) auto;align-items:center;gap:30px;margin-top:22px;padding:26px;display:grid}.method-note h2{margin:0;font-size:23px;font-weight:500}.method-note>p{color:#56687b;margin:0;font-size:12px;line-height:1.65}.method-note a{white-space:nowrap;font-size:12px}.mem-intro{margin-bottom:24px}.mem-summary{background:var(--paper);min-height:112px;box-shadow:var(--shadow);border:1px solid #cfcbbf;grid-template-columns:minmax(330px,2fr) repeat(4,minmax(110px,.7fr));align-items:stretch;display:grid}.mem-summary>div{flex-direction:column;justify-content:center;padding:20px 22px;display:flex}.mem-summary>div+div{border-left:1px solid var(--line)}.mem-summary h2{margin:0 0 5px;font-size:24px;font-weight:500}.mem-summary small{color:var(--muted);font-size:10px;line-height:1.4}.mem-summary>div>strong{color:var(--green);font-family:Georgia,serif;font-size:30px;font-weight:500}.mem-summary>div>span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:9px}.mem-summary>div:last-child>strong{color:var(--gold)}.mem-rule-banner{background:#f8f1df;border:1px solid #d0c7ae;border-top:0;justify-content:space-between;align-items:center;gap:24px;padding:16px 20px;display:flex}.mem-rule-banner strong{color:#654d19;font-family:Georgia,serif;font-size:15px}.mem-rule-banner p{color:#655c47;max-width:950px;margin:4px 0 0;font-size:10px;line-height:1.5}.mem-rule-banner button{color:#74591d;cursor:pointer;background:#fff;border:1px solid #9a772c;flex:none;padding:9px 12px;font-size:10px;font-weight:800}.mem-rule-banner button:hover{background:#fff9e9}.ms-rule-link{color:#795b18;background:0 0;border:1px solid #c8a651;flex:none;padding:8px 11px;font-size:9px;font-weight:800;text-decoration:none}.ms-rule-link:hover{background:#fff9e9}.mem-builder-grid{grid-template-columns:minmax(0,1fr) 390px;align-items:start;gap:22px;margin-top:22px;display:grid}.mem-requirement-tabs{border-bottom:1px solid var(--line);background:#eae7de;grid-template-columns:repeat(3,1fr);display:grid}.mem-requirement-tabs button{color:#596a7d;cursor:pointer;text-align:left;background:0 0;border:0;border-right:1px solid #d1cec4;min-height:58px;padding:10px 14px;font-family:Georgia,serif;font-size:14px}.mem-requirement-tabs button:last-child{border-right:0}.mem-requirement-tabs button span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-top:3px;font-family:Arial,sans-serif;font-size:8px;display:block}.mem-requirement-tabs button.active{background:var(--paper);color:var(--green);box-shadow:inset 0 -3px 0 var(--green)}.ms-requirement-note{border-bottom:1px solid var(--line);color:#52667a;background:#eef3f8;align-items:baseline;gap:8px;padding:11px 16px;display:flex}.ms-requirement-note strong{color:var(--green-dark);font-family:Georgia,serif;font-size:11px}.ms-requirement-note span{font-size:9px;line-height:1.4}.ms-requirement-note.breadth{color:#6e5b2e;background:#fff5dc}.ms-requirement-note.breadth strong{color:#795b18}.mem-tags .approval-tag{color:#795b18;background:#fff0c5}.ms-conduct-requirement{background:var(--paper);box-shadow:var(--shadow);border:1px solid #cfcbbf;grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);margin-bottom:18px;display:grid}.ms-conduct-copy{padding:20px 24px}.ms-conduct-copy>a{color:var(--green);letter-spacing:.08em;font-size:10px;font-weight:900}.ms-conduct-copy h2{color:var(--green-dark);margin:5px 0 7px;font:700 22px/1.1 Georgia,serif}.ms-conduct-copy>p:last-child{max-width:680px;color:var(--muted);margin:0;font-size:10px;line-height:1.55}.ms-conduct-offering{align-self:stretch;margin:16px}.mem-school-folders{border-bottom:1px solid var(--line);background:#f3f0e7;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;padding:12px 14px;display:grid}.mem-school-folders button{text-align:left;color:#52667a;cursor:pointer;background:#fbfaf6;border:1px solid #d2cec1;grid-template-columns:1fr auto;gap:3px 8px;min-height:74px;padding:9px 10px;display:grid}.mem-school-folders button>span{color:var(--green-dark);font-family:Georgia,serif;font-size:11px}.mem-school-folders button>strong{color:var(--green);font-size:10px}.mem-school-folders button>small{color:var(--muted);grid-column:1/-1;font-size:7px;line-height:1.35}.mem-school-folders button.active{border-color:var(--green);background:var(--green-soft);box-shadow:inset 0 -3px 0 var(--green)}.mem-school-folders>a{color:var(--green);grid-column:1/-1;justify-self:end;font-size:8px;font-weight:800}.mem-filters{border-bottom:1px solid var(--line);background:#fbf9f3;grid-template-columns:1fr 240px;gap:12px;padding:14px 16px;display:grid}.mem-filters input,.mem-filters select{width:100%;height:40px;color:var(--ink);background:#fff;border:1px solid #c9c8bf;padding:0 10px;font-size:11px}.mem-filters select:disabled{color:#9a9e9b;background:#f0efea}.mem-course-list{display:grid}.mem-course-card{border-bottom:1px solid var(--line);grid-template-columns:minmax(220px,.85fr) minmax(300px,1.15fr);gap:18px;padding:16px;display:grid}.mem-course-card:last-child{border-bottom:0}.mem-course-card:hover{background:#fbfaf6}.mem-course-code-line{justify-content:space-between;align-items:center;gap:8px;display:flex}.mem-course-code-line a{color:var(--green);text-underline-offset:2px;font-size:10px;font-weight:800}.mem-course-code-line>span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:8px}.mem-course-copy h3{margin:5px 0 8px;font-family:Georgia,serif;font-size:16px;font-weight:600;line-height:1.25}.mem-tags{flex-wrap:wrap;gap:3px;display:flex}.mem-tags span{background:var(--green-soft);color:var(--green-dark);text-transform:uppercase;letter-spacing:.05em;padding:3px 5px;font-size:7px}.mem-course-copy>small{color:#786129;margin-top:8px;font-size:9px;line-height:1.4;display:block}.mem-offerings{gap:6px;display:grid}.mem-offering{background:#f5f8fc;border:1px solid #cdd9e5;justify-content:space-between;align-items:center;gap:10px;min-height:61px;padding:8px 9px;display:flex}.mem-offering>div{min-width:0}.mem-offering strong{color:var(--green-dark);font-size:10px;display:block}.mem-offering span{color:#52667a;margin-top:3px;font-size:9px;line-height:1.3;display:block}.mem-offering small{color:#8a6a25;margin-top:3px;font-size:8px;display:block}.meeting-conflict-note{font-weight:700;color:#9b3b2f!important}.mem-planned-course small{color:var(--muted);margin-top:4px;font-size:8px;display:block}.mem-offering a{color:#8a6415;text-underline-offset:2px;margin-top:4px;font-size:8px;font-weight:800;display:inline-block}.mem-offering>button{border:1px solid var(--green);width:28px;height:28px;color:var(--green);cursor:pointer;background:#fff;border-radius:50%;flex:none;font-size:17px}.mem-offering>button:hover:not(:disabled){background:var(--green);color:#fff}.mem-offering>button.selected{color:#fff;background:#2f7a47;border-color:#2f7a47}.mem-offering>button.selected:hover:not(:disabled){background:#245f38;border-color:#245f38}.mem-offering>button:disabled{background:var(--green-soft);color:var(--green);cursor:default;border-color:#bacbdc}.mem-plan-panel{background:var(--paper);box-shadow:var(--shadow);border:1px solid #cfcbbf;position:static}.mem-plan-heading{background:var(--green-dark);color:#fff;justify-content:space-between;align-items:center;min-height:82px;padding:18px;display:flex}.mem-plan-heading .eyebrow{color:#b6cbe2}.mem-plan-heading h2{margin:0;font-size:22px;font-weight:500}.mem-plan-heading button{color:#c8d8e8;cursor:pointer;background:0 0;border:0;font-size:9px;text-decoration:underline}.mem-progress{border-bottom:1px solid var(--line);background:#eef3f8;grid-template-columns:1fr 1fr;gap:6px;padding:12px 14px;display:grid}.mem-progress>div{color:#526579;background:#fff;justify-content:space-between;gap:8px;padding:7px 8px;font-size:9px;display:flex}.mem-progress strong{color:var(--green-dark)}.mem-progress>div.complete{color:#245f38;background:#e7f4ea;border:1px solid #a9cfb4}.mem-progress>div.complete strong{color:#245f38}.mem-progress .total{background:var(--green);color:#fff;grid-column:1/-1}.mem-progress .total strong{color:#fff}.mem-progress .total.complete{color:#fff;background:#2f7a47;border-color:#2f7a47}.mem-progress .total.complete strong{color:#fff}.mem-term-list{gap:9px;padding:12px;display:grid}.mem-term{background:#fff;border:1px solid #d9d8d0}.mem-term.summer{background:#fffaf0;border-color:#cfb76e}.mem-term>header{background:#f2f0e9;border-bottom:1px solid #e1e0d9;justify-content:space-between;align-items:center;padding:9px 10px;display:flex}.mem-term>header div{flex-direction:column;gap:2px;display:flex}.mem-term>header small{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-size:7px}.mem-term>header strong{color:var(--green-dark);font-size:10px}.mem-term>header>span{color:var(--muted);font-size:8px}.mem-planned-course{border-bottom:1px solid #ecebe5;justify-content:space-between;align-items:start;gap:8px;padding:8px 9px;display:flex}.mem-planned-course:last-of-type{border-bottom:0}.mem-planned-course strong{color:var(--green);font-size:8px;display:block}.mem-planned-course span{margin-top:2px;font-family:Georgia,serif;font-size:10px;line-height:1.25;display:block}.mem-planned-course button{color:#89918d;cursor:pointer;background:0 0;border:0;font-size:15px}.mem-empty-term{color:#929793;margin:0;padding:12px 9px;font-size:9px;font-style:italic}.mem-plan-warning{color:#79591b;background:#fff2d8;margin:0;padding:7px 9px;font-size:8px;line-height:1.35}.mem-method{grid-template-columns:250px minmax(0,1fr) auto}.ms-milestones{border-top:1px solid var(--line);background:#f8f6ef}.ms-milestones>div{justify-content:space-between;align-items:center;gap:10px;padding:11px 13px;display:flex}.ms-milestones>div .eyebrow{margin:0}.ms-milestones>div>strong{color:var(--green);text-transform:uppercase;letter-spacing:.06em;font-size:8px}.ms-milestones label{cursor:pointer;border-top:1px solid #e2e0d7;align-items:start;gap:9px;padding:10px 13px;display:flex}.ms-milestones input{accent-color:var(--green);margin-top:2px}.ms-milestones label>span{min-width:0}.ms-milestones label strong{color:var(--green-dark);font-size:9px;line-height:1.3;display:block}.ms-milestones label small{color:var(--muted);margin-top:3px;font-size:8px;line-height:1.4;display:block}.ms-milestones label.complete{background:#eef3f8}.ms-milestones label.complete strong{-webkit-text-decoration:line-through #8299b1;text-decoration:line-through #8299b1}footer{background:var(--green-dark);color:#c6d6e6;flex-wrap:wrap;justify-content:space-between;align-items:center;min-height:70px;padding:20px clamp(22px,4vw,64px);font-size:11px;display:flex}footer span:first-child{color:#fff;font-family:Georgia,serif;font-size:15px}.legal-disclaimer{color:#d8e3ee;text-align:center;border-top:1px solid #ffffff2e;width:100%;margin-top:14px;padding-top:12px;font-size:9px;line-height:1.45}.legal-disclaimer a{color:#fff;text-underline-offset:3px;font-weight:700}.legal-workspace{max-width:1120px;min-height:calc(100vh - 216px);margin:0 auto;padding:54px clamp(20px,5vw,72px) 72px}.legal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:36px;display:grid}.legal-grid section{border:1px solid var(--line);border-top:4px solid var(--gold);background:var(--paper);box-shadow:var(--shadow);padding:24px}.legal-grid h2{color:var(--green-dark);margin:0 0 12px;font-size:21px}.legal-grid a{color:var(--green);text-underline-offset:3px;font-weight:700}.legal-grid p{color:#526579;margin:0 0 10px;font-size:13px;line-height:1.65}.legal-grid p:last-child{margin-bottom:0}@media (width<=1180px){.content-grid{grid-template-columns:1fr}.plan-panel{position:static}.term-groups{grid-template-columns:repeat(3,1fr);gap:10px;max-height:none;display:grid}.track-summary{grid-template-columns:2fr repeat(4,1fr)}.filters{grid-template-columns:1fr 190px auto}.reset-button{display:none}.requirement-banner{grid-template-columns:1fr 1fr}.requirement-banner>a{justify-self:start}.mem-builder-grid{grid-template-columns:1fr}.mem-plan-panel{position:static}.mem-term-list{grid-template-columns:repeat(2,1fr);max-height:none}}@media (width<=860px){.masthead-meta{display:none}.workspace{padding-top:26px}.intro{flex-direction:column;align-items:start}.intro-links{flex-flow:wrap}.track-tabs{grid-template-columns:repeat(4,1fr)}.track-tabs button{border-bottom:1px solid #cfcbbf}.track-summary{grid-template-columns:repeat(4,1fr)}.track-title{grid-column:1/-1;padding-bottom:12px}.stat{border-left:0;border-top:1px solid var(--line)}.filters{grid-template-columns:1fr 1fr}.search-field{grid-column:1/-1}table{min-width:900px}.method-note{grid-template-columns:1fr;gap:16px}.method-note a{white-space:normal}.requirement-banner{grid-template-columns:1fr}.mem-summary{grid-template-columns:repeat(4,1fr)}.mem-summary>div:first-child{grid-column:1/-1}.mem-rule-banner{flex-direction:column;align-items:start}.mem-course-card,.ms-conduct-requirement{grid-template-columns:1fr}.mem-school-folders{grid-template-columns:repeat(2,minmax(0,1fr))}.mem-method,.legal-grid{grid-template-columns:1fr}}@media (width<=620px){.masthead{height:68px;padding-inline:16px}.brand strong{font-size:17px}.brand small{display:none}.program-switcher a,.program-switcher span{padding:6px 7px;font-size:8px}h1{font-size:39px}.track-tabs{display:flex;overflow-x:auto}.track-tabs button{min-width:125px}.track-summary{grid-template-columns:repeat(2,1fr);padding:18px}.track-title h2{font-size:21px}.filters{grid-template-columns:1fr}.numbering-guide{grid-template-columns:1fr 1fr}.numbering-guide span:nth-child(2){border-right:0}.numbering-guide span:nth-child(-n+2){border-bottom:1px solid #dfd2ad}.subfield-map-heading{flex-direction:column;gap:6px}.subfield-grid{grid-template-columns:1fr}.search-field{grid-column:auto}.term-groups{grid-template-columns:1fr}.mem-summary{grid-template-columns:1fr 1fr}.mem-summary>div:first-child{grid-column:1/-1}.mem-summary>div+div{border-top:1px solid var(--line);border-left:0}.mem-requirement-tabs{grid-template-columns:1fr}.mem-requirement-tabs button{border-bottom:1px solid #d1cec4;border-right:0}.mem-filters,.mem-term-list{grid-template-columns:1fr}footer{flex-direction:column;align-items:start;gap:6px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
