.profile-panel-root{padding:0 8px 32px;font-family:inherit;color:inherit;background:none;height:100%;box-sizing:border-box}.profile-section{margin-bottom:32px}.profile-section h2{font-size:1.2rem;font-weight:600;margin-bottom:12px;color:#3a4f7a;letter-spacing:.02em}.profile-identity>div{margin-bottom:6px}.profile-progress{margin-bottom:8px}.xp-bar-row{display:flex;justify-content:space-between;font-size:.98rem;margin-bottom:4px}.xp-bar-outer{display:block;position:relative;width:100%;min-width:0;height:10px;background:#e0e4ea;border-radius:5px;overflow:hidden}.xp-bar-inner{display:block;position:relative;height:100%;min-width:0;max-width:100%;background:#5b8def;border-radius:5px 0 0 5px;transition:width .3s}.profile-stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}.profile-stat-row{display:flex;justify-content:space-between;font-size:1rem;padding:4px 0}.stat-label{color:#b7e0c0;font-weight:500}.stat-value{color:#fff;font-weight:600}.profile-daily-placeholder{color:#888;font-size:.98rem;margin-bottom:8px}.profile-daily-stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px}.profile-daily-stat-row{display:flex;justify-content:space-between;font-size:.98rem;color:#bbb}html,body{width:100vw;max-width:100vw;overflow-x:hidden;box-sizing:border-box}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh;width:100vw;background:var(--background-color, #242424)}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.month-day-muted{filter:grayscale(.5) brightness(1.1) opacity(.7)}.month-day-past{background:#414246!important}.month-separator-pill-vertical-inside{position:absolute;top:0;left:0;width:24px;height:100%;background:#3a4f7a;color:#fff;border-radius:10px 0 0 10px;padding:0 2px;font-size:13px;font-weight:700;box-shadow:0 1px 4px #0003;z-index:5;display:flex;align-items:center;justify-content:center;writing-mode:vertical-rl;text-orientation:mixed;pointer-events:none}.month-separator-pill-vertical{display:flex;align-items:center;justify-content:center;writing-mode:vertical-rl;text-orientation:mixed;background:#3a4f7a;color:#fff;border-radius:8px;padding:6px 4px;font-size:13px;font-weight:700;box-shadow:0 1px 4px #0003;margin:0 2px;min-height:32px;min-width:18px;z-index:3}.month-range-footer{position:fixed;left:0;right:0;bottom:0;z-index:20;width:100vw;background:#23242aee;color:#b3b3b3;font-weight:600;font-size:15px;letter-spacing:1px;text-align:center;padding:12px 0 14px;border-top:1px solid #222;box-shadow:0 -2px 8px #0002;pointer-events:none}.month-view{flex-direction:column;gap:.25rem;padding:0 .25rem;overflow-y:auto;margin-bottom:64px;max-height:calc(100% - 50px)}.month-weekday-header{position:sticky;top:0;z-index:2;background:#23242a;display:flex;flex-direction:row;gap:.25rem;border-bottom:1px solid #222}.month-weekday-label{flex:1 1 0;min-width:2.2rem;text-align:center;font-weight:700;color:#b3b3b3;font-size:1.08rem;letter-spacing:2px;padding-bottom:2px}.month-week-row{display:flex;flex-direction:row;gap:.25rem;position:relative;min-height:175px;transition:background .12s}.month-week-row.hovered{outline:3px solid #3a4f7a;outline-offset:-2px;z-index:2}.month-day-cell{flex:1 1 0;min-width:2.2rem;min-height:64px;background:#23242a;border-radius:.5rem;text-align:center;padding:.25rem .1rem .1rem;cursor:pointer;border:2px solid transparent;transition:border .1s,box-shadow .12s;position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start}.month-day-cell.selected{border:2px solid #3a4f7a;box-shadow:0 0 0 2px #3a4f7a33}.month-day-num{font-size:1.1rem;font-weight:600;margin-left:2px}.month-day-indicator{font-size:14px;margin-top:2px;display:flex;gap:2px;margin-right:2px}.month-separator-pill{position:absolute;left:-18px;top:50%;transform:translateY(-50%);z-index:3;background:#3a4f7a;color:#fff;border-radius:12px;padding:2px 10px;font-size:13px;font-weight:700;box-shadow:0 1px 4px #0003;pointer-events:none}.month-event-bar{height:4px;width:80%;margin:1px auto;border-radius:3px;background:#3a4f7a}.month-event-bar.dense{height:7px}.timenav-modes{display:flex;gap:8px}.timenav-mode-btn{background:none;border:none;width:44px;height:44px;min-width:44px;min-height:44px;border-radius:8px;display:flex;align-items:center;justify-content:center;outline:none;cursor:pointer;transition:box-shadow .12s;padding:0}.timenav-mode-btn.active{box-shadow:0 0 0 2px #3a4f7a;background:#eaf1ff}.timenav-mode-btn:active{background:#dbe7ff}.quickmenu-open-btn{background:none;border:none;width:44px;height:44px;min-width:44px;min-height:44px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:26px;cursor:pointer;transition:background .12s}.quickmenu-open-btn:active{background:#f5f5f5}.timenav-date-past{color:#b3b9c9;opacity:.5}.timenav-date-future{color:#b3b9c9;opacity:.6;font-weight:700}.timenav-indicators-muted{filter:grayscale(1) brightness(.85);opacity:.7}.timenav-indicators-future{opacity:.5;filter:brightness(1.2) saturate(.7)}.routine-task-summary{font-size:.95em;color:#aaa;margin-left:.7em}.routine-task-count{font-size:.95em;color:#aaa;margin-left:.3em}.routine-edit-tasks-panel{background:#23242a;border-radius:.7em;margin:.7em 0 .7em .5em;padding:1em;box-shadow:0 2px 8px #0002;max-width:420px}.routine-task-list{display:flex;flex-direction:column;gap:.3em;margin-bottom:.7em}.routine-task-item{display:flex;align-items:center;gap:.5em;background:#292a2f;border-radius:.5em;padding:.3em .7em}.routine-task-item button{font-size:1em;padding:.1em .6em;border-radius:1em;border:none;background:#333;color:#fff;opacity:.7}.routine-task-item button:disabled{opacity:.3}.schedule-tab{padding:.5em .2em}.schedule-list{margin-bottom:1.5em}.schedule-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5em;margin-bottom:.7em;background:#23242a;border-radius:.7em;padding:.7em .5em}.schedule-row input[type=time]{width:90px;font-size:1em}.schedule-row select{font-size:1em}.schedule-row button{border:none;background:#333;color:#fff;border-radius:1em;padding:.2em .7em;font-size:1em;margin-right:.1em;opacity:.7}.schedule-row button.active{background:#4a7c59;opacity:1}.schedule-row button:last-child{margin-right:0}.tasks-group-toggle{display:flex;gap:.5rem;margin-bottom:1rem}.tasks-group-toggle button{padding:.3rem 1rem;border-radius:1rem;border:none;background:#333;color:#fff;font-weight:500;opacity:.7}.tasks-group-toggle button.active{background:#4a7c59;opacity:1}.tasks-group-section{margin-bottom:1.5rem}.tasks-group-label{font-weight:600;font-size:1.1rem;margin-bottom:.5rem;color:#4a7c59}.badge{display:inline-block;padding:.1rem .6rem;border-radius:1rem;font-size:.8em;margin-left:.4em;background:#333;color:#fff}.stat-badge{background:#4a7c59}.domain-badge{background:#7a4f3a}.task-row-main{display:flex;align-items:center;gap:.7em;cursor:pointer;padding:.5em 0}.task-edit-panel{background:#23242a;border-radius:.7em;margin:.5em 0 .5em .5em;padding:1em;box-shadow:0 2px 8px #0002}.edit-row{display:flex;align-items:center;gap:.7em;margin-bottom:.7em}.edit-row label{min-width:90px;font-size:.95em;color:#aaa}.edit-xp-list{display:flex;gap:.5em}.edit-xp-item{display:flex;align-items:center;gap:.2em}.edit-list{display:flex;flex-wrap:wrap;gap:.4em}.edit-list-item{display:flex;align-items:center;gap:.2em}.edit-actions button{margin-right:.7em}.workspaces-backdrop,.quickmenu-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000000b3;z-index:1000;display:flex;align-items:flex-end;justify-content:center}.workspaces-panel,.quickmenu-panel{background:#23242a;border-radius:1rem 1rem 0 0;width:100vw;height:85vh!important;min-height:0;max-height:85vh;box-shadow:0 -2px 16px #0008;padding:1.5rem 1rem 2rem;position:relative;animation:overlayUp .2s cubic-bezier(.4,1.4,.6,1) 1;display:flex;flex-direction:column}.workspaces-content,.quickmenu-content{flex:1 1 0;overflow-y:auto;min-height:0;height:100%}.app-shell,.header-row-flex,.xpbar-row,.timenav-row,main,.timemode-footer{box-sizing:border-box}.app-shell{width:100%;min-width:0;display:flex;flex-direction:column;height:100vh;overflow:hidden}.xpbar-row.stretch-xpbar{width:100%;flex:1 1 0;display:flex;flex-direction:row;align-items:center;min-width:0;margin:0 .5rem}.timenav-row{width:100%;display:flex;justify-content:space-between;align-items:center;padding:0 1rem}main{flex:1 1 auto;width:100%;min-height:0;overflow-y:auto}.timemode-footer{width:100%;position:fixed;left:0;right:0;bottom:0;z-index:15;background:#181a20cc;border-top:1px solid #23242a;display:flex;justify-content:space-around;align-items:center;padding:.5rem 0;box-shadow:0 -1px 4px #0002}.timemode-footer{position:fixed;left:0;right:0;bottom:0;z-index:15;background:#181a20cc;border-top:1px solid #23242a;display:flex;justify-content:space-around;align-items:center;padding:.5rem 0;box-shadow:0 -1px 4px #0002;width:100%}.timemode-footer button{background:none;color:#f3f3f3;border:none;padding:.7rem 1.2rem;font-size:1.08rem;font-weight:600;border-radius:2rem;margin:0 .1rem;cursor:pointer;opacity:.8;transition:background .15s,color .15s}.timemode-footer button.active{background:#3a4f7a;color:#fff;opacity:1}.workspaces-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000000b3;z-index:1000;display:flex;align-items:flex-end;justify-content:center}.xpcol-flex{flex:1 1 0;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;gap:2px}.refined-xp-bar{width:100%;min-width:60px;max-width:none;height:10px;background:#22232a;border-radius:5px;overflow:hidden;box-shadow:0 1px 2px #0001;margin-bottom:0;margin-right:0}.refined-xp-label{font-size:.93rem;color:#a0a6b3;font-weight:500;letter-spacing:.01em;min-width:54px;text-align:center;flex-shrink:0;margin-top:2px}.refined-level{font-size:1.01rem;color:#7a8ca3;font-weight:600;margin-left:0;min-width:44px;text-align:center;letter-spacing:.02em;margin-top:2px}.refined-xp-bar{flex:1 1 0;min-width:0;height:10px;background:#22232a;border-radius:5px;overflow:hidden;box-shadow:0 1px 2px #0001;margin-bottom:0;margin-right:.2rem}.refined-xp-label{font-size:.93rem;color:#a0a6b3;font-weight:500;letter-spacing:.01em;min-width:54px;text-align:right;flex-shrink:0}.refined-level{font-size:1.01rem;color:#7a8ca3;font-weight:600;margin-left:.5rem;min-width:44px;text-align:right;letter-spacing:.02em}.workspaces-close{position:absolute;top:12px;right:16px;font-size:2rem;background:none;border:none;cursor:pointer}.workspaces-tabs{display:flex;gap:12px;margin-bottom:18px}.workspaces-tabs button{background:#f2f2f2;border:none;padding:8px 18px;border-radius:8px;font-weight:500;cursor:pointer}.workspaces-tabs .active{background:#3a4f7a;color:#fff}.workspaces-content{min-height:320px}.resources-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.resources-list{display:flex;flex-direction:column;gap:10px}.contact-row{display:flex;gap:8px;align-items:center}.contact-row input{padding:4px 8px;border-radius:4px;border:1px solid #ccc;min-width:80px}.contact-delete{background:#e74c3c;color:#fff;border:none;border-radius:4px;padding:4px 10px;cursor:pointer}.tasks-header,.goals-header{font-weight:600;margin-bottom:10px}.tasks-list,.goals-list{display:flex;flex-direction:column;gap:10px}.task-row{background:#f8f8f8;border-radius:6px;padding:8px 12px}.task-title{font-weight:500}.task-type,.task-xp{font-size:.95em;color:#555}.goals-list pre{background:#f4f4f4;border-radius:6px;padding:8px;font-size:.95em;max-height:120px;overflow-y:auto}.event-overlay-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000000b3;z-index:1000;display:flex;align-items:flex-start;justify-content:center}.event-overlay-panel{background:#23242a;border-radius:0 0 1rem 1rem;width:100vw;height:100vh;box-shadow:0 2px 16px #0008;padding:1.5rem 1rem 2rem;position:relative;animation:overlayDown .2s cubic-bezier(.4,1.4,.6,1) 1;display:flex;flex-direction:column;margin-top:0}@keyframes overlayDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes overlayUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.event-overlay-close{background:none;color:#fff;border:none;font-size:2rem;cursor:pointer;position:static;margin-left:0}.event-overlay-header{margin-bottom:1.5rem}.event-overlay-title{font-size:1.3rem;font-weight:700}.event-overlay-time{color:#b3b3b3;font-size:1rem;margin-top:.2rem}.task-list{margin-bottom:1.5rem;flex:1 1 0;overflow-y:auto;min-height:0;overflow-x:hidden}.task-item{background:#181a20;border-radius:.5rem;padding:1rem;margin-bottom:1rem;margin-right:.5rem;box-sizing:border-box}.task-item-title{font-weight:600;margin-bottom:.5rem}.counter-input{display:flex;align-items:center;gap:.5rem}.counter-input button{background:#3a4f7a;color:#fff;border:none;border-radius:1rem;width:2rem;height:2rem;font-size:1.2rem;cursor:pointer}.emoji-choices button{font-size:1.5rem;background:none;border:none;margin:0 .2rem;cursor:pointer;opacity:.7}.emoji-choices button.selected{opacity:1;border-bottom:2px solid #3a4f7a}.form-fields input{display:block;width:100%;margin-bottom:.5rem;padding:.5rem;border-radius:.3rem;border:1px solid #333;background:#23242a;color:#fff}.attachment-list{margin-top:1.5rem}.attachment-list-title{font-weight:600;margin-bottom:.5rem}.attachment-item{background:#181a20;border-radius:.3rem;padding:.5rem 1rem;margin-bottom:.3rem}.attachment-add{margin-top:.5rem;background:#3a4f7a;color:#fff;border:none;border-radius:1rem;padding:.5rem 1.2rem;cursor:not-allowed;opacity:.5}.attachment-empty{color:#888;font-size:.95rem;margin-bottom:.5rem}body{background:#181a20;color:#f3f3f3;font-family:system-ui,sans-serif;margin:0;padding:0}.app-shell{min-height:100vh;display:flex;flex-direction:column}.timenav{position:sticky;top:0;background:#23242a;z-index:10;padding:.5rem 0;border-bottom:1px solid #222}.timenav-row{display:flex;justify-content:space-between;align-items:center;width:100%;padding:0 0rem}.timenav-modes button{background:none;color:#f3f3f3;border:none;padding:.5rem 1rem;font-size:1rem;border-radius:2rem;margin-right:.25rem;cursor:pointer;opacity:.7}.timenav-modes button.active{background:#3a4f7a;color:#fff;opacity:1}.timenav-date{display:flex;align-items:center;gap:.5rem}.timenav-date button{background:none;color:#f3f3f3;border:none;font-size:1.2rem;cursor:pointer}main{flex:1 1 auto;width:100%;min-height:0;padding:0;overflow:hidden}.day-view{padding:1rem .5rem;height:100%;min-height:0;overflow-y:auto;box-sizing:border-box}.day-timeline{display:flex;flex-direction:column;gap:.5rem}.event-chip{background:#23242a;border-radius:.5rem;padding:.75rem 1rem;margin:.25rem 0;display:flex;flex-direction:column;border-left:4px solid #3a4f7a;box-shadow:0 1px 2px #0002}.event-chip-muted{filter:grayscale(1) brightness(.85);opacity:.7}.event-chip-future{opacity:.5;filter:brightness(1.2) saturate(.7)}.event-chip-time{font-size:.95rem;color:#b3b3b3}.event-chip-title{font-weight:600;font-size:1.1rem;margin:.2rem 0}.event-chip-kind{font-size:.85rem;color:#7a8ca3}.empty{color:#888;text-align:center;margin:2rem 0}.week-view{display:flex;flex-direction:row;gap:.5rem;padding:1rem .5rem;height:100%;max-height:calc(100vh - 120px);overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;box-sizing:border-box}.week-day-tile{min-width:240px;max-width:280px;flex:1 1 0;height:calc(100% - 2px);margin:0;display:flex;flex-direction:column;background:#23242a;border-radius:8px;padding:1rem .5rem;text-align:center;cursor:pointer;border:2px solid transparent;transition:border .1s,box-shadow .12s;position:relative;box-sizing:border-box}.week-day-tile.hovered{box-shadow:0 0 0 2px #6a8cff99;background:#23242aee}.week-current .week-day-tile{border-color:#3a4f7a;opacity:1}.week-past .week-day-tile{opacity:.6}.week-future .week-day-tile{opacity:.7}.week-day-header{margin-bottom:2px}.week-day-body{flex:1 1 0;display:flex;flex-direction:column;gap:.25rem;margin-top:4px;position:relative}.week-event-card{position:relative;background:#181a20;border-radius:6px;padding:4px 8px;margin:2px 0;font-size:.98rem;font-weight:500;color:#f3f3f3;box-shadow:0 1px 2px #0002;border-left:3px solid #3a4f7a;pointer-events:none}.week-day-label{font-size:.95rem;color:#b3b3b3}.week-day-date{font-size:1.1rem;font-weight:600}.week-day-count{font-size:.85rem;color:#7a8ca3;margin-top:.2rem}.month-day-cell.selected{border:2px solid #3a4f7a}.month-day-num{font-size:1.1rem;font-weight:600}.month-day-dot{font-size:1.2rem;color:#3a4f7a;position:absolute;left:50%;transform:translate(-50%);bottom:.1rem}.header-row-flex{width:100%;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem}.xpbar-row.stretch-xpbar{flex:1 1 0;display:flex;flex-direction:row;align-items:center;min-width:0;margin:0 .5rem}.refined-xp-bar{flex:1 1 0;min-width:60px;max-width:none;height:12px;background:#22232a;border-radius:5px;overflow:hidden;box-shadow:0 1px 2px #0001;margin-bottom:0;margin-right:0;position:relative;display:flex;align-items:center;justify-content:center}.xp-bar-inner{height:100%;background:linear-gradient(90deg,#3a4f7a 70%,#6a8cff);border-radius:5px;transition:width .18s cubic-bezier(.4,1,.6,1);position:absolute;left:0;top:0;bottom:0}.xp-bar-numbers{position:relative;z-index:1;font-size:.78rem;color:#b3b9c9;font-weight:500;width:100%;text-align:left;padding-left:8px;letter-spacing:.01em;-webkit-user-select:none;user-select:none;pointer-events:none}.indicator-icon-cluster{display:flex;align-items:center;gap:2px;background:none;border:none;cursor:pointer;font-size:18px;padding:0 2px;min-width:32px;min-height:28px}.indicator-icon-cluster span{display:inline-block;max-width:1.5em;overflow:hidden;text-overflow:ellipsis}@media(max-width:600px){.indicator-icon-cluster{font-size:16px;min-width:24px;min-height:24px}}
