@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700&display=swap";.react-grid-layout{transition:height .2s;position:relative}.react-grid-item{transition:left .2s,top .2s,width .2s,height .2s}.react-grid-item img{pointer-events:none;-webkit-user-select:none;user-select:none}.react-grid-item.cssTransforms{transition-property:transform,width,height}.react-grid-item.resizing{z-index:1;will-change:width, height;transition:none}.react-grid-item.react-draggable-dragging{z-index:3;will-change:transform;transition:none}.react-grid-item.dropping{visibility:hidden}.react-grid-item.react-grid-placeholder{opacity:.2;z-index:2;-webkit-user-select:none;user-select:none;-o-user-select:none;background:red;transition-duration:.1s}.react-grid-item.react-grid-placeholder.placeholder-resizing{transition:none}.react-grid-item>.react-resizable-handle{width:20px;height:20px;position:absolute}.react-grid-item>.react-resizable-handle:after{content:"";border-bottom:2px solid #0006;border-right:2px solid #0006;width:5px;height:5px;position:absolute;bottom:3px;right:3px}.react-resizable-hide>.react-resizable-handle{display:none}.react-grid-item>.react-resizable-handle.react-resizable-handle-sw{cursor:sw-resize;bottom:0;left:0;transform:rotate(90deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-se{cursor:se-resize;bottom:0;right:0}.react-grid-item>.react-resizable-handle.react-resizable-handle-nw{cursor:nw-resize;top:0;left:0;transform:rotate(180deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-ne{cursor:ne-resize;top:0;right:0;transform:rotate(270deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-w,.react-grid-item>.react-resizable-handle.react-resizable-handle-e{cursor:ew-resize;margin-top:-10px;top:50%}.react-grid-item>.react-resizable-handle.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-n,.react-grid-item>.react-resizable-handle.react-resizable-handle-s{cursor:ns-resize;margin-left:-10px;left:50%}.react-grid-item>.react-resizable-handle.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}.react-resizable{position:relative}.react-resizable-handle{box-sizing:border-box;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2IDYiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmYwMCIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI2cHgiIGhlaWdodD0iNnB4Ij48ZyBvcGFjaXR5PSIwLjMwMiI+PHBhdGggZD0iTSA2IDYgTCAwIDYgTCAwIDQuMiBMIDQgNC4yIEwgNC4yIDQuMiBMIDQuMiAwIEwgNiAwIEwgNiA2IEwgNiA2IFoiIGZpbGw9IiMwMDAwMDAiLz48L2c+PC9zdmc+);background-position:100% 100%;background-repeat:no-repeat;background-origin:content-box;width:20px;height:20px;padding:0 3px 3px 0;position:absolute}.react-resizable-handle-sw{cursor:sw-resize;bottom:0;left:0;transform:rotate(90deg)}.react-resizable-handle-se{cursor:se-resize;bottom:0;right:0}.react-resizable-handle-nw{cursor:nw-resize;top:0;left:0;transform:rotate(180deg)}.react-resizable-handle-ne{cursor:ne-resize;top:0;right:0;transform:rotate(270deg)}.react-resizable-handle-w,.react-resizable-handle-e{cursor:ew-resize;margin-top:-10px;top:50%}.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-resizable-handle-n,.react-resizable-handle-s{cursor:ns-resize;margin-left:-10px;left:50%}.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}:root{color:#f4f4f6;--panel:#13151a;--line:#292c33;font-synthesis:none;background:#0b0c0f;font-family:DM Sans,sans-serif}*{box-sizing:border-box}body{background:#0b0c0f;min-width:320px;min-height:100vh;margin:0}button{font:inherit;color:inherit;cursor:pointer;border:0}main{max-width:1800px;margin:auto;padding:0 38px}nav{border-bottom:1px solid #22242b;align-items:center;gap:28px;height:88px;display:flex}.brand{align-items:center;gap:12px;margin-right:auto;display:flex}.brand>span{background:#6f55e8;border-radius:10px;place-items:center;width:42px;height:42px;display:grid}.brand div{display:grid}.brand b{font:700 17px Manrope}.brand small,.hero small,.picker small{letter-spacing:2px;color:#777c88;font-size:9px;font-weight:700}.status{color:#aeb1ba;font-size:13px}.status i{background:#5ce09c;border-radius:50%;width:7px;height:7px;margin-right:8px;display:inline-block}.nav-actions{gap:9px;display:flex}.secondary,.primary,.reset{border-radius:8px;align-items:center;gap:8px;height:40px;padding:0 14px;font-size:13px;font-weight:600;display:flex}.secondary{background:#15171c;border:1px solid #292c34}.secondary:hover{background:#1b1e24}.primary{background:#6f55e8}.hero{justify-content:space-between;align-items:flex-end;padding:62px 5px 31px;display:flex}.hero h1{letter-spacing:-1.5px;margin:8px 0 5px;font:600 clamp(29px,3vw,45px) Manrope}.hero p{color:#858a95;margin:0}.reset{color:#9297a2;background:0 0}.reset svg{width:16px}.edit-hint{color:#bdb3f6;background:#171523;border:1px solid #393250;border-radius:8px;align-items:center;gap:9px;margin:0 4px 20px;padding:12px 15px;font-size:13px;display:flex}.edit-hint svg{width:16px}.grid-wrap{min-height:300px}.widget{background:var(--panel);border:1px solid var(--line);border-radius:13px;flex-direction:column;height:100%;display:flex;overflow:hidden;container-type:size}.widget:hover{border-color:#3b3f48}.widget-header{color:#aaadb7;letter-spacing:.3px;flex:none;justify-content:space-between;align-items:center;height:52px;padding:0 17px;font-size:12px;font-weight:700;display:flex}.widget-header>div{align-items:center;gap:9px;display:flex}.icon{color:#a793ff;background:#252333;border-radius:7px;place-items:center;width:30px;height:30px;display:grid}.tint-blue .icon{color:#72c7f3;background:#182833}.tint-green .icon{color:#66d9a2;background:#172c25}.tint-orange .icon{color:#f7ad64;background:#30251a}.tint-pink .icon{color:#ef82bd;background:#30202b}.tint-yellow .icon{color:#e9cd68;background:#322d19}.widget-actions button{color:#6e737e;background:0 0;padding:5px}.drag-handle{color:#686d77}.widget-body{flex:1;min-height:0;padding:5px 20px 19px}.clock-widget{flex-direction:column;justify-content:center;height:100%;display:flex}.clock-time{letter-spacing:-4px;font:600 clamp(38px,11cqw,76px)/1 Manrope}.clock-time span{color:#686d77;letter-spacing:-1px;margin-left:8px;font-size:.34em}.clock-date{color:#b7bac2;text-transform:capitalize;align-items:center;gap:7px;margin-top:14px;display:flex}.widget-detail{color:#747985;font-size:12px}.clock-widget>.widget-detail{margin-top:7px}.weather-widget{flex-direction:column;justify-content:center;gap:10px;height:100%;display:flex}.weather-main{align-items:center;gap:12px;display:flex}.weather-main svg{color:#79cafa;width:36px;height:36px}.weather-main strong{font:600 clamp(36px,13cqw,58px)/1 Manrope}.weather-widget>div:nth-child(2){gap:4px;display:grid}.weather-hours{border-top:1px solid var(--line);justify-content:space-between;padding-top:11px;display:flex}.weather-hours span{text-align:center}.weather-hours b{color:#c8cad0}.system-widget{flex-direction:column;justify-content:center;gap:14px;height:100%;display:flex}.metric{grid-template-columns:auto 1fr;gap:5px 10px;font-size:12px;display:grid}.metric b{text-align:right}.metric i{background:#292d34;border-radius:5px;grid-column:1/-1;height:5px;overflow:hidden}.metric i:before{content:"";width:var(--value);background:#745bea;border-radius:5px;height:100%;display:block}.system-foot{align-items:center;gap:7px;display:flex}.focus-widget{align-items:center;gap:20px;height:100%;display:flex}.big-number{color:#f0a45d;font:600 clamp(50px,15cqw,80px)/1 Manrope}.focus-widget p{color:#a3a7b1;margin:8px 0 0;font-size:13px}.focus-widget p:before{content:"✓";color:#69d5a0;margin-right:8px}.activity-widget{grid-template-columns:2fr 1fr;align-items:center;gap:20px;height:100%;display:grid}.bars{align-items:end;gap:5px;height:80%;display:flex}.bars i{background:#b95388;border-radius:3px 3px 0 0;flex:1}.activity-widget>div:last-child{gap:6px;display:grid}.note{resize:none;color:#d7d9de;background:0 0;border:0;outline:0;width:100%;height:100%;padding:0;font:14px/1.6 DM Sans}.backdrop{z-index:20;background:#000b;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.picker{background:#121419;border:1px solid #2b2e37;border-radius:15px;width:min(620px,100%);padding:25px}.picker-head{justify-content:space-between;align-items:start;margin-bottom:22px;display:flex}.picker h2{margin:5px 0;font:600 25px Manrope}.picker-head button{color:#8c909a;background:0 0}.picker-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.picker-item{text-align:left;background:#181a20;border:1px solid #292c34;border-radius:9px;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;padding:13px;display:grid}.picker-item:hover:not(:disabled){background:#20232a;border-color:#3a3e49}.picker-item:disabled{opacity:.45;cursor:default}.picker-item>span:nth-child(2){gap:4px;display:grid}.picker-item small{letter-spacing:0;font-size:11px;font-weight:500}.picker-item>svg{color:#8e929c;width:17px}footer{text-align:center;color:#4f535d;letter-spacing:1.8px;padding:55px 0 35px;font-size:9px}footer span{margin:0 7px}.custom-resize{cursor:nwse-resize;background:0 0;width:24px;height:24px;position:absolute;bottom:0;right:0}.custom-resize:after{content:"";border-bottom:2px solid #8974f5;border-right:2px solid #8974f5;width:7px;height:7px;position:absolute;bottom:6px;right:6px}.widget-header:has(.drag-handle){cursor:grab;touch-action:none}.widget-header:has(.drag-handle):active{cursor:grabbing}.custom-resize{touch-action:none}@container (width<=280px){.widget-detail{display:none}.clock-date{font-size:12px}.weather-hours{display:none}.activity-widget{grid-template-columns:1fr}.activity-widget>div:last-child{display:none}}@container (height<=180px){.widget-detail,.weather-hours{display:none}.widget-body{padding-bottom:14px}.widget-header{height:44px}.clock-date{margin-top:8px}.system-widget{gap:8px}.focus-widget p{display:none}}@media (width<=700px){main{padding:0 14px}nav{height:70px}.brand small,.status,.nav-actions button span{display:none}.nav-actions{gap:6px}.secondary,.primary{justify-content:center;width:40px;padding:0}.hero{padding:38px 4px 25px}.hero p{font-size:14px}.hero h1{font-size:29px}.reset{justify-content:center;width:40px;padding:0;font-size:0}.picker{padding:20px}.picker-grid{grid-template-columns:1fr}.react-grid-item>.react-resizable-handle{display:none}}@media (width>=1900px){main{max-width:2400px;padding:0 72px}.widget-header{height:58px}.widget-body{padding-left:24px;padding-right:24px}}.status.degraded{color:#f1b46e}.status.degraded i{background:#f09b55}.study-widget{grid-template-columns:1fr 1fr;align-content:start;gap:10px;height:100%;display:grid}.study-platform{border:1px solid var(--line);background:#17191f;border-radius:9px;padding:13px 14px}.study-name{color:#afb2bb;align-items:center;gap:7px;font-size:12px;font-weight:700;display:flex}.study-name i{background:#e34aa5;border-radius:50%;width:7px;height:7px}.migaku .study-name i{background:#ff705e}.study-name small{color:#656a75;margin-left:auto;font-weight:600}.study-counts{gap:18px;margin-top:13px;display:flex}.study-counts span{color:#727783;text-transform:uppercase;letter-spacing:.5px;font-size:10px;display:grid}.study-counts b{color:#f0f1f4;letter-spacing:-1px;font:700 clamp(22px,7cqw,34px)/1.1 Manrope}.study-empty{color:#707581;margin-top:14px;font-size:12px}.upcoming{grid-column:1/-1;align-items:center;gap:9px;padding:2px 4px;display:flex;overflow:hidden}.upcoming>b{color:#9da1ab;margin-right:auto}.upcoming span{white-space:nowrap;gap:5px;display:flex}.upcoming strong{color:#d68ab8}.widget-actions button:hover{color:#d2d4da}.settings-dialog{width:min(470px,100%)}.settings-dialog label{color:#b7bac3;gap:8px;margin:18px 0;font-size:13px;font-weight:600;display:grid}.settings-dialog label small{letter-spacing:0;color:#747985;font-weight:400}.settings-dialog input:not([type=checkbox]),.settings-dialog select{color:#f0f1f4;width:100%;height:44px;font:inherit;background:#191b21;border:1px solid #323641;border-radius:8px;outline:none;padding:0 12px}.settings-dialog input:focus,.settings-dialog select:focus{border-color:#7963e8}.settings-dialog .check{justify-content:start;align-items:center;display:flex}.settings-dialog .check input{accent-color:#735ce7}.dialog-actions{justify-content:flex-end;gap:9px;margin-top:25px;display:flex}.dialog-actions button:disabled{opacity:.6}.integrations-dialog{width:min(620px,100%);max-height:90vh;overflow:auto}.integrations-dialog h3{color:#ececf0;border-bottom:1px solid var(--line);margin:23px 0 -5px;padding-bottom:10px;font:600 14px Manrope}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.connection-state{color:#8e82d4;margin:-8px 0 4px;font-size:12px}.concert-widget{align-items:center;gap:18px;height:100%;display:flex}.concert-widget>svg{color:#8b76ed}.concert-widget>div:last-child{gap:7px;display:grid}.concert-widget .widget-detail{align-items:center;gap:5px;max-width:280px;line-height:1.4;display:flex}.spotify-connect{justify-content:space-between;align-items:center;gap:12px;display:flex}.spotify-connect .connection-state{margin:0}.spotify-connect button{white-space:nowrap}.calendar-widget{flex-direction:column;gap:7px;height:100%;display:flex;overflow:auto}.calendar-event{background:#171a20;border:1px solid #292d35;border-radius:8px;grid-template-columns:54px 52px minmax(0,1fr);align-items:center;gap:8px;padding:8px 10px;display:grid}.calendar-date{color:#79cafa;font-size:11px;font-weight:700}.calendar-time{color:#858b97;font-size:11px}.calendar-event>div{gap:3px;min-width:0;display:grid}.calendar-event b{white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.calendar-event small{color:#747985;white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:4px;font-size:10px;display:flex;overflow:hidden}.calendar-empty{justify-content:center;align-items:center;gap:15px;height:100%;display:flex}.calendar-empty>svg{color:#72c7f3;flex:none}.calendar-empty>div{gap:6px;display:grid}.calendar-empty .widget-detail{max-width:290px;line-height:1.45}@media (width<=550px){.form-row{grid-template-columns:1fr}.form-row label{margin-bottom:0}}.auth-screen{background:#0b0c0f;place-items:center;min-height:100vh;padding:20px;display:grid}.auth-card{background:#13151a;border:1px solid #292c33;border-radius:14px;flex-direction:column;align-items:stretch;width:min(410px,100%);padding:34px;display:flex}.auth-logo{background:#6f55e8;border-radius:10px;place-items:center;width:46px;height:46px;margin-bottom:23px;display:grid}.auth-card>small{letter-spacing:2px;color:#777c88;font-size:9px;font-weight:700}.auth-card h1{margin:8px 0;font:600 27px Manrope}.auth-card p{color:#858a95;margin:0 0 20px;font-size:14px;line-height:1.5}.auth-card label{color:#b7bac3;gap:7px;margin:8px 0;font-size:12px;font-weight:600;display:grid}.auth-card input{color:#f0f1f4;height:44px;font:inherit;background:#191b21;border:1px solid #323641;border-radius:8px;outline:none;padding:0 12px}.auth-card input:focus{border-color:#7963e8}.auth-card button{justify-content:center;margin-top:16px}.auth-error{color:#f1a277;margin-top:9px;font-size:12px}.tasks-widget{flex-direction:column;height:100%;min-height:0;display:flex}.tasks-widget>form{gap:8px;margin-bottom:11px;display:flex}.tasks-widget>form input{color:#e5e6e9;background:#191b20;border:1px solid #30333b;border-radius:7px;outline:none;flex:1;min-width:0;height:36px;padding:0 11px;font:12px DM Sans}.tasks-widget>form input:focus{border-color:#6f55e8}.tasks-widget>form button{color:#b6a9f8;background:#292334;border-radius:7px;place-items:center;width:36px;display:grid}.task-list{flex-direction:column;gap:7px;min-height:0;display:flex;overflow:auto}.task-row{background:#17191e;border:1px solid #292c33;border-radius:8px;grid-template-columns:auto 1fr auto;align-items:start;gap:9px;padding:9px;display:grid}.task-row>div{gap:3px;min-width:0;display:grid}.task-row b{white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;overflow:hidden}.task-row small{color:#767b86;font-size:10px}.task-row.status-in_progress small{color:#a998fa}.task-row.status-question small{color:#efad69}.task-check,.task-delete{color:#656a75;background:0 0;padding:2px}.task-check{border:1px solid #474b55;border-radius:5px;place-items:center;width:19px;height:19px;display:grid}.task-check svg{opacity:0}.task-check:hover svg{opacity:1}.task-delete:hover{color:#d77c7c}.task-foot{margin-top:auto;padding-top:9px}.task-empty{color:#676c77;text-align:center;padding:24px 5px;font-size:12px}.edit-hint>span{margin-right:auto}.edit-hint>button{color:#c8bff7;background:#29233b;border:1px solid #493d69;border-radius:6px;align-items:center;gap:7px;padding:7px 10px;font-size:12px;display:flex}.trmnl-dialog{width:min(620px,100%)}.dialog-copy{color:#858a95;font-size:13px}.trmnl-slots{grid-template-columns:1fr 1fr;gap:0 12px;display:grid}.trmnl-dialog h3{border-bottom:1px solid var(--line);margin:20px 0 0;padding-bottom:9px;font:600 14px Manrope}.copy-field{display:flex}.copy-field input{font-family:monospace;font-size:11px;border-radius:8px 0 0 8px!important}.copy-field button{color:#aeb2bc;background:#292d36;border:1px solid #323641;border-left:0;border-radius:0 8px 8px 0;width:44px}.text-button{color:#8e82d4;background:0 0;padding:3px 0;font-size:12px}.trmnl-dialog>.text-button{text-align:left}.template-actions{gap:8px;margin:2px 0 12px;display:flex}.template-actions button{height:35px}@media (width<=550px){.trmnl-slots{grid-template-columns:1fr}.edit-hint>span{display:none}.edit-hint{justify-content:space-between}}@container (height<=210px){.tasks-widget>form{margin-bottom:7px}.task-row{padding:6px}.task-row small,.task-foot{display:none}}@container (width<=330px){.calendar-event{grid-template-columns:50px minmax(0,1fr)}.calendar-time{display:none}}@container (height<=210px){.calendar-event{padding:5px 8px}.calendar-event:nth-child(n+3){display:none}}@container (width<=360px){.study-widget{grid-template-columns:1fr}.study-platform.migaku{display:none}.upcoming{grid-column:1}.upcoming span:nth-of-type(n+3){display:none}}
