#app-view #profile-view .profile-overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:1fr;gap:calc(.75rem * var(--app-view-density));flex:1;min-height:0;align-items:stretch}#app-view #profile-view .section-card{border:1px solid var(--theme-border-subtle);border-radius:.95rem;background:var(--theme-surface-inset);padding:calc(.9rem * var(--app-view-density));display:flex;flex-direction:column;min-height:0}#app-view #profile-view .section-card .kv-list{flex:0 0 auto}#app-view #profile-view .section-card h3{margin:0 0 calc(.62rem * var(--app-view-density));font-size:1.02rem;font-weight:800;letter-spacing:.01em;color:var(--theme-text-strong);text-align:center}#app-view #profile-view .kv-list{display:grid;gap:calc(.4rem * var(--app-view-density));align-content:start}@media (min-width: 761px){#app-view #profile-view .section-card[data-profile-section=schedule-location] .kv-row{min-height:calc(3.3rem * var(--app-view-density))}}#app-view #profile-view .kv-row{display:grid;grid-template-columns:minmax(78px,90px) minmax(0,1fr);align-items:center;gap:calc(.28rem * var(--app-view-density));padding:calc(.36rem * var(--app-view-density)) calc(.42rem * var(--app-view-density));border-radius:.62rem;background:color-mix(in oklab,var(--theme-surface-1) 92%,var(--theme-mix-base));border:1px solid var(--theme-chip-border)}#app-view #profile-view .section-card[data-profile-section=instructor] .kv-row{grid-template-columns:minmax(66px,82px) minmax(0,1fr)}#app-view #profile-view .kv-label{font-size:.68rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;opacity:.86;color:var(--theme-text-soft);padding-left:.5rem}[data-theme=dark] #app-view #profile-view .kv-label{color:color-mix(in oklab,var(--theme-on-bg) 88%,var(--theme-mix-base));opacity:1}@media (prefers-color-scheme: dark){:root:not([data-theme=light]) #app-view #profile-view .kv-label{color:color-mix(in oklab,var(--theme-on-bg) 88%,var(--theme-mix-base));opacity:1}}#app-view #profile-view .section-card[data-profile-section=instructor] .kv-label{padding-left:.34rem}#app-view #profile-view .kv-value{font-size:.9rem;line-height:1.45;font-weight:600;color:var(--theme-text-strong);text-align:left}#app-view #profile-view .kv-value:has(.week-calendar){display:flex;justify-content:flex-start;align-items:center}#app-view #profile-view .instructor-name-value{display:inline-flex;align-items:center;justify-content:flex-start;gap:.34rem;flex-wrap:nowrap;max-width:100%;white-space:nowrap}#app-view #profile-view .instructor-name-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#app-view #profile-view .instructor-name-value .inline-badge{margin:0;flex:0 0 auto}#app-view #profile-view .asset-item-type.inline-badge--warning{color:#fff2e8;border-color:color-mix(in oklab,#f97316 70%,transparent);background:color-mix(in oklab,#f97316 34%,var(--theme-surface-1))}#app-view #profile-view .kv-row--office-hours .kv-label{white-space:normal;line-height:1.3;padding-right:.08rem}#app-view #profile-view .kv-row--office-hours{grid-template-columns:minmax(78px,90px) minmax(0,1fr)}#app-view #profile-view .kv-row--office-hours .kv-value{white-space:normal;overflow:visible;text-overflow:clip;text-align:left}#app-view #profile-view .kv-value--with-action{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.45rem;width:100%;text-align:left}#app-view #profile-view .kv-value-text{min-width:0;text-align:left;justify-self:start}#app-view #profile-view .kv-copy-btn{border:1px solid var(--theme-button-secondary-border);border-radius:.6rem;background:var(--theme-button-secondary-bg);color:var(--theme-text-strong);width:2rem;height:2rem;padding:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background-color var(--theme-transition),border-color var(--theme-transition),transform var(--theme-transition)}#app-view #profile-view .kv-copy-btn:hover{transform:translateY(-1px);background:color-mix(in oklab,var(--theme-primary) 14%,var(--theme-mix-base));border-color:color-mix(in oklab,var(--theme-primary) 42%,var(--theme-mix-base))}#app-view #profile-view .kv-copy-btn:focus-visible{outline:2px solid color-mix(in oklab,var(--theme-primary) 62%,#fff);outline-offset:2px}#app-view #profile-view .kv-copy-btn svg{width:1rem;height:1rem;pointer-events:none}#app-view #profile-view .kv-copy-btn .kv-copy-check{position:absolute;opacity:0;transform:scale(.82);transition:opacity .14s ease,transform .14s ease}#app-view #profile-view .kv-copy-btn .kv-copy-icon{opacity:.94;transition:opacity .14s ease,transform .14s ease}#app-view #profile-view .kv-copy-btn .kv-copy-icon path,#app-view #profile-view .kv-copy-btn .kv-copy-check path{stroke-linecap:round;stroke-linejoin:round}#app-view #profile-view .kv-copy-btn--copied{background:color-mix(in oklab,#22c55e 18%,var(--theme-mix-base));border-color:color-mix(in oklab,#22c55e 42%,var(--theme-mix-base))}#app-view #profile-view .kv-copy-btn--failed{background:color-mix(in oklab,#ef4444 16%,var(--theme-mix-base));border-color:color-mix(in oklab,#ef4444 36%,var(--theme-mix-base))}#app-view #profile-view .kv-copy-btn--copied .kv-copy-icon{opacity:0;transform:scale(.82)}#app-view #profile-view .kv-copy-btn--copied .kv-copy-check{opacity:1;transform:scale(1)}#app-view #profile-view .office-hours-list{display:grid;gap:.22rem}#app-view #profile-view .office-hours-item{display:block;line-height:1.36}#app-view #profile-view .office-hours-calendar{display:grid;gap:.5rem;width:100%;max-width:18.5rem}#app-view #profile-view .week-calendar--office-hours{max-width:16.25rem}#app-view #profile-view .week-calendar-day--office{position:relative;overflow:hidden;isolation:isolate}#app-view #profile-view .week-calendar-day--office-lit{border-color:color-mix(in oklab,var(--theme-on-bg) 16%,transparent);color:#f8fafc}#app-view #profile-view .office-hours-day-letter{position:relative;z-index:2;text-shadow:0 1px 2px color-mix(in oklab,#000 28%,transparent)}#app-view #profile-view .office-hours-day-fills{position:absolute;inset:2px;z-index:1;border-radius:.3rem;overflow:hidden}#app-view #profile-view .office-hours-day-chip{position:absolute;inset:0;border-radius:inherit;background:var( --office-slot-color, color-mix(in oklab, var(--theme-primary) 65%, #22d3ee) );opacity:.9}#app-view #profile-view .office-hours-day-fills--diagonal .office-hours-day-chip:first-child{clip-path:polygon(0 0,100% 0,0 100%)}#app-view #profile-view .office-hours-day-fills--diagonal .office-hours-day-chip:nth-child(2){clip-path:polygon(100% 0,100% 100%,0 100%)}#app-view #profile-view .office-hours-day-overflow{position:absolute;right:.18rem;bottom:.12rem;z-index:3;font-size:.56rem;line-height:1;font-weight:800;padding:.08rem .18rem;border-radius:999px;border:1px solid color-mix(in oklab,var(--theme-on-bg) 24%,var(--theme-surface-elevated, var(--theme-mix-base)));background:color-mix(in oklab,var(--theme-surface-elevated, var(--theme-surface-1)) 88%,var(--theme-mix-base))}#app-view #profile-view .office-hours-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.42rem .38rem;align-items:start}#app-view #profile-view .office-hours-legend-group{display:grid;gap:.22rem;align-content:start}#app-view #profile-view .office-hours-legend-row{display:grid;grid-template-columns:.76rem minmax(0,1fr);align-items:start;gap:.3rem}#app-view #profile-view .office-hours-legend-swatch{width:.76rem;height:.76rem;border-radius:.24rem;border:1px solid color-mix(in oklab,var(--theme-on-bg) 22%,var(--theme-surface-subtle, var(--theme-mix-base)));background:var( --office-slot-color, color-mix(in oklab, var(--theme-primary) 60%, #22d3ee) );margin-top:.08rem}#app-view #profile-view .office-hours-legend-copy{min-width:0;display:grid;gap:.1rem}#app-view #profile-view .office-hours-legend-time{font-size:.74rem;font-weight:800;line-height:1.25}#app-view #profile-view .office-hours-legend-badges{display:inline-flex;flex-wrap:wrap;gap:.2rem}#app-view #profile-view .office-hours-badge{display:inline-flex;align-items:center;padding:.08rem .34rem;border-radius:999px;border:1px solid color-mix(in oklab,var(--theme-primary) 24%,var(--theme-mix-base));background:color-mix(in oklab,var(--theme-primary) 10%,var(--theme-mix-base));font-size:.63rem;font-weight:700;line-height:1.15;text-transform:uppercase;letter-spacing:.03em}#app-view #profile-view .kv-value-badge{display:inline-flex;width:-moz-fit-content;width:fit-content;align-items:center;padding:.22rem .5rem;border-radius:999px;border:1px solid color-mix(in oklab,var(--theme-primary) 22%,var(--theme-mix-base));background:color-mix(in oklab,var(--theme-primary) 12%,var(--theme-mix-base));font-size:.8rem;letter-spacing:.01em}#app-view #profile-view .kv-row--title{grid-template-columns:minmax(78px,90px) minmax(0,1fr);padding:calc(.36rem * var(--app-view-density)) calc(.42rem * var(--app-view-density))}#app-view #profile-view .kv-row--title .kv-label{padding-left:.24rem}#app-view #profile-view .kv-row--title .kv-value-badge{display:inline-flex;width:-moz-fit-content;width:fit-content;max-width:100%;min-width:0;justify-content:flex-start;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:.2rem .38rem;font-size:.78rem}#app-view #profile-view .policies-card,#app-view #profile-view .assets-card{margin-top:calc(.82rem * var(--app-view-density))}#app-view #profile-view .policy-accordion{display:grid;gap:calc(.46rem * var(--app-view-density))}#app-view #profile-view .policy-item{border:1px solid var(--theme-border-subtle);border-radius:.92rem;background:color-mix(in oklab,var(--theme-surface-elevated) 92%,var(--theme-panel-inset-bg));overflow:clip}#app-view #profile-view .policy-summary{list-style:none;cursor:pointer;padding:calc(.62rem * var(--app-view-density)) calc(.68rem * var(--app-view-density));display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.75rem}#app-view #profile-view .policy-summary::-webkit-details-marker{display:none}#app-view #profile-view .policy-summary-main{min-width:0;display:grid;gap:.34rem}#app-view #profile-view .policy-summary-head{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}#app-view #profile-view .policy-summary-label{font-size:.9rem;font-weight:800;line-height:1.2;color:var(--theme-text-strong)}#app-view #profile-view .policy-badge--danger{border-color:color-mix(in oklab,#dc2626 50%,var(--theme-mix-base))!important;background:color-mix(in oklab,#dc2626 18%,var(--theme-surface-1))!important;color:inherit!important}#app-view #profile-view .policy-badge--warning{border-color:color-mix(in oklab,#ea580c 50%,var(--theme-mix-base))!important;background:color-mix(in oklab,#ea580c 18%,var(--theme-surface-1))!important;color:inherit!important}#app-view #profile-view .policy-badge--success{border-color:color-mix(in oklab,#16a34a 50%,var(--theme-mix-base))!important;background:color-mix(in oklab,#16a34a 18%,var(--theme-surface-1))!important;color:color-mix(in oklab,#16a34a 85%,var(--theme-on-bg))!important}#app-view #profile-view .policy-summary-description{margin:0;font-size:.82rem;font-weight:600;line-height:1.45;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:color-mix(in oklab,var(--theme-on-bg) 82%,var(--theme-mix-base))}#app-view #profile-view .policy-review-label{font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--theme-text-muted)}#app-view #profile-view .policy-summary-action{display:inline-flex;align-items:center;gap:.32rem;padding:.28rem .52rem;border:1px solid var( --theme-border-soft, color-mix(in oklab, var(--theme-primary) 18%, var(--theme-mix-base)) );border-radius:999px;background:var(--theme-surface-subtle, var(--theme-chip-bg));color:var(--theme-text-strong);font-size:.72rem;font-weight:800;letter-spacing:.01em}#app-view #profile-view .policy-summary-caret{width:1.1rem;height:1.1rem;display:flex;align-items:center;justify-content:center;transition:transform .15s ease}#app-view #profile-view .policy-summary-caret svg{width:.7rem;height:.7rem;display:block}#app-view #profile-view .policy-item[open] .policy-summary-action{background:color-mix(in oklab,var(--theme-primary) 14%,var(--theme-mix-base));border-color:color-mix(in oklab,var(--theme-primary) 28%,var(--theme-mix-base))}#app-view #profile-view .policy-item[open] .policy-summary-caret{transform:rotate(180deg)}#app-view #profile-view .policy-item--empty{padding:calc(.62rem * var(--app-view-density)) calc(.68rem * var(--app-view-density))}#app-view #profile-view .policy-content{padding:0 calc(.68rem * var(--app-view-density)) calc(.68rem * var(--app-view-density));font-size:.86rem;line-height:1.48;opacity:.92}#app-view #profile-view .policy-review-block{display:grid;gap:.42rem;padding-top:.72rem;border-top:1px solid color-mix(in oklab,var(--theme-primary) 12%,var(--theme-mix-base))}#app-view #profile-view .policy-body{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--theme-text-strong)}#app-view #profile-view .policy-body.clamped{display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}#app-view #profile-view .policy-toggle{align-self:flex-start;margin-top:.4rem;border:1px solid var( --theme-border-soft, color-mix(in oklab, var(--theme-primary) 22%, var(--theme-mix-base)) );border-radius:999px;background:var(--theme-surface-subtle, var(--theme-chip-bg));color:var(--theme-on-bg);font-size:.75rem;font-weight:700;padding:.26rem .55rem;cursor:pointer}#app-view #profile-view .assets-list{margin-top:.5rem;display:grid;gap:.7rem}#app-view #profile-view .asset-item{background:var(--theme-surface-subtle, var(--theme-surface-1));border:1px solid var( --theme-border-soft, color-mix(in oklab, var(--theme-primary) 18%, var(--theme-mix-base)) );border-radius:.78rem;padding:.85rem .92rem;display:grid;gap:.75rem}#app-view #profile-view .asset-item--grouped{background:color-mix(in oklab,var(--theme-surface-1) 92%,var(--theme-primary) 8%)}#app-view #profile-view .asset-card-header{display:flex;justify-content:space-between;gap:.8rem;align-items:flex-start}#app-view #profile-view .asset-card-header-actions{display:flex;justify-content:flex-end;flex-shrink:0}#app-view #profile-view .asset-card-title-block{min-width:0;display:grid;gap:.35rem}#app-view #profile-view .asset-card-title{margin:0;font-size:1.02rem;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#app-view #profile-view .asset-card-subtitle{margin:0;font-size:.82rem;color:color-mix(in oklab,var(--theme-on-bg) 72%,var(--theme-mix-base));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#app-view #profile-view .asset-pill-row{display:flex;flex-wrap:wrap;gap:.4rem}#app-view #profile-view .asset-source-edit-btn,#app-view #profile-view .asset-source-save-btn,#app-view #profile-view .asset-source-cancel-btn{border-radius:999px;font-size:.75rem;font-weight:800;letter-spacing:.02em;cursor:pointer}#app-view #profile-view .asset-source-edit-btn{border:1px solid var( --theme-border-accent, color-mix(in oklab, var(--theme-primary) 30%, var(--theme-mix-base)) );background:color-mix(in oklab,var(--theme-primary) 12%,var(--theme-surface-subtle, var(--theme-surface-1)));color:var(--theme-on-bg);padding:.34rem .72rem}#app-view #profile-view .asset-source-editor{display:flex;gap:.45rem;align-items:center;flex-wrap:wrap;grid-column:1 / -1;padding-top:.1rem}#app-view #profile-view .asset-source-editor[hidden]{display:none}#app-view #profile-view .asset-source-input{flex:1 1 14rem;min-width:0;padding:.5rem .66rem;border:1px solid var( --theme-border-soft, color-mix(in oklab, var(--theme-primary) 22%, var(--theme-mix-base)) );border-radius:.58rem;background:var( --theme-surface-elevated, color-mix(in oklab, var(--theme-bg) 92%, var(--theme-mix-base)) );color:var(--theme-on-bg)}#app-view #profile-view .asset-source-save-btn{border:none;padding:.4rem .82rem;background:color-mix(in oklab,var(--theme-primary) 82%,#0ea5e9);color:var(--theme-on-primary)}#app-view #profile-view .asset-source-cancel-btn{border:1px solid color-mix(in oklab,var(--theme-on-bg) 16%,var(--theme-surface-subtle, var(--theme-mix-base)));padding:.38rem .78rem;background:var(--theme-surface-elevated, transparent);color:color-mix(in oklab,var(--theme-on-bg) 78%,var(--theme-mix-base))}#app-view #profile-view .asset-item-type{display:inline-flex;align-items:center;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border:1px solid color-mix(in oklab,var(--theme-primary) 18%,var(--theme-mix-base));border-radius:999px;padding:.16rem .48rem;opacity:.96;background:color-mix(in oklab,var(--theme-primary) 10%,var(--theme-surface-1))}#app-view #profile-view .asset-item-type--syllabus{background:color-mix(in oklab,#38bdf8 16%,var(--theme-surface-1));border-color:color-mix(in oklab,#38bdf8 36%,var(--theme-mix-base))}#app-view #profile-view .asset-item-type--textbook{background:color-mix(in oklab,#14b8a6 16%,var(--theme-surface-1));border-color:color-mix(in oklab,#14b8a6 34%,var(--theme-mix-base))}#app-view #profile-view .asset-item-type--other{background:color-mix(in oklab,var(--theme-primary) 10%,var(--theme-surface-1))}#app-view #profile-view .asset-item-type--saved-link{background:color-mix(in oklab,#38bdf8 14%,var(--theme-surface-1));border-color:color-mix(in oklab,#38bdf8 34%,var(--theme-mix-base))}#app-view #profile-view .asset-item-type--format{font-size:.66rem;padding-inline:.42rem;background:color-mix(in oklab,var(--theme-on-bg) 9%,var(--theme-surface-1));border-color:color-mix(in oklab,var(--theme-on-bg) 14%,transparent)}#app-view #profile-view .asset-item-type--count{background:color-mix(in oklab,var(--theme-primary) 18%,var(--theme-surface-1));border-color:color-mix(in oklab,var(--theme-primary) 28%,var(--theme-mix-base))}#app-view #profile-view .asset-source-list{display:grid;gap:.46rem}#app-view #profile-view .asset-source-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.7rem;align-items:start;padding:.7rem .78rem;border-radius:.7rem;border:1px solid var( --theme-border-soft, color-mix(in oklab, var(--theme-primary) 14%, var(--theme-mix-base)) );background:var( --theme-surface-elevated, color-mix(in oklab, var(--theme-panel-inset-bg) 80%, var(--theme-mix-base)) )}#app-view #profile-view .asset-source-copy{min-width:0;display:grid;gap:.18rem}#app-view #profile-view .asset-source-title-line{display:flex;align-items:center;gap:.42rem;min-width:0;flex-wrap:wrap}#app-view #profile-view .asset-source-name{font-size:.9rem;font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#app-view #profile-view .asset-source-meta{font-size:.75rem;color:color-mix(in oklab,var(--theme-on-bg) 66%,var(--theme-mix-base));min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#app-view #profile-view .asset-source-actions{display:flex;align-items:center;justify-content:flex-end;gap:.45rem;flex-wrap:wrap;flex-shrink:0}#app-view #profile-view .asset-open-btn{display:inline-flex;align-items:center;justify-content:center;min-height:2rem;padding:.38rem .78rem;border-radius:999px;border:1px solid color-mix(in oklab,var(--theme-primary) 34%,var(--theme-mix-base));background:color-mix(in oklab,var(--theme-primary) 15%,var(--theme-mix-base));color:var(--theme-on-bg);text-decoration:none;font-size:.78rem;font-weight:800;letter-spacing:.02em;transition:background .14s ease,border-color .14s ease}#app-view #profile-view .asset-open-btn:hover{background:color-mix(in oklab,var(--theme-primary) 24%,var(--theme-mix-base));border-color:color-mix(in oklab,var(--theme-primary) 52%,var(--theme-mix-base))}#app-view #profile-view .asset-delete-btn{border:1px solid color-mix(in oklab,#dc2626 26%,var(--theme-mix-base));border-radius:999px;padding:.34rem .7rem;background:color-mix(in oklab,#dc2626 7%,var(--theme-surface-1));color:color-mix(in oklab,#fca5a5 48%,var(--theme-on-bg));font-size:.74rem;font-weight:700;letter-spacing:.01em;cursor:pointer}#app-view #profile-view .asset-preview-list{display:grid;gap:.55rem}#app-view #profile-view .asset-preview{margin-top:0;padding-top:.12rem}#app-view #profile-view .asset-preview summary{cursor:pointer;font-size:.76rem;font-weight:700;color:color-mix(in oklab,var(--theme-on-bg) 76%,var(--theme-mix-base))}#app-view #profile-view .asset-preview-frame-wrap{width:min(100%,54rem);margin:.45rem auto 0;padding:.72rem;border:1px solid var( --theme-border-soft, color-mix(in oklab, var(--theme-primary) 12%, var(--theme-mix-base)) );border-radius:.84rem;background:color-mix(in oklab,var(--theme-surface-inset) 90%,var(--theme-mix-base))}#app-view #profile-view .asset-preview-frame{display:block;width:100%;min-height:clamp(560px,78vh,1080px);border:1px solid var( --theme-border-soft, color-mix(in oklab, var(--theme-primary) 14%, var(--theme-mix-base)) );border-radius:.62rem;background:color-mix(in oklab,#ffffff 92%,var(--theme-surface-elevated, var(--theme-surface-1)))}#app-view #profile-view .asset-actions{margin-top:.7rem;display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;gap:.62rem}#app-view #profile-view .asset-action-block{width:min(100%,42rem);border:1px solid var( --theme-border-soft, color-mix(in oklab, var(--theme-primary) 14%, var(--theme-mix-base)) );border-radius:.62rem;background:var(--theme-surface-subtle, var(--theme-surface-1));padding:.82rem .92rem;display:grid;gap:.5rem}#app-view #profile-view .asset-action-details{padding:0;gap:0}#app-view #profile-view .asset-action-summary{list-style:none;cursor:pointer;padding:.82rem .92rem;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem}#app-view #profile-view .asset-action-summary::-webkit-details-marker{display:none}#app-view #profile-view .asset-action-summary-main{display:grid;gap:.2rem}#app-view #profile-view .asset-action-chevron{width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;color:var( --theme-text-muted, color-mix(in oklab, var(--theme-on-bg) 55%, var(--theme-mix-base)) );transition:transform .15s ease}#app-view #profile-view .asset-action-chevron svg{width:.75rem;height:.75rem;display:block}#app-view #profile-view .asset-action-details[open] .asset-action-chevron{transform:rotate(180deg)}#app-view #profile-view .asset-action-form{padding:0 .92rem .82rem;display:grid;gap:.5rem}#app-view #profile-view .asset-action-title{font-size:.84rem;font-weight:800;letter-spacing:.01em;color:var(--theme-on-bg)}#app-view #profile-view .asset-action-copy{margin:0;font-size:.76rem;line-height:1.45;color:color-mix(in oklab,var(--theme-on-bg) 74%,var(--theme-mix-base))}#app-view #profile-view .asset-field{display:grid;gap:.22rem}#app-view #profile-view .asset-field-label{font-size:.68rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:color-mix(in oklab,var(--theme-on-bg) 68%,var(--theme-mix-base))}#app-view #profile-view .asset-actions input,#app-view #profile-view .asset-actions select{width:100%;padding:.45rem;border:1px solid var( --theme-border-soft, color-mix(in oklab, var(--theme-primary) 20%, var(--theme-mix-base)) );border-radius:.45rem;background:var(--theme-surface-elevated, var(--theme-surface-1));color:var(--theme-on-bg)}#app-view #profile-view .asset-actions button{border:none;border-radius:999px;padding:.52rem 1.35rem;background:linear-gradient(135deg,color-mix(in oklab,var(--theme-primary) 90%,#0ea5e9),color-mix(in oklab,var(--theme-primary) 82%,#10b981));color:var(--theme-on-primary);font-weight:800;letter-spacing:.02em;cursor:pointer;justify-self:center;min-width:min(14rem,100%)}#app-view #profile-view .muted{opacity:.75;font-size:.8rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}#app-view #profile-view .instructor-ta-tabs{display:flex;gap:.25rem;margin-bottom:.6rem;justify-content:center}#app-view #profile-view .instructor-ta-tab{padding:.35rem .7rem;border-radius:.5rem;border:1px solid color-mix(in oklab,var(--theme-primary) 24%,var(--theme-mix-base));background:color-mix(in oklab,var(--theme-bg) 92%,var(--theme-mix-base));color:var(--theme-on-bg);font-size:.8rem;font-weight:700;cursor:pointer;transition:background-color .15s,border-color .15s}#app-view #profile-view .instructor-ta-tab:hover:not(.instructor-ta-tab--disabled){background:color-mix(in oklab,var(--theme-primary) 18%,var(--theme-mix-base));border-color:color-mix(in oklab,var(--theme-primary) 40%,var(--theme-mix-base))}#app-view #profile-view .instructor-ta-tab--active{background:color-mix(in oklab,var(--theme-primary) 28%,var(--theme-mix-base));border-color:color-mix(in oklab,var(--theme-primary) 50%,var(--theme-mix-base));color:var(--theme-on-bg)}#app-view #profile-view .instructor-ta-tab--disabled{opacity:.5;cursor:not-allowed}#app-view #profile-view .instructor-ta-panels{position:relative}#app-view #profile-view .instructor-ta-panel{display:none}#app-view #profile-view .instructor-ta-panel--active{display:block}#app-view #profile-view .textbook-badge-list{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:.34rem .42rem;width:100%}#app-view #profile-view .textbook-badge-empty{font-size:.84rem;color:color-mix(in oklab,var(--theme-on-bg) 68%,var(--theme-mix-base))}#app-view #profile-view .textbook-badge-item{position:relative;flex:0 1 auto;max-width:100%}#app-view #profile-view .textbook-badge-item summary{list-style:none}#app-view #profile-view .textbook-badge-item summary::-webkit-details-marker{display:none}#app-view #profile-view .textbook-badge-trigger{display:inline-flex;align-items:center;gap:.28rem;max-width:min(100%,14.5rem);min-height:2.25rem;padding:.26rem .58rem .26rem .7rem;border-radius:999px;border:1px solid color-mix(in oklab,#14b8a6 28%,var(--theme-mix-base));background:linear-gradient(135deg,color-mix(in oklab,#0f766e 24%,var(--theme-surface-1)),color-mix(in oklab,#164e63 18%,var(--theme-surface-1)));box-shadow:inset 0 1px color-mix(in oklab,#67e8f9 12%,transparent),0 4px 12px color-mix(in oklab,#020617 12%,transparent);color:var(--theme-on-bg);cursor:pointer;transition:transform var(--theme-transition),border-color var(--theme-transition),background-color var(--theme-transition)}#app-view #profile-view .textbook-badge-trigger:hover{transform:translateY(-1px);border-color:color-mix(in oklab,#14b8a6 42%,var(--theme-mix-base));background:linear-gradient(135deg,color-mix(in oklab,#0f766e 30%,var(--theme-surface-1)),color-mix(in oklab,#164e63 22%,var(--theme-surface-1)))}#app-view #profile-view .textbook-badge-trigger:focus-visible{outline:2px solid color-mix(in oklab,#14b8a6 72%,#fff);outline-offset:2px}#app-view #profile-view .textbook-badge-trigger--recommended{border-color:color-mix(in oklab,#818cf8 28%,var(--theme-mix-base));background:linear-gradient(135deg,color-mix(in oklab,#4338ca 20%,var(--theme-surface-1)),color-mix(in oklab,#312e81 14%,var(--theme-surface-1)));box-shadow:inset 0 1px color-mix(in oklab,#a5b4fc 10%,transparent),0 4px 12px color-mix(in oklab,#020617 12%,transparent)}#app-view #profile-view .textbook-badge-trigger--recommended:hover{border-color:color-mix(in oklab,#818cf8 42%,var(--theme-mix-base));background:linear-gradient(135deg,color-mix(in oklab,#4338ca 26%,var(--theme-surface-1)),color-mix(in oklab,#312e81 20%,var(--theme-surface-1)))}#app-view #profile-view .textbook-badge-trigger--recommended:focus-visible{outline-color:color-mix(in oklab,#818cf8 72%,#fff)}#app-view #profile-view .textbook-badge-label{display:inline-block;min-width:0;font-size:.72rem;font-weight:760;line-height:1.2;white-space:nowrap;overflow:hidden}#app-view #profile-view .textbook-badge-label--overflow{-webkit-mask-image:linear-gradient(to right,black 70%,transparent 100%);mask-image:linear-gradient(to right,black 70%,transparent 100%)}#app-view #profile-view .textbook-hidden-group{display:none;flex-wrap:wrap;gap:.34rem .42rem;width:100%}#app-view #profile-view .textbook-hidden-group--open{display:flex}#app-view #profile-view .textbook-hidden-toggle{display:inline-flex;align-items:center;padding:.1rem .4rem;border:none;background:none;color:color-mix(in oklab,var(--theme-on-bg) 60%,var(--theme-mix-base));font-size:.66rem;font-weight:700;cursor:pointer;text-decoration:underline;text-underline-offset:2px}#app-view #profile-view .textbook-hidden-toggle:hover{color:var(--theme-on-bg)}#app-view #profile-view .textbook-badge-list--compact{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.3rem .36rem}#app-view #profile-view .textbook-badge-list--compact .textbook-hidden-toggle,#app-view #profile-view .textbook-badge-list--compact .textbook-hidden-group{grid-column:1 / -1}#app-view #profile-view .textbook-badge-list--compact .textbook-badge-trigger{width:100%;max-width:100%;box-sizing:border-box}#app-view #profile-view .textbook-badge-caret{font-size:.84rem;line-height:1;opacity:.56;transition:transform .14s ease,opacity .14s ease}#app-view #profile-view .textbook-badge-item[open] .textbook-badge-caret{transform:translate(1px);opacity:.9}#app-view #profile-view .textbook-hover-card{display:none;position:absolute;top:50%;left:100%;transform:translateY(-50%);z-index:15;width:min(17rem,calc(100vw - 2rem));padding:.76rem .82rem;border-radius:.8rem;border:1px solid color-mix(in oklab,#14b8a6 28%,var(--theme-mix-base));background:color-mix(in oklab,var(--theme-panel-bg) 95%,var(--theme-mix-base));box-shadow:var(--theme-shadow-md);text-align:left}#app-view #profile-view .textbook-hover-card:before{content:"";position:absolute;top:50%;left:-.38rem;width:.72rem;height:.72rem;transform:translateY(-50%) rotate(45deg);border-left:1px solid color-mix(in oklab,#14b8a6 28%,var(--theme-mix-base));border-bottom:1px solid color-mix(in oklab,#14b8a6 28%,var(--theme-mix-base));background:color-mix(in oklab,var(--theme-panel-bg) 95%,var(--theme-mix-base))}#app-view #profile-view .textbook-badge-item[data-popover-side=left] .textbook-hover-card{left:auto;right:100%}#app-view #profile-view .textbook-badge-item[data-popover-side=left] .textbook-hover-card:before{left:auto;right:-.38rem;border-left:none;border-bottom:none;border-right:1px solid color-mix(in oklab,#14b8a6 28%,var(--theme-mix-base));border-top:1px solid color-mix(in oklab,#14b8a6 28%,var(--theme-mix-base))}#app-view #profile-view .textbook-badge-item[data-popover-side=bottom] .textbook-hover-card{top:100%;left:0;right:auto;transform:none}#app-view #profile-view .textbook-badge-item[data-popover-side=bottom] .textbook-hover-card:before{top:-.38rem;left:1.2rem;right:auto;transform:rotate(45deg);border-right:none;border-bottom:none;border-left:1px solid color-mix(in oklab,#14b8a6 28%,var(--theme-mix-base));border-top:1px solid color-mix(in oklab,#14b8a6 28%,var(--theme-mix-base))}#app-view #profile-view .textbook-badge-item[open] .textbook-hover-card{display:grid;gap:.46rem}#app-view #profile-view .textbook-hover-title{font-size:.82rem;font-weight:800;line-height:1.3}#app-view #profile-view .textbook-hover-meta{display:grid;gap:.34rem}#app-view #profile-view .textbook-hover-row{display:grid;gap:.1rem}#app-view #profile-view .textbook-hover-row--isbn{gap:.18rem}#app-view #profile-view .textbook-hover-label{font-size:.66rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:color-mix(in oklab,var(--theme-on-bg) 64%,var(--theme-mix-base))}#app-view #profile-view .textbook-hover-value{font-size:.82rem;line-height:1.3}#app-view #profile-view .textbook-hover-value--isbn{font-family:"Roboto Serif",ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.02em}#app-view #profile-view .textbook-hover-copy{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.42rem}#app-view #profile-view .textbook-hover-copy .kv-copy-btn{width:1.85rem;height:1.85rem}#app-view #profile-view .textbook-hover-empty{margin:0;font-size:.8rem;color:color-mix(in oklab,var(--theme-on-bg) 70%,var(--theme-mix-base))}#app-view #profile-view .kv-row--textbooks .kv-value,#app-view #profile-view .kv-row--textbook .kv-value{display:flex;justify-content:flex-start;text-align:left;overflow:visible}#app-view #profile-view .week-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem;width:100%;max-width:14rem}#app-view #profile-view .week-calendar-day{aspect-ratio:1;min-height:0;border-radius:.4rem;border:1px solid color-mix(in oklab,var(--theme-on-bg) 14%,transparent);background:color-mix(in oklab,var(--theme-on-bg) 10%,var(--theme-mix-base));display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;color:color-mix(in oklab,var(--theme-on-bg) 45%,var(--theme-mix-base))}#app-view #profile-view .week-calendar-day--weekend{background:color-mix(in oklab,var(--theme-on-bg) 3%,var(--theme-mix-base));border-color:color-mix(in oklab,var(--theme-on-bg) 5%,transparent);color:color-mix(in oklab,var(--theme-on-bg) 18%,var(--theme-mix-base))}#app-view #profile-view .week-calendar-day--lit{border-color:transparent;color:#f8fafc}#app-view #profile-view .week-calendar-day--lit-mwf{background:color-mix(in oklab,#ec4899 88%,var(--theme-surface-1))!important;border-color:color-mix(in oklab,#ec4899 60%,transparent)!important}#app-view #profile-view .week-calendar-day--lit-tth{background:color-mix(in oklab,#22c55e 88%,var(--theme-surface-1))!important;border-color:color-mix(in oklab,#22c55e 60%,transparent)!important}#app-view #profile-view .week-calendar-day--lit-weekend{background:color-mix(in oklab,#a78bfa 85%,var(--theme-surface-1))!important;border-color:color-mix(in oklab,#a78bfa 55%,transparent)!important}#app-view #profile-view .schedule-async-badge{display:inline-flex;align-items:center;padding:.22rem .58rem;border-radius:999px;border:1px solid color-mix(in oklab,#38bdf8 30%,var(--theme-mix-base));background:color-mix(in oklab,#0ea5e9 16%,var(--theme-mix-base));color:var(--theme-on-bg);font-size:.78rem;font-weight:700}#app-view #profile-view .empty-state{opacity:.72}[data-theme=dark] #app-view #profile-view .section-card,:root:not([data-theme=light]) #app-view #profile-view .section-card{background:var(--theme-surface-inset);border-color:var(--theme-border-subtle)}[data-theme=dark] #app-view #profile-view .kv-row,:root:not([data-theme=light]) #app-view #profile-view .kv-row{background:color-mix(in oklab,var(--theme-surface-2) 90%,var(--theme-bg));border-color:color-mix(in oklab,var(--theme-primary) 28%,var(--theme-mix-base))}[data-theme=dark] #app-view #profile-view .kv-value-badge,[data-theme=dark] #app-view #profile-view .textbook-badge-trigger,[data-theme=dark] #app-view #profile-view .textbook-badge-trigger--recommended,:root:not([data-theme=light]) #app-view #profile-view .kv-value-badge,:root:not([data-theme=light]) #app-view #profile-view .textbook-badge-trigger,:root:not([data-theme=light]) #app-view #profile-view .textbook-badge-trigger--recommended{background:linear-gradient(180deg,color-mix(in oklab,var(--theme-app-topbar-bg) 82%,var(--theme-primary) 18%),color-mix(in oklab,var(--theme-panel-bg) 74%,var(--theme-primary) 26%));border-color:color-mix(in oklab,var(--theme-primary) 46%,var(--theme-mix-base));box-shadow:inset 0 1px #ffffff0a;color:var(--theme-on-bg)}[data-theme=dark] #app-view #profile-view .policy-item,:root:not([data-theme=light]) #app-view #profile-view .policy-item{background:color-mix(in oklab,var(--theme-surface-elevated) 90%,var(--theme-bg))!important;border-color:var(--theme-border-subtle)!important}[data-theme=dark] #app-view #profile-view .asset-actions select,[data-theme=dark] #app-view #profile-view .asset-actions input,[data-theme=dark] #app-view #profile-view .asset-source-input,:root:not([data-theme=light]) #app-view #profile-view .asset-actions select,:root:not([data-theme=light]) #app-view #profile-view .asset-actions input,:root:not([data-theme=light]) #app-view #profile-view .asset-source-input{background:color-mix(in oklab,var(--theme-bg) 68%,var(--theme-surface-1))!important;border-color:color-mix(in oklab,var(--theme-primary) 20%,var(--theme-mix-base))}@media (max-width: 980px){#app-view #profile-view .profile-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 760px){#app-view #profile-view .profile-overview-grid{grid-template-columns:1fr}#app-view #profile-view .asset-source-actions{justify-content:flex-start}#app-view #profile-view .asset-source-row{grid-template-columns:1fr}#app-view #profile-view .asset-source-editor{align-items:stretch}#app-view #profile-view .asset-actions,#app-view #profile-view .policy-summary{grid-template-columns:1fr}#app-view #profile-view .asset-preview-frame-wrap{width:100%;padding:.58rem}#app-view #profile-view .asset-preview-frame{min-height:clamp(460px,70vh,820px)}#app-view #profile-view .textbook-badge-trigger,#app-view #profile-view .textbook-badge-list--compact .textbook-badge-trigger{max-width:100%}}#profile-view .profile-back-btn,#profile-view .profile-swipe-hint,#profile-view .profile-course-title{display:none}@media (max-width: 768px){@keyframes profileHintFadeOut{0%{opacity:1}60%{opacity:1}to{opacity:0;pointer-events:none}}#app-view #profile-view .profile-overview-grid{display:block!important}#profile-view .profile-back-btn{display:inline-flex;align-items:center;gap:.2rem;flex-shrink:0;padding:.28rem .68rem;border-radius:999px;border:1px solid var(--theme-border-soft, var(--theme-chip-border));background:var(--theme-surface-secondary, var(--theme-chip-bg));color:var(--theme-text-strong);font-size:.72rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:background-color var(--theme-transition, .15s ease),border-color var(--theme-transition, .15s ease)}#profile-view .profile-back-btn:active{background:color-mix(in oklab,var(--theme-primary) 14%,var(--theme-mix-base))}#profile-view .profile-swipe-hint{display:block;margin:0 0 .5rem;font-size:.68rem;font-weight:600;color:var(--theme-text-muted);text-align:center;animation:profileHintFadeOut 2.4s ease forwards;pointer-events:none}#app-view #profile-view .profile-intro{display:flex;flex-direction:row;align-items:center;gap:.5rem;flex-wrap:nowrap;padding:0;margin-bottom:.5rem;border:none;background:transparent;box-shadow:none}#app-view #profile-view .profile-intro .profile-intro-copy{display:block;flex:1 1 0;min-width:0}#app-view #profile-view .profile-intro .profile-intro-copy h2{margin:0;font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#app-view #profile-view .profile-intro .profile-intro-copy .panel-subtitle{display:none}#app-view #profile-view .profile-intro .mobile-course-chip-row{padding:0;flex-shrink:0;justify-content:flex-end}#app-view #profile-view .profile-header{display:none}#profile-view .profile-course-title{display:block;font-size:.82rem;font-weight:700;color:var(--theme-text-strong);text-align:center;margin:0 0 .4rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 .5rem}#app-view #profile-view .section-card{max-height:calc(100dvh - 240px);overflow-y:auto}#app-view #profile-view .section-card{box-shadow:0 4px 20px #0000001f;border-radius:1rem;transition:transform .22s ease-out,opacity .22s ease-out}#app-view #profile-view .section-card.is-card-exiting-left{transform:translate(-100%) scale(.96);opacity:0;pointer-events:none}#app-view #profile-view .section-card.is-card-exiting-right{transform:translate(100%) scale(.96);opacity:0;pointer-events:none}#app-view #profile-view .section-card.is-card-entering{transform:translate(100%) scale(.96);opacity:0}#app-view #profile-view .section-card.is-card-entering-left{transform:translate(-100%) scale(.96);opacity:0}#app-view #profile-view .section-card.is-card-entering-right{transform:translate(100%) scale(.96);opacity:0}#app-view #profile-view .assets-card{order:10;margin-top:1rem}}
