html:has(#homework-workspace[open]){overflow:hidden}
#homework-workspace{width:min(1180px,97%);height:95%;max-width:none;max-height:95%;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--bg);color:var(--ink)}
#homework-workspace::backdrop{background:#14233177;backdrop-filter:blur(4px)}
.homework-shell{display:flex;height:100%;min-height:0;flex-direction:column}
.homework-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 25px;border-bottom:1px solid var(--line);background:#ffffffe8}
.homework-header h2{margin:5px 0 0;font-size:21px}.homework-header p{margin:5px 0 0;color:var(--muted);font-size:12px}
.homework-layout{display:grid;min-height:0;flex:1;grid-template-columns:minmax(270px,.68fr) minmax(480px,1.32fr);overflow:hidden}
.homework-source{display:flex;min-height:0;flex-direction:column;gap:14px;padding:22px;border-right:1px solid var(--line);background:#e9eef2;overflow:auto}
.homework-source>img{width:100%;max-height:65vh;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:0 12px 35px #14233112;object-fit:contain}
.homework-source>div{display:grid;gap:6px}.homework-source strong{font-size:14px;overflow-wrap:anywhere}.homework-source a{color:var(--accent);font-size:12px}
.homework-manual-source{align-content:start}.homework-manual-source>div{padding:18px;border:1px solid var(--line);border-radius:13px;background:#fff}.homework-manual-source p{margin:6px 0 0;color:var(--muted);font-size:12px;line-height:1.8}
.homework-card{align-self:start;display:grid;gap:18px;margin:24px;min-width:0;padding:25px;border:1px solid var(--line);border-radius:16px;background:#ffffffa8;overflow:auto;max-height:calc(95vh - 120px)}
.homework-card h3{margin:0;font-size:22px;letter-spacing:-.035em}.homework-card>p{margin:0;color:var(--muted);font-size:13px;line-height:1.85}
.homework-step{color:#6b1e32;font-size:9px;letter-spacing:.2em;font-weight:650}
.homework-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.homework-card-heading h3{margin-bottom:5px}.homework-card-heading p{margin:0;color:var(--muted);font-size:12px;line-height:1.65}.homework-card-heading strong{font-size:14px}
.homework-form-grid{display:grid;gap:13px;grid-template-columns:1fr 1fr}.homework-form-grid label,.homework-field,.homework-reference-row label,.homework-textbook label,.homework-location-edit label{display:grid;gap:7px;color:var(--muted);font-size:11px}
.homework-form-grid input,.homework-field textarea,.homework-reference-row input,.homework-textbook select,.homework-location-edit input{width:100%;min-width:0;border:1px solid var(--line);border-radius:8px;background:#fff;padding:10px 11px;color:var(--ink);font:inherit;font-size:13px}
.homework-field textarea{resize:vertical;line-height:1.7}.homework-reference-editor{display:grid;gap:10px;padding:15px;border:1px solid var(--line);border-radius:11px;background:#f8fafbb3}
.homework-reference-row{display:grid;align-items:end;gap:10px;grid-template-columns:minmax(85px,.35fr) minmax(200px,1fr) auto}.homework-reference-row .text-button{min-height:39px}
.homework-textbook{display:grid;gap:8px;padding:14px;border-left:3px solid var(--accent);background:#edf3f7}.homework-textbook p{margin:0;color:var(--muted);font-size:11px;line-height:1.7}
.homework-status{margin:0;font-size:12px}.homework-status.error,.notice.danger{color:#8b263c}.pill.warning{background:#f4e9cf;color:#79560d}
.homework-indexing{place-items:center;align-content:center;min-height:310px;text-align:center}.homework-indexing .notice{max-width:560px;text-align:left}
.homework-location{display:grid;gap:15px;padding:15px;border:1px solid var(--line);border-radius:12px;background:#fff;grid-template-columns:minmax(0,1fr) auto}.homework-location>div:first-child{display:grid;gap:6px}.homework-location strong{font-size:14px}.homework-location p{margin:0;color:var(--muted);font-size:12px;line-height:1.75;overflow-wrap:anywhere}.homework-location-edit{display:grid;gap:8px;grid-template-columns:78px 78px}.homework-location-edit input{padding:8px}
.assignment-locator{display:grid;gap:9px;margin:0 0 17px;padding:13px 15px;border:1px solid #b8c9d5;border-left:3px solid #6b1e32;border-radius:10px;background:#fffdf8;flex-shrink:0}
.assignment-locator>div:first-child{display:flex;justify-content:space-between;gap:12px}.assignment-locator strong{font-size:13px}.assignment-locator span{max-width:55%;overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.assignment-location-list{display:flex;gap:7px;flex-wrap:wrap}.assignment-location-list .text-button{padding:6px 9px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:11px}.assignment-location-list .text-button.active{border-color:#b87a00;background:#fff1bf;color:#694700}.assignment-locator p{margin:0;color:var(--muted);font-size:10px;line-height:1.6}
.study-pdf-highlight{animation:homework-highlight-pulse 1.2s ease-out 1}
@keyframes homework-highlight-pulse{0%{transform:scale(1.18);background:rgba(255,190,30,.75)}100%{transform:scale(1);background:rgba(255,210,74,.38)}}
@media(max-width:800px){#homework-workspace{width:100%;height:100%;max-height:100%;margin:0;border:0;border-radius:0;inset:0}.homework-header{align-items:flex-start;padding:15px}.homework-header h2{font-size:17px}.homework-layout{display:block;overflow:auto}.homework-source{border:0;border-bottom:1px solid var(--line);padding:15px}.homework-source>img{max-height:34vh}.homework-card{max-height:none;margin:14px;padding:18px}.homework-form-grid{grid-template-columns:1fr}.homework-reference-row{grid-template-columns:1fr}.homework-location{grid-template-columns:1fr}.homework-location-edit{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){.study-pdf-highlight{animation:none}}
