.wl-root{--ink: #232323;--slate: #363c46;--body: #4a4f57;--muted: #8a8a8a;--line: #dcdcdc;--grid-line: #e6e8eb;--paper: #f4f4f4;--lime: #caf1a2;--lime-soft: #e5f8d4;--green: #5b8a2e;--crit: #c93c3c;--float: #8a8a8a;font-family:Segoe UI,Inter,system-ui,-apple-system,sans-serif;font-size:12.5px;color:var(--ink);background:#fff;border:1px solid #c7cacf;border-radius:8px;box-shadow:0 1px 2px #0000000f,0 12px 32px -12px #23232347;overflow:hidden;display:flex;flex-direction:column;min-width:0;text-align:left;line-height:1.35}.wl-root *,.wl-root *:before,.wl-root *:after{box-sizing:border-box}.wl-full{height:100vh;border-radius:0;border:0}.wl-root button,.wl-root select,.wl-root input{font:inherit;color:inherit}.wl-muted{color:var(--muted)}.wl-spacer{flex:1}.neg{color:var(--crit);font-weight:600}.wl-titlebar{display:flex;align-items:center;gap:10px;height:34px;padding:0 0 0 12px;background:var(--ink);color:#fff;flex:none}.wl-appicon{width:16px;height:16px;border-radius:3px;background:linear-gradient(90deg,var(--lime) 0 22%,transparent 22% 39%,var(--lime) 39% 61%,transparent 61% 78%,var(--lime) 78%);clip-path:polygon(0 0,100% 0,100% 100%,0 100%);transform:skew(-18deg)}.wl-apptitle{font-weight:600;letter-spacing:.01em}.wl-apptitle .wl-muted{color:#b9bcc1;font-weight:400}.wl-scen{display:flex;align-items:center;gap:6px;color:#b9bcc1}.wl-scen select{background:#34373c;color:#fff;border:1px solid #4a4d52;border-radius:4px;padding:2px 6px;max-width:300px}.wl-popout{color:var(--lime);text-decoration:none;font-size:12px}.wl-popout:hover{text-decoration:underline}.wl-winbtns{display:flex;height:100%}.wl-winbtns i{width:40px;height:100%;position:relative}.wl-winbtns i:before{content:"";position:absolute;left:15px;top:16px;width:10px;border-top:1px solid #cfd2d6}.wl-winbtns i:nth-child(2):before{top:12px;height:9px;border:1px solid #cfd2d6}.wl-winbtns i:nth-child(3):before,.wl-winbtns i:nth-child(3):after{content:"";position:absolute;left:14px;top:16px;width:12px;border-top:1px solid #cfd2d6;transform:rotate(45deg)}.wl-winbtns i:nth-child(3):after{transform:rotate(-45deg)}.wl-menubar{display:flex;gap:2px;padding:2px 6px;background:var(--paper);border-bottom:1px solid var(--line);flex:none;position:relative;z-index:5}.wl-menu{position:relative}.wl-menu>button{background:none;border:0;padding:3px 9px;border-radius:4px;cursor:default}.wl-menu>button:hover,.wl-menu>button.on{background:#e3e5e8}.wl-dropdown{position:absolute;top:100%;left:0;min-width:260px;background:#fff;border:1px solid #c7cacf;border-radius:6px;box-shadow:0 8px 24px #00000029;padding:4px}.wl-dropdown button{display:flex;width:100%;align-items:center;gap:6px;background:none;border:0;padding:6px 8px;border-radius:4px;text-align:left;cursor:default}.wl-dropdown button:hover:not(:disabled){background:var(--lime-soft)}.wl-dropdown button:disabled{color:#b4b6ba}.wl-dropdown .chk{width:14px;color:var(--green);font-weight:700}.wl-dropdown .key{margin-left:auto;color:var(--muted);font-size:11px}.wl-toolbar{display:flex;align-items:center;gap:4px;padding:6px 8px;border-bottom:1px solid var(--line);flex:none;flex-wrap:wrap}.wl-toolbar button,.wl-teachbar button,.wl-addrel button,.wl-modal button{background:#fff;border:1px solid #cdd0d4;border-radius:4px;padding:3px 10px;min-height:26px;cursor:pointer;white-space:nowrap}.wl-toolbar button:hover:not(:disabled),.wl-teachbar button:hover:not(:disabled){background:var(--paper)}.wl-toolbar button.on{background:var(--lime-soft);border-color:#9fc77a}.wl-root button:disabled{opacity:.45;cursor:not-allowed}.wl-root .wl-primary{background:var(--green);border-color:var(--green);color:#fff;font-weight:600}.wl-root .wl-primary:hover:not(:disabled){background:#4c7726}.wl-primary kbd{font:inherit;font-size:10.5px;font-weight:600;background:#fff3;border-radius:3px;padding:0 4px;margin-left:4px}.wl-sep{width:1px;height:20px;background:var(--line);margin:0 4px}.wl-teachbar{display:flex;align-items:center;gap:8px;padding:7px 10px;background:var(--lime-soft);border-bottom:1px solid #b9dd96;flex:none}.wl-teach-phase{font-weight:700;text-transform:uppercase;font-size:10.5px;letter-spacing:.08em;color:var(--green);white-space:nowrap}.wl-teach-text{flex:1;min-width:0}.wl-msg{display:flex;align-items:center;gap:8px;padding:6px 10px;background:#f2f6fb;border-bottom:1px solid #d6e0ec;flex:none}.wl-msg.err{background:#fdf0ee;border-color:#f0c4bd;color:#8c2a20}.wl-x{margin-left:auto;background:none;border:0;font-size:15px;line-height:1;cursor:pointer;color:var(--muted);padding:0 4px}.wl-split{display:flex;border-bottom:1px solid #c7cacf;overflow-y:auto;flex:none;min-height:0}.wl-full .wl-split{flex:1 1 auto}.wl-grid{flex:none;border-right:2px solid #c7cacf;background:#fff}.wl-grid-head,.wl-row{display:grid}.wl-grid-head{background:#eef0f2;border-bottom:1px solid #cfd2d6;font-weight:600;font-size:11.5px;color:var(--slate)}.wl-grid-head>div{display:flex;align-items:flex-end;padding:0 6px 6px;border-right:1px solid #dde0e3}.wl-grid-head>div.num{justify-content:flex-end}.wl-row{border-bottom:1px solid var(--grid-line);cursor:default}.wl-row>div{display:flex;align-items:center;padding:0 6px;border-right:1px solid var(--grid-line);white-space:nowrap;overflow:hidden;font-variant-numeric:tabular-nums}.wl-row>div.num{justify-content:flex-end}.wl-row.sel{background:var(--lime-soft)}.wl-row.teach{background:var(--lime)}.wl-row.problem{background:#fdf0ee}.wl-row .c-name,.wl-row .c-dur,.wl-row .c-preds{padding:0}.wl-in{width:100%;height:100%;border:0;background:transparent;padding:0 6px;outline:none;min-width:0}.wl-in.num{text-align:right;-moz-appearance:textfield}.wl-in.num::-webkit-inner-spin-button{opacity:.4}.wl-in.mono{font-family:Cascadia Mono,Consolas,ui-monospace,monospace;font-size:11.5px}.wl-in:focus{background:#fff;box-shadow:inset 0 0 0 2px var(--green)}.wl-in:disabled{color:inherit}.wl-id{display:inline-flex;align-items:center;gap:6px;font-weight:600}.wl-id i{width:10px;height:7px;border-radius:1px;background:var(--green)}.wl-id.ms i{width:7px;height:7px;transform:rotate(45deg);background:var(--ink)}.wl-id.crit i{background:var(--crit)}.c-tf .zero{color:var(--crit)}.wl-gantt{flex:1 1 auto;overflow-x:auto;overflow-y:hidden;background:#fff}.wl-gantt svg{display:block;font-family:inherit}.wg-week{fill:#eef0f2;stroke:#cfd2d6}.wg-day{fill:#f7f8f9;stroke:#dde0e3}.wg-head-t{font-size:11px;font-weight:600;fill:var(--slate)}.wg-day-t{font-size:10px;fill:var(--body)}.wg-vl{stroke:#f0f1f3}.wg-vl.wk{stroke:#dadde1}.wg-row{fill:transparent}.wg-row.sel{fill:var(--lime-soft);fill-opacity:.75}.wg-row.teach{fill:var(--lime);fill-opacity:.6}.wg-bar{fill:var(--green)}.wg-bar.crit{fill:var(--crit)}.wg-ms{fill:var(--ink)}.wg-ms.crit{fill:var(--crit)}.wg-late{fill:none;stroke:var(--slate);stroke-dasharray:3 2}.wg-float line{stroke:var(--float);stroke-width:2}.wg-label{font-size:11px;fill:var(--slate);pointer-events:none}.wg-label .neg{fill:var(--crit);font-weight:600}.wg-link{fill:none;stroke:#5c6169;stroke-width:1.2}.wg-link.crit{stroke:var(--crit)}.wg-link.nondriving{stroke-dasharray:3 3}.wg-arrowhead{fill:#5c6169}.wg-arrowhead.crit{fill:var(--crit)}.wg-start{stroke:var(--slate);stroke-width:1}.wg-deadline line{stroke:var(--crit);stroke-width:1.5;stroke-dasharray:5 3}.wg-deadline text{font-size:10.5px;font-weight:600;fill:var(--crit)}.wl-bottom{display:flex;min-height:232px;flex:none}.wl-full .wl-bottom{height:290px}.wl-details{flex:1 1 auto;min-width:0;display:flex;flex-direction:column}.wl-tabs{display:flex;align-items:flex-end;gap:2px;padding:6px 8px 0;background:var(--paper);border-bottom:1px solid var(--line)}.wl-tabs button{background:none;border:1px solid transparent;border-bottom:0;border-radius:5px 5px 0 0;padding:4px 12px;cursor:pointer;color:var(--body)}.wl-tabs button.on{background:#fff;border-color:var(--line);color:var(--ink);font-weight:600;margin-bottom:-1px;padding-bottom:5px}.wl-tabs-title{margin-left:auto;padding:0 4px 6px;color:var(--slate);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wl-tab-body{padding:10px 12px;overflow:auto;flex:1;max-height:300px}.wl-fields{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:10px}.wl-fields label{display:flex;align-items:center;gap:6px;color:var(--body)}.wl-fields input,.wl-fields select,.wl-rel select,.wl-rel input,.wl-addrel select,.wl-addrel input{border:1px solid #cdd0d4;border-radius:4px;padding:2px 6px;background:#fff}.wl-fields input{width:64px}.wl-unit{color:var(--muted)}.wl-dates{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 18px;margin:0}.wl-dates div{display:flex;justify-content:space-between;gap:8px;border-bottom:1px dotted var(--line);padding-bottom:3px}.wl-dates dt{color:var(--body)}.wl-dates dd{margin:0;font-weight:600;font-variant-numeric:tabular-nums}.wl-explain{margin:10px 0 0;color:var(--slate)}.wl-rels{display:grid;grid-template-columns:1fr 1fr;gap:16px}.wl-rel{width:100%;border-collapse:collapse;font-size:12px}.wl-rel th{text-align:left;font-weight:600;color:var(--slate);border-bottom:1px solid var(--line);padding:3px 4px}.wl-rel td{padding:2px 4px;border-bottom:1px solid var(--grid-line)}.wl-rel .num{text-align:right}.wl-rel input{width:48px;text-align:right}.wl-addrel{display:flex;gap:4px;margin-top:6px;flex-wrap:wrap}.wl-addrel select[name=other]{max-width:170px}.wl-addrel input{width:48px}.wl-math{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.wl-math section{border:1px solid var(--line);border-radius:6px;padding:8px 10px}.wl-math section.focus{border-color:var(--green);box-shadow:0 0 0 2px var(--lime)}.wl-math h4{margin:0 0 6px;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--green)}.wl-math p{margin:0 0 6px}.wl-math ul{list-style:none;margin:0 0 6px;padding:0}.wl-math li{display:flex;justify-content:space-between;gap:8px;padding:2px 6px;border-radius:4px;font-variant-numeric:tabular-nums}.wl-math li.drv{background:var(--lime-soft);font-weight:600}.wl-res{font-variant-numeric:tabular-nums}.wl-foot{grid-column:1 / -1;margin:0;color:var(--muted);font-size:11.5px}.wl-tasks{flex:none;width:340px;border-left:1px solid var(--line);padding:8px 12px 10px;overflow:auto;max-height:340px;background:#fcfcfc}.wl-full .wl-tasks{max-height:none}.wl-tasks-head{display:flex;align-items:center;gap:8px}.wl-link{background:none;border:0;color:var(--green);cursor:pointer;padding:0;text-decoration:underline}.wl-brief{margin:6px 0 8px;color:var(--body)}.wl-tasks ol{list-style:none;margin:0;padding:0;display:grid;gap:6px}.wl-tasks li{display:flex;gap:8px;padding:6px 8px;border-radius:6px;border:1px solid transparent}.wl-tasks li.cur{background:#fff;border-color:#b9dd96;box-shadow:0 1px #00000008}.wl-tasks li.todo{color:var(--muted)}.wl-tasks li.done{color:var(--body)}.wl-tick{flex:none;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:700;border:1px solid #cdd0d4;background:#fff}.wl-tasks li.done .wl-tick{background:var(--green);border-color:var(--green);color:#fff}.wl-tasks li.cur .wl-tick{border-color:var(--green);color:var(--green)}.wl-done{display:block;margin-top:6px;background:var(--green);color:#fff;border:0;border-radius:4px;padding:3px 12px;cursor:pointer;font-weight:600}.wl-wait{display:block;margin-top:4px;color:var(--muted);font-size:11.5px}.wl-complete{margin:10px 0 0;padding:8px 10px;border-radius:6px;background:var(--lime-soft);color:var(--green);font-weight:600}.wl-status{display:flex;gap:16px;align-items:center;padding:4px 10px;background:var(--paper);border-top:1px solid var(--line);color:var(--body);font-size:11.5px;flex:none;white-space:nowrap;overflow:hidden}.wl-status b{color:var(--ink);font-weight:600}.wl-status .neg b{color:var(--crit)}.wl-stale{color:#9a5b00;font-weight:600}.wl-ok{color:var(--green)}.wl-modal{position:fixed;inset:0;background:#23232359;display:grid;place-items:center;z-index:50}.wl-modal>div{background:#fff;border-radius:10px;padding:20px 22px;max-width:460px;box-shadow:0 20px 50px #0000004d}.wl-modal h3{margin:0 0 8px}.wl-modal kbd,.wl-modal code{background:var(--paper);border:1px solid var(--line);border-radius:3px;padding:0 4px;font-size:11.5px}@media(max-width:1100px){.wl-bottom{flex-direction:column}.wl-tasks{width:auto;border-left:0;border-top:1px solid var(--line)}.wl-math,.wl-rels{grid-template-columns:1fr}}
