#root{display:contents}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#faf9f5;--fg:#1f1e1d;--muted:#73726c;--card:#f0eee6;--raise:#fff;--me:#00000080;--sel:#00000012;--btn:#1f1e1d;--btn-fg:#fff;--line:#e6e3d9;--warn:#b45309;--ok:#15803d;--shadow:0 1px 2px #1f1e1d0d, 0 4px 16px #1f1e1d0f;--lift:0 2px 4px #1f1e1d0f, 0 12px 32px #1f1e1d1a;--serif:ui-serif, Georgia, "Times New Roman", serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#262624;--fg:#f5f4ee;--muted:#a8a69d;--card:#30302e;--raise:#31312f;--me:#ffffff8c;--sel:#ffffff24;--btn:#ffffffe0;--btn-fg:#1f1e1d;--line:#43423e;--warn:#f0a34a;--ok:#4ade80;--shadow:0 1px 2px #00000040, 0 4px 16px #00000040;--lift:0 2px 4px #0000004d, 0 12px 32px #0006}}*{box-sizing:border-box}body{background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;flex-direction:column;height:100dvh;margin:0;font:16px/1.55 -apple-system,Inter,system-ui,sans-serif;display:flex}h1,h2{font-family:var(--serif);letter-spacing:-.01em;font-weight:500}header{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:12px 20px;display:flex}header h1{margin:0;font-size:21px}#nav{gap:4px;margin:0 auto 0 12px;display:flex}#nav button{all:unset;cursor:pointer;color:var(--muted);border-radius:10px;padding:6px 14px;font-size:14.5px;transition:background .15s,color .15s}#nav button:hover{background:var(--card);color:var(--fg)}#nav button.on{background:var(--card);color:var(--fg);box-shadow:inset 0 0 0 1px var(--line);font-weight:600}#nav button:focus-visible{outline:2px solid var(--me);outline-offset:2px}.ailimit{color:var(--muted);align-items:center;gap:12px;font-size:13px;display:flex}.ailimit .lbl{line-height:1.25;display:grid}.ailimit .lbl span{color:var(--fg)}.ailimit .track{background:var(--card);border:1px solid var(--line);border-radius:99px;width:140px;height:8px;overflow:hidden}.ailimit .track i{background:#3b7ddd;border-radius:99px;height:100%;transition:width .4s;display:block}.ailimit.high .track i{background:var(--warn)}.ailimit.full .track i{background:#dc2626}.ailimit .pct{white-space:nowrap;font-variant-numeric:tabular-nums}body.home .ailimit{margin-left:auto}@media (width<=700px){.ailimit{display:none}}body.home #nav{display:none}button,select,textarea,input{transition:background .15s,border-color .15s,box-shadow .15s,transform .15s,opacity .15s}:focus-visible{outline:2px solid var(--me);outline-offset:2px}select,.menu,#back{font:inherit;border:1px solid var(--line);background:var(--raise);color:var(--fg);cursor:pointer;border-radius:10px;padding:6px 10px;font-size:14px}select:hover,.menu:hover,#back:hover{border-color:var(--muted)}.menu{display:none}.layout{flex:1;min-height:0;animation:.25s fade;display:flex}aside{border-right:1px solid var(--line);background:var(--bg);flex:none;width:290px;padding:10px;font-size:14.5px;overflow:auto}main{flex:1;min-width:0;min-height:0;display:flex;position:relative}.dropzone{background:color-mix(in srgb, var(--me) 18%, transparent);outline:2px solid var(--me);outline-offset:-2px;pointer-events:none;z-index:5;width:50%;position:absolute;top:0;bottom:0}.dropzone.left{left:0}.dropzone.right{right:0}body.dragging iframe{pointer-events:none}.tree .file[draggable=true],.finder .fitem[draggable=true]{-webkit-user-drag:element}.label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;padding:4px 6px 8px;font-size:12px}.tree summary{cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:3px 6px;list-style:none;display:flex}.tree summary::-webkit-details-marker{display:none}.tree summary{top:calc(var(--d,0) * 28px - 10px);z-index:calc(20 - var(--d,0));box-sizing:border-box;white-space:nowrap;background:var(--bg);height:28px;position:sticky;overflow:hidden}.tree summary:before{content:"";border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);width:6px;height:6px;margin:0 5px 0 2px;transition:transform .12s;transform:rotate(-45deg)}.tree details[open]>summary:before{transform:rotate(45deg)}.tree summary:hover,.tree summary:focus-visible{background:var(--card);outline:none}.tree .kids{border-left:1px solid var(--line);margin-left:11px;padding-left:6px}.tree .file{all:unset;box-sizing:border-box;cursor:pointer;border-radius:8px;justify-content:space-between;gap:8px;width:100%;padding:3px 6px 3px 20px;display:flex}.tree .file:hover,.tree .file:focus-visible{background:var(--card)}.tree .file.on{background:var(--card);font-weight:600}.tree .label{justify-content:space-between;align-items:center;display:flex}.tree .add{all:unset;cursor:pointer;color:var(--muted);letter-spacing:0;text-transform:none;border-radius:6px;padding:0 6px;font-size:12px}.tree .add:hover,.tree .add:focus-visible{color:var(--fg);background:var(--card)}.tree .acts{align-items:center;gap:2px;display:flex}.tree .add.icon{place-items:center;padding:3px 4px;display:grid}.tree summary .add{opacity:0;margin-left:auto}.tree summary:hover .add,.tree summary .add:focus-visible{opacity:1}.tree details.over>summary{background:color-mix(in srgb, var(--me) 18%, transparent);outline:1px solid var(--me);border-radius:8px}.tree .newfolder{box-sizing:border-box;width:calc(100% - 20px);font:inherit;color:var(--fg);background:var(--raise);border:1px solid var(--me);border-radius:6px;margin:2px 0 2px 20px;padding:3px 6px}.tree .treenote{color:var(--warn);padding:4px 6px;font-size:13px}.tree .none{color:var(--muted);padding:2px 6px 2px 20px;font-size:13px}.group{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.group+.group,.gsplit+.group{border-left:1px solid var(--line)}.gsplit{z-index:3;cursor:col-resize;touch-action:none;flex:none;width:9px;margin:0 -5px 0 -4px;position:relative}.gsplit:after{content:"";background:var(--me);opacity:0;width:2px;transition:opacity .15s;position:absolute;top:0;bottom:0;left:4px}.gsplit:hover:after,.gsplit.on:after,.gsplit:focus-visible:after{opacity:.7}.gsplit:focus-visible{outline:none}.tabs{background:var(--card);border-bottom:1px solid var(--line);scrollbar-width:none;flex:none;align-items:stretch;display:flex;overflow-x:auto}.tab{border-right:1px solid var(--line);max-width:220px;color:var(--muted);border-top:2px solid #0000;flex:none;align-items:center;display:flex}.tab.on{background:var(--bg);color:var(--fg);border-top-color:var(--me)}.group:not(.focus) .tab.on{border-top-color:var(--muted)}.tabs button{all:unset;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;padding:8px 12px;font-size:14px;overflow:hidden}.tabs button:focus-visible{outline:2px solid var(--me);outline-offset:-2px}.tab .x{border-radius:6px;flex:none;place-items:center;width:20px;height:20px;margin-right:8px;padding:0;font-size:15px;line-height:1;display:grid}.tab .x:hover{background:var(--line)}.tabs .split,.tabs .closeall{color:var(--muted);flex:none;margin-left:auto;font-size:13px}.tabs .closeall+.split{margin-left:0}.tabs .closeall:hover,.tabs .split:hover{color:var(--fg)}.body,.pane{flex-direction:column;flex:1;min-height:0;display:flex}.doc{padding:20px 24px;overflow:auto}.doc:has(iframe){padding:0}.doc iframe{border:0;flex:1;width:100%}.doc pre.txt{white-space:pre-wrap;font:inherit;margin:0;line-height:1.6}.md{max-width:760px;font-size:15.5px}.md h1{margin:4px 0 10px;font-size:24px}.md h2{font-size:19px}.md ul{padding-left:22px}#chat{flex-direction:column}.chatcol{flex-direction:column;flex:1;min-height:0;display:flex}#chat #f{align-items:center;width:auto;max-width:none;margin:0 16px 16px;padding-right:18px}#chat .send{padding:8px 30px}.chathead .clspick{margin-right:0}.todoslot{margin-left:auto}#todo{width:300px;padding:9px 14px;position:relative}#todo .todolist{z-index:20;box-sizing:border-box;background:var(--raise);border:1px solid var(--line);width:100%;max-height:60vh;box-shadow:var(--lift);border-radius:14px;padding:10px;position:absolute;top:calc(100% + 6px);right:0;overflow:auto}.todo.DONE span{opacity:.6;text-decoration:line-through}@media (width<=1000px){#todo{display:none}}#log{flex-direction:column;flex:1;gap:18px;padding:24px 20px;display:flex;overflow:auto}.m{align-self:stretch;width:100%;max-width:none;animation:.2s fade}.m.user{background:var(--card);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:18px 18px 6px;align-self:flex-end;width:fit-content;max-width:75%;padding:10px 16px}.m.assistant{border:1px solid var(--line);overflow-wrap:anywhere;border-radius:18px 18px 18px 6px;align-self:flex-start;width:fit-content;max-width:88%;padding:12px 16px}.m.assistant table{max-width:100%;display:block;overflow-x:auto}.m p{margin:0 0 10px}.m p:last-child{margin:0}.m ul,.m ol{margin:4px 0 10px;padding-left:22px}.hint{color:var(--muted);text-align:center;font-family:var(--serif);margin-top:20vh;font-size:20px}form{background:var(--raise);border:1px solid var(--line);width:calc(100% - 32px);max-width:760px;box-shadow:var(--shadow);border-radius:20px;align-items:flex-end;gap:8px;margin:0 auto 16px;padding:8px 8px 8px 14px;display:flex}form:focus-within{border-color:var(--muted)}form textarea:focus-visible{outline:none}textarea{font:inherit;color:var(--fg);resize:none;background:0 0;border:0;outline:none;flex:1;padding:6px 0}button.send{font:inherit;background:var(--btn);color:var(--btn-fg);cursor:pointer;border:0;border-radius:14px;padding:8px 16px;font-weight:600}button.send:hover{opacity:.9}button.send:disabled{opacity:.45}body.home .layout,body.home .menu,body.home #back{display:none!important}body:not(.home) #home{display:none}#home{flex:1;padding:36px 24px 64px;animation:.25s fade;overflow:auto}.dash{max-width:1120px;margin:0 auto}.dash h1{margin:0 0 4px;font-size:34px}.dash .sub{color:var(--muted);margin:0 0 28px}.cols{grid-template-columns:1fr 290px;align-items:start;gap:32px;display:grid}.courses{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:20px;display:grid}.course{all:unset;box-sizing:border-box;cursor:pointer;background:var(--raise);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;flex-direction:column;transition:transform .18s,box-shadow .18s;display:flex;overflow:hidden}.course:hover{box-shadow:var(--lift);transform:translateY(-3px)}.course:focus-visible{outline:2px solid var(--me);outline-offset:3px}.course .ban{color:#fff;height:112px;font-family:var(--serif);background:linear-gradient(135deg, hsl(var(--h) 48% 46%), hsl(calc(var(--h) + 28) 50% 34%));align-items:flex-end;padding:14px 16px;font-size:25px;line-height:1.15;display:flex}.course .info{flex-wrap:wrap;gap:6px;padding:12px 16px 16px;display:flex}.chip{background:var(--card);color:var(--muted);border-radius:99px;padding:2px 10px;font-size:12.5px;font-weight:600}.chip.hot{color:var(--warn)}.side{background:var(--raise);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;padding:16px}.side h2{margin:0 0 8px;font-size:18px}#todo summary{cursor:pointer;align-items:center;gap:8px;list-style:none;display:flex}#todo summary::-webkit-details-marker{display:none}#todo summary h2{margin:0;font-size:17px}#todo summary .count{background:var(--card);color:var(--muted);border-radius:99px;padding:1px 8px;font-size:12px}#todo summary .chev{color:var(--muted);margin-left:auto;transition:transform .15s}#todo details:not([open]) .chev{transform:rotate(-90deg)}.todo{all:unset;box-sizing:border-box;border-top:1px solid var(--line);cursor:pointer;border-radius:8px;gap:2px;width:100%;padding:10px 8px;display:grid}.todo:first-of-type{border-top:0}.todo:hover{background:var(--card)}.todo small{color:var(--muted)}@keyframes fade{0%{opacity:0;transform:translateY(4px)}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}body.res .layout,body.res .menu{display:none!important}body:not(.res) #resources{display:none}body.prefs .layout,body.prefs .menu,body.tools .layout,body.tools .menu,body.professors .layout,body.professors .menu{display:none!important}body:not(.prefs) #prefs,body:not(.tools) #tools,body:not(.professors) #profs{display:none}#prefs,#tools,#profs{flex-direction:column;flex:1;min-height:0;padding:28px 24px 24px;animation:.25s fade;display:flex;overflow:auto}.prof{gap:8px}.prof.fcol{width:320px;padding:18px 22px}.prof .pname{font-size:16px;font-weight:600}.prof .mail{border:1px solid var(--line);color:var(--fg);border-radius:6px;align-self:flex-start;padding:5px 10px}.prof dl{grid-template-columns:auto 1fr;gap:2px 14px;margin:0;font-size:14.5px;display:grid}.prof dt{color:var(--muted)}.prof dd{margin:0}.prof dl:empty{display:none}.prof dd a{color:inherit}.tool-item{padding:9px 10px}.tool-item>span:first-child{gap:1px;min-width:0;display:grid}.tool-name{text-overflow:ellipsis;overflow:hidden}.tool-item small{color:var(--muted);text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.tool-item.sel small{color:var(--fg);opacity:.75}.tool-form{gap:14px;max-width:680px}.tool-form[hidden]{display:none}.tool-form .sub{margin:0;line-height:1.45}.popup{background:var(--raise);color:var(--fg);border:1px solid var(--line);box-shadow:var(--lift);border-radius:14px;align-items:center;gap:12px;margin-left:auto;padding:6px 6px 6px 14px;font-size:14px;display:flex}.tree .popup{flex-wrap:wrap;gap:8px;margin:4px 0 8px}.ctxmenu{z-index:30;background:var(--raise);border:1px solid var(--line);min-width:160px;box-shadow:var(--lift);border-radius:10px;padding:5px;position:fixed}.ctxmenu button{all:unset;box-sizing:border-box;width:100%;color:var(--fg);cursor:default;border-radius:6px;padding:5px 12px;font-size:14px;display:block}.ctxmenu button:hover,.ctxmenu button:focus-visible{background:var(--sel);color:var(--fg)}.ctxmenu .ctxlabel{color:var(--muted);padding:6px 12px 2px;font-size:12px}.ctxmenu button.sub{padding-left:22px}.settings{display:flex;position:relative}.gear{all:unset;width:34px;height:34px;color:var(--muted);cursor:pointer;border-radius:10px;place-items:center;display:grid}.gear:hover,.gear:focus-visible,.gear[aria-expanded=true]{background:var(--card);color:var(--fg)}.settings .ctxmenu{min-width:200px;position:absolute;top:calc(100% + 6px);right:0}.ctxmenu button:disabled{color:var(--muted);background:0 0}.ctxmenu hr{border:0;border-top:1px solid var(--line);margin:5px 4px}.treebox{min-height:100%}.fcol .newfolder{box-sizing:border-box;width:100%;font:inherit;color:var(--fg);background:var(--raise);border:1px solid var(--me);border-radius:8px;margin-bottom:4px;padding:6px 8px;font-size:14px}.popup .x{all:unset;cursor:pointer;color:var(--muted);border-radius:6px;padding:2px 8px;font-size:18px}.popup .x:hover,.popup .x:focus-visible{background:var(--line)}.tool-form label{color:var(--muted);flex-direction:column;gap:5px;font-size:13px;font-weight:600;display:flex}.tool-form input:not([type=file]),.tool-form select{font:inherit;color:var(--fg);border:1px solid var(--line);background:var(--bg);border-radius:10px;padding:9px 11px;font-size:14.5px;font-weight:400}.tool-form input:focus-visible,.tool-form select:focus-visible,.tool-form textarea:focus-visible{outline:2px solid var(--me);outline-offset:1px}.tool-form .fields{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.tool-form .or{color:var(--muted);text-align:center;margin:-4px 0;font-size:13px}.tool-form textarea{font:inherit;color:var(--fg);border:1px solid var(--line);background:var(--bg);resize:vertical;border-radius:10px;min-height:96px;padding:10px 11px;font-size:14.5px;font-weight:400}.pick{text-align:center;border:1.5px dashed var(--line);background:var(--bg);cursor:pointer;border-radius:14px;justify-content:center;align-items:center;padding:26px 16px;transition:border-color .15s,background .15s;position:relative;gap:4px!important;display:flex!important}.pick input{opacity:0;cursor:pointer;position:absolute;inset:0}.pick strong{color:var(--fg);font-size:15px;font-weight:600}.pick small{font-weight:400}.pick:hover,.pick.over,.pick:focus-within{border-color:var(--me);background:color-mix(in srgb, var(--me) 8%, var(--bg))}.pick.has{border-style:solid}.pref-edit{flex-direction:column;gap:10px;display:flex}.pref-edit h2{margin:0;font-size:18px}.pref-edit textarea{font:inherit;border:1px solid var(--line);background:var(--bg);min-height:140px;color:var(--fg);resize:vertical;border-radius:10px;padding:10px}.pref-edit .row{gap:8px;display:flex}#resources{flex-direction:column;flex:1;min-height:0;padding:28px 24px 24px;animation:.25s fade;display:flex}.res-wrap{flex-direction:column;flex:1;min-height:0;display:flex}.res-wrap h1,.chathead h1{margin:0;font-size:30px}.res-head .clspick{margin-right:auto}.res-head h1:not(:has(+.clspick)){margin-right:auto}.chathead{margin-bottom:16px;padding:28px 24px 0}body.home .chathead,body.res .chathead,body.prefs .chathead,body.tools .chathead,body.professors .chathead{display:none}.res-head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.grip{z-index:2;cursor:col-resize;touch-action:none;flex:none;width:9px;margin:0 -5px 0 -4px;position:relative}.grip:after{content:"";background:var(--me);opacity:0;border-radius:2px;width:2px;transition:opacity .15s;position:absolute;top:0;bottom:0;left:4px}.grip:hover:after,.grip.on:after{opacity:.7}.fcol.drop,.fitem.drop{background:color-mix(in srgb, var(--me) 14%, var(--raise));box-shadow:inset 0 0 0 2px var(--me)}.finder{background:var(--raise);border:1px solid var(--line);min-height:0;box-shadow:var(--shadow);border-radius:16px;flex:1;display:flex;overflow-x:auto}.fcol{border-right:1px solid var(--line);flex:none;width:270px;padding:8px;animation:.15s fade;overflow-y:auto}.fitem{all:unset;box-sizing:border-box;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:6px 10px;display:flex;overflow:hidden}.fitem:hover,.fitem:focus-visible{background:var(--card)}.fitem.sel{background:var(--sel);color:var(--fg)}.fitem .chev{color:var(--muted);font-size:18px;line-height:1}.fitem.sel .chev{color:var(--fg)}.fcol .msg{padding:6px 10px}.fprev{flex:1;min-width:420px;padding:18px 22px;overflow:auto}.fprev.frame{padding:0;display:flex}.fprev iframe{border:0;flex:1;width:100%}.ov{gap:18px;max-width:1000px;display:grid}.ov h1{margin:0;font-size:28px}.ov h2{margin:0 0 4px;font-size:18px}.sub{color:var(--muted);margin:0 0 4px;font-size:14px}.cards{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;display:grid}.card{background:var(--raise);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;flex-direction:column;gap:10px;padding:18px;display:flex}.card select,.card input,.card textarea{background:var(--bg);width:100%}.card input,.card textarea{font:inherit;border:1px solid var(--line);color:var(--fg);border-radius:10px;padding:8px 10px;font-size:15px}.card textarea{resize:vertical;min-height:110px}.btn{font:inherit;background:var(--btn);color:var(--btn-fg);cursor:pointer;border:0;border-radius:12px;align-self:flex-start;padding:8px 16px;font-size:14.5px;font-weight:600}.btn:hover{opacity:.9}.btn.ghost{color:var(--fg);border:1px solid var(--line);background:0 0}.btn.ghost:hover{border-color:var(--muted)}.btn:disabled{opacity:.5;cursor:progress}.msg{color:var(--muted);min-height:1.2em;font-size:14px}.msg.err{color:var(--warn)}.task{border-top:1px solid var(--line);gap:6px;padding:12px 0;display:grid}.task:first-of-type{border-top:0}.task .row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pill{border:1px solid var(--line);border-radius:99px;padding:2px 10px;font-size:12px;font-weight:700}.pill.DONE{color:var(--ok);border-color:var(--ok)}.pill.INPROGRESS{color:var(--warn);border-color:var(--warn)}.card ul{margin:0;padding-left:20px}.q{border-top:1px solid var(--line);gap:6px;padding-top:12px;display:grid}.q button.c{font:inherit;text-align:left;border:1px solid var(--line);background:var(--bg);color:var(--fg);cursor:pointer;border-radius:10px;padding:9px 12px}.q button.c:hover{border-color:var(--muted)}.q button.c.good{border-color:var(--ok);background:color-mix(in srgb, var(--ok) 15%, var(--bg))}.q button.c.bad{border-color:var(--warn);background:color-mix(in srgb, var(--warn) 15%, var(--bg))}@media (width<=800px){.menu{display:block}aside{z-index:5;background:var(--bg);border:0;width:auto;display:none;position:fixed;inset:57px 0 0}body.open aside{display:block}main{flex-direction:column}.group+.group{border-left:0;border-top:1px solid var(--line)}.gsplit{display:none}.group{flex:1 1 0!important}.gsplit+.group{border-left:0;border-top:1px solid var(--line)}.cols{grid-template-columns:1fr}#home{padding:24px 16px 48px}.doc{padding:16px}}.sg{flex-direction:column;flex:1;min-height:0;font-size:14px;display:flex;overflow:auto}.sg-head{z-index:2;background:var(--bg);border-bottom:1px solid var(--line);gap:6px;padding:14px 18px 10px;display:grid;position:sticky;top:0}.sg-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sg-file{font-size:15px;font-weight:600}.sg-tag{background:var(--sel);border-radius:99px;padding:2px 8px;font-size:12px}.sg-count{color:var(--muted);margin-left:auto;font-size:12.5px}.sg-count .a,.ln.add .s,.hunk .ok{color:#3fb950}.sg-count .d,.ln.del .s{color:#f85149}.sg-ask{color:var(--muted);font-size:13px}.sg-note{font-size:13px}.sg-err{color:var(--warn);font-size:13px}.sg-btn{all:unset;cursor:pointer;border:1px solid var(--line);border-radius:9px;padding:5px 12px;font-size:13px;font-weight:600}.sg-btn:hover{background:var(--sel)}.sg-btn:disabled{opacity:.45;cursor:default}.sg-btn:focus-visible{outline:2px solid var(--me)}.sg-btn.main{background:var(--btn);color:var(--btn-fg);border-color:#0000}.sg-body{align-content:start;gap:10px;padding:12px 14px 30px;display:grid}.hunk{border:1px solid var(--line);background:var(--raise);border-radius:12px;overflow:hidden}.hunk-h{background:var(--card);color:var(--muted);align-items:center;gap:8px;padding:7px 10px 7px 14px;font-size:12.5px;display:flex}.hunk:not(.accepted):not(.rejected) .hunk-h{border-bottom:1px solid var(--line)}.hunk-h .sp{gap:6px;margin-left:auto;display:flex}.hunk .ok{font-weight:600}.hunk .no{color:var(--muted);font-weight:600}.split{grid-template-columns:1fr 1fr;display:grid}.split>div{min-width:0}.split>div:first-child{border-right:1px solid var(--line)}.ln{grid-template-columns:38px 16px 1fr;font-size:13.5px;line-height:1.55;display:grid}.ln .n{color:var(--muted);text-align:right;opacity:.7;-webkit-user-select:none;user-select:none;padding:2px 8px 0 0;font-size:12px}.ln .s{padding-top:2px}.ln .t{white-space:pre-wrap;overflow-wrap:anywhere;padding:2px 12px 2px 0}.ln.del{background:#f8514921}.ln.add{background:#2ea04326}.ln.del mark{color:inherit;background:#f8514961;border-radius:3px}.ln.add mark{color:inherit;background:#2ea0436b;border-radius:3px}.ln.empty{background:repeating-linear-gradient(-45deg, transparent 0 6px, var(--sel) 6px 7px)}.same .ln{color:var(--muted)}.fold{all:unset;cursor:pointer;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:10px;padding:6px;font-size:12.5px}.fold:hover,.fold:focus-visible{color:var(--fg);border-color:var(--muted)}.hunk .reply{border-top:1px solid var(--line);background:var(--card);padding:10px 12px;display:grid}.hunk .reply input{font:inherit;border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:9px;padding:8px 10px;font-size:13.5px}::highlight(find){color:#1f1e1d;background-color:#facc15}::highlight(find-now){color:#1f1e1d;background-color:#fb923c}.findbar{z-index:40;background:var(--raise);border:1px solid var(--line);width:min(420px,100% - 32px);box-shadow:var(--lift);border-radius:12px;padding:8px;font-size:13.5px;position:fixed;top:68px;right:16px}.findbar .row{align-items:center;gap:6px;display:flex}.findbar input{min-width:0;font:inherit;border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:8px;flex:1;padding:6px 9px}.findbar .count{color:var(--muted);white-space:nowrap;font-size:12.5px}.findbar .row button{all:unset;cursor:pointer;color:var(--muted);border-radius:6px;padding:3px 7px}.findbar .row button:hover:not(:disabled){background:var(--sel);color:var(--fg)}.findbar .row button:disabled{opacity:.4;cursor:default}.findbar .pages{color:var(--muted);padding:6px 4px 2px;font-size:12px}.findbar .hits{max-height:min(60vh,420px);margin:4px 0 0;overflow:auto}.findbar .hits section+section{border-top:1px solid var(--line);margin-top:4px;padding-top:4px}.findbar .hits h4{color:var(--fg);justify-content:space-between;gap:8px;margin:4px 4px 2px;font:600 12.5px/1.4 inherit;display:flex}.findbar .hits h4 span{overflow-wrap:anywhere}.findbar .hits h4 small{color:var(--muted);white-space:nowrap;font-weight:400}.findbar .hits ol{margin:0;padding:0 0 0 8px;list-style:none}.findbar .hits button{all:unset;box-sizing:border-box;cursor:pointer;width:100%;color:var(--muted);border-radius:8px;padding:6px 8px;font-size:13px;line-height:1.4;display:block}.findbar .hits button:hover,.findbar .hits button.on{background:var(--sel);color:var(--fg)}.findbar .hits small{color:var(--fg);margin-right:4px;font-weight:600}.findbar mark{color:#1f1e1d;background:#facc15;border-radius:3px;padding:0 1px}[data-doc]{position:relative}.findpage{z-index:5;background:var(--bg);padding:0 16px 24px;position:absolute;inset:0;overflow:auto}.findpage-bar{z-index:1;background:var(--bg);color:var(--muted);justify-content:flex-start;align-items:center;gap:10px;padding:10px 2px;font-size:13px;display:flex;position:sticky;top:0}.findpage .sheet{max-width:900px;box-shadow:var(--shadow);background:#fff;margin:0 auto 14px;position:relative}.findpage .sheet img{width:100%;height:auto;display:block}.findpage .sheet i{mix-blend-mode:multiply;background:#facc1573;border-radius:2px;position:absolute}.findpage .sheet i.now{background:#fb923ca6;outline:2px solid #ea580c}.toast{z-index:50;background:var(--raise);border:1px solid var(--line);box-shadow:var(--lift);border-radius:12px;align-items:center;gap:10px;padding:9px 10px 9px 16px;font-size:14px;display:flex;position:fixed;top:68px;left:50%;transform:translate(-50%)}.toast button{all:unset;cursor:pointer;color:var(--muted);padding:0 6px;font-size:17px}.toast button:hover{color:var(--fg)}.gbar{border-bottom:1px solid var(--line);flex:none;align-items:center;gap:8px;padding:8px 12px;display:flex}.gbar .gname{text-overflow:ellipsis;white-space:nowrap;margin-right:auto;font-weight:600;overflow:hidden}.gbar a.sg-btn{text-decoration:none}.gview{flex:1;min-height:0;display:flex;overflow:hidden}.gview iframe{border:0;flex:1;width:100%}.fprev.gprev{flex-direction:column}.m.sgcard{border:1px solid var(--line);background:var(--bg);border-radius:14px;flex:none;max-width:900px;padding:0;overflow:hidden}.m.sgcard .sg{overflow:visible}.m.sgcard .sg-head{position:static}.tree .file.flash{animation:1.6s flash}@keyframes flash{0%,60%{background:var(--sel);box-shadow:inset 0 0 0 1px var(--me)}}.doc:has(>.gbar){flex-direction:column;padding:0;display:flex}.gbar .vswitch{border:1px solid var(--line);border-radius:10px;gap:2px;padding:2px;display:flex}.gbar .vswitch .sg-btn{border:0;padding:4px 10px}.gbar .vswitch .sg-btn.on{background:var(--sel)}.tview,.notepage{flex:1;min-height:0;padding:22px 28px 40px;overflow:auto}.notepage .txt{white-space:pre-wrap;font:inherit;margin:0;line-height:1.6}.tview{box-sizing:border-box;width:100%;max-width:820px;margin:0 auto;font-size:15.5px;line-height:1.65}.tview .plain p{white-space:pre-wrap;border-radius:6px;margin:0 0 6px;padding:2px 8px}.tview .plain p:hover{background:var(--card)}.tview .plain p.blank{min-height:1em}.tview p[data-pic]:after{content:"Picture";background:var(--sel);color:var(--muted);-webkit-user-select:none;user-select:none;border-radius:99px;margin-left:8px;padding:1px 8px;font-size:12px}.tview ::selection{background:#facc1573}.hlchip{border:1px solid var(--line);background:var(--card);border-radius:12px;align-items:center;gap:8px;margin:0 16px 8px;padding:7px 8px 7px 12px;font-size:13.5px;display:flex}.hlchip span{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--muted);flex:1;overflow:hidden}.hlchip q{color:var(--fg)}.hlchip button{all:unset;cursor:pointer;color:var(--muted);padding:0 6px;font-size:16px}.hlchip button:hover{color:var(--fg)}.chatimgs{flex-wrap:wrap;gap:8px;margin:0 16px 8px;display:flex}.chatimgs figure{margin:0;position:relative}.chatimgs img,.m.user .imgs img{object-fit:cover;border:1px solid var(--line);border-radius:10px;width:64px;height:64px;display:block}.chatimgs button{all:unset;background:var(--raise);border:1px solid var(--line);cursor:pointer;border-radius:99px;place-items:center;width:18px;height:18px;font-size:12px;display:grid;position:absolute;top:-6px;right:-6px}.m.user .imgs{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.chatcol.dropping{box-shadow:inset 0 0 0 2px var(--me);border-radius:12px}.tview:has(.docpage){background:var(--card);max-width:none}.docpage{box-sizing:border-box;color:#000;box-shadow:var(--shadow);background:#fff;max-width:816px;min-height:60vh;margin:0 auto;padding:56px 64px}.docpage img{max-width:100%;height:auto}.docpage ::selection{background:#4285f459}.sg-stale{color:var(--warn);font-size:13px}.sg.stale .hunk,.sg.stale .fold{opacity:.55}.tabs .newchat{width:26px;height:26px;color:var(--muted);border-radius:6px;flex:none;align-self:center;place-items:center;margin:0 8px;padding:0;font-size:18px;line-height:1;display:grid}.tabs .newchat:hover{color:var(--fg);background:var(--line)}.tab input.rename{all:unset;box-sizing:border-box;width:180px;color:var(--fg);background:var(--bg);border:1px solid var(--me);border-radius:6px;margin:4px 6px;padding:3px 6px;font-size:14px}.chatmenu{width:320px}.chatmenu .chatlist{max-height:50vh;overflow:auto}.chatmenu .chatlist button{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chatmenu .chatlist button.on{background:var(--sel)}.chatmenu small{color:var(--muted);font-size:12px;display:block}.pref-edit textarea.learned{min-height:320px;font-size:14px;line-height:1.5}#log .turn{flex-direction:column;gap:4px;animation:.2s fade;display:flex}#log .turn.user{align-items:flex-end}#log .turn.assistant{align-items:flex-start}#log .meta{min-height:24px;color:var(--muted);opacity:0;align-items:center;gap:6px;font-size:12.5px;transition:opacity .12s;display:flex}#log .turn:hover .meta,#log .meta:focus-within{opacity:1}#log .meta.user{flex-direction:row-reverse}#log .meta.assistant{padding-left:6px}#log .meta button{all:unset;cursor:pointer;border-radius:6px;place-items:center;width:24px;height:24px;display:grid}#log .meta button:hover{color:var(--fg);background:var(--sel)}#log .meta button:focus-visible{outline:2px solid var(--me)}#log form.editbox{background:var(--card);width:min(640px,75%);max-width:none;box-shadow:none;border-radius:18px;flex-direction:column;align-items:stretch;gap:8px;margin:0;padding:10px 14px;display:flex}#log .editbox textarea{all:unset;box-sizing:border-box;white-space:pre-wrap;width:100%;font:inherit}#log .editbox .row{justify-content:flex-end;gap:6px;display:flex}#log .awaycard{border:1px solid var(--line);background:var(--card);border-radius:18px 18px 18px 6px;align-self:flex-start;width:fit-content;max-width:88%;padding:12px 16px}#log .awaycard p{margin:0}#log .awaycard .row{gap:6px;margin-top:10px;display:flex}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}#log .working .m.assistant{color:var(--muted);align-items:center;gap:10px;display:flex}.dots{gap:4px;display:inline-flex}.dots i{background:var(--muted);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite pulse}.dots i:nth-child(2){animation-delay:.15s}.dots i:nth-child(3){animation-delay:.3s}@keyframes pulse{0%,80%,to{opacity:.25;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.signin{text-align:center;flex-direction:column;flex:0 auto;gap:12px;width:100%;max-width:360px;margin:auto;padding:32px 24px;display:flex}.signin h1{margin:0;font-size:34px}.signin p{color:var(--muted);margin:0}.signin-note{color:var(--warn);background:var(--card);border:1px solid var(--line);border-radius:10px;padding:10px 12px;font-size:14.5px}.signin-btn{background:var(--btn);color:var(--btn-fg);border-radius:10px;padding:10px 14px;font-size:15px;font-weight:600;text-decoration:none;display:block}.signin-btn:hover{opacity:.88}
