:root{font-size:16px;--line:var(--rule);--soft:var(--quiet-bg)}
.brand span{margin:0;letter-spacing:0;color:var(--ink)}.mast-menu{gap:clamp(12px,2vw,26px)}.mast-side{position:relative}.profile summary{cursor:pointer;list-style:none}.profile summary::-webkit-details-marker{display:none}.profile-menu{position:absolute;z-index:4;right:0;top:calc(100% + 8px);min-width:186px;display:grid;gap:4px;padding:12px;border:1px solid var(--rule);border-radius:var(--radius-control);background:white;box-shadow:0 9px 30px #1829411c}.profile-menu small{color:var(--muted);text-transform:capitalize}.profile-menu button{text-align:left;padding:8px 0;color:var(--action)}
.page-intro{padding:var(--s7) 0 var(--s6)}.page-intro>p:last-child,.recent-block p{margin-top:8px;color:var(--muted)}.institution{display:flex;align-items:center;gap:7px;margin-bottom:10px;color:var(--action);font-weight:650;font-size:var(--type-sm)}
.workspace-grid{display:grid;grid-template-columns:minmax(0,1.93fr) minmax(255px,1fr);gap:var(--s5)}.product-card{position:relative;isolation:isolate;overflow:hidden;display:flex;border-radius:var(--radius-panel);background:var(--product-field);color:var(--field-ink)}.product-copy{z-index:1;position:relative;width:64%;padding:30px 20px 30px 32px}.product-copy h2{font-size:2rem}.product-meta{gap:8px;color:var(--field-muted);font-size:var(--type-sm);margin-top:8px}.product-copy h3{margin:28px 0 5px;font-size:1.2rem}.product-copy>p:not(.product-meta){font-size:var(--type-sm);color:var(--field-muted)}.product-copy .button{margin-top:20px}
.catalog{position:absolute;right:0;inset-block:0;width:36%;background:#172d49;overflow:hidden}.catalog img{width:100%;height:100%;object-fit:cover;object-position:50% 46%;filter:grayscale(1) contrast(1.22);mix-blend-mode:screen;transform:rotate(10deg) scale(1.18)}.catalog figcaption{position:absolute;bottom:0;width:100%;background:#172d49;color:white;text-align:center;font-size:.75rem;font-weight:650;padding:7px 4px}
.lab-card,.guide-panel{border-radius:var(--radius-panel);padding:26px}.lab-card{display:flex;flex-direction:column;gap:14px;background:var(--paper)}.lab-card h2{font-size:1.36rem}.lab-card p,.term-box p,.quiet{color:var(--muted);font-size:var(--type-sm)}.lab-card .lab-note{border-top:1px solid var(--rule);padding-top:14px}.lab-card .textlink{margin-top:auto}.term-box,.guide-panel{border:1px solid var(--rule)}.term-box{margin-top:18px;border-radius:var(--radius-control);padding:14px 19px}.term-box summary{color:var(--action);font-weight:650}.term-box[open] summary{margin-bottom:13px}.term-box p{margin:8px 0}.term-box a,.guide-panel a,.lab-card a{font-size:var(--type-sm);font-weight:650}.terms li{padding-block:9px}.terms .data{display:block;color:var(--muted);font-size:var(--type-sm)}
.recent-block{margin-top:var(--s7)}.recent-block .section-row{margin-bottom:18px}.recent-block p{font-size:var(--type-sm)}.activity-table small{display:none}.activity-table th{text-transform:none;letter-spacing:0}.activity-table td:last-child{text-align:left}.activity-table a:hover{text-decoration:underline}.activity-table td,.terms,.institution{overflow-wrap:anywhere}.quiet{padding:18px 0;border-block:1px solid var(--rule)}
.steps{padding-left:1.5em}.steps li{padding:8px 0 8px 5px}.steps li::marker{color:var(--action);font-weight:700}.foot-inner{line-height:1.6}.subheading{margin:0 0 5px}.pools{margin-top:var(--s4)}.workspace-links,.owner-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:22px;font-size:var(--type-sm)}.pool,.panel,.login{background:var(--canvas)}.pools .count,.panel td,.text-code,.credentials dd{font-family:var(--font-data);font-variant-numeric:var(--numbers)}
.pool button,.panel button,.actions button,dialog button,.login button{color:white;background:var(--action);border:1px solid var(--action);border-radius:var(--radius-control);font-weight:650}.pool .secondary,.panel .secondary,.actions .secondary,dialog .secondary,.login .secondary{color:var(--action);background:var(--canvas);border:1px solid var(--rule-strong)}.panel .danger{color:var(--error);background:white;border-color:var(--rule-strong)}button:disabled{opacity:.55}.login form input{font-size:1rem}.login h1{font-size:2.25rem}.login .brand img{width:96px}.login .brand{height:auto}.login .brand span{display:block}.footer{margin:0}
@media(max-width:760px){.page-intro{padding:28px 0 22px}.workspace-grid{grid-template-columns:1fr}.product-copy{padding:26px 18px 26px 22px}.lab-card,.guide-panel{padding:20px}.recent-block{margin-top:32px}.mast-inner{gap:16px}.recent-block .section-row{align-items:flex-start;flex-wrap:wrap}.brand span{display:inline}}
@media(max-width:700px){.mast-inner{gap:0}.mast-menu{gap:clamp(12px,4vw,24px)}.mast-side{display:flex}.profile-menu{top:calc(100% + 4px)}}
@media(max-width:520px){.product-copy{width:69%;padding:21px 10px 22px 18px}.product-copy h2{font-size:1.5rem}.product-copy h3{margin-top:19px}.product-copy .button{padding:9px 10px}.catalog{width:30%}.activity-table td:nth-child(2),.activity-table th:nth-child(2),.activity-table td:nth-child(3),.activity-table th:nth-child(3){display:none}.activity-table small{display:block;font-weight:500;color:var(--muted)}.activity-table td:last-child{width:1%}.mast-menu .navlink{font-size:.81rem}.status{white-space:normal}.workspace-grid{gap:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.product-copy .term-date{margin-top:5px;font-size:var(--type-xs)}
.activity-table th:last-child,.activity-table td:last-child{width:10rem;text-align:left}.activity-table .status{white-space:nowrap;overflow-wrap:normal}
@media(max-width:520px){.activity-table th:last-child,.activity-table td:last-child{width:7.8rem;text-align:right}.activity-table .status{font-size:.72rem}.activity-table td{padding-block:12px}}
.roster-search{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin-bottom:20px}.roster-search label{margin:0;flex:1;max-width:28rem}.roster-pager{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:12px;margin-top:16px}.roster-pager span{margin-right:auto;color:var(--muted);font-size:var(--type-sm)}.student-workspace .guide-panel p{margin-top:16px}.student-workspace .rule-list{margin-top:16px}.student-workspace .rule-list li{padding-block:12px}.student-workspace .data{display:block;color:var(--muted);font-size:var(--type-sm)}.student-workspace h3{margin-top:24px}.student-workspace .lab-card button{align-self:start}.pool>p{font-size:var(--type-sm);color:var(--muted);max-width:44ch}.count{letter-spacing:-.03em}dialog p{margin-block:12px}
