[x-cloak]{display:none!important}*{box-sizing:border-box}body{background:var(--color-base-100);color:var(--color-base-content);font-family:Poppins,sans-serif}html.capacitor-native body{padding-top:var(--safe-area-top,0)}html.capacitor-native .dock{height:calc(4rem + var(--safe-area-bottom, 0px));padding-bottom:var(--safe-area-bottom,0)}.ims-wrapper{display:flex;min-height:100vh;min-height:100dvh;width:100%}.ims-sidebar{background:var(--color-base-200);border-right:1px solid var(--color-base-300);display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:visible;position:fixed;transition:transform .3s ease;width:260px;z-index:1000}.ims-nav::-webkit-scrollbar{width:6px}.ims-nav::-webkit-scrollbar-track{background:var(--color-base-200)}.ims-nav::-webkit-scrollbar-thumb{background:color-mix(in oklch,var(--color-base-content) 30%,transparent);border-radius:3px}.ims-logo{border-bottom:1px solid var(--color-base-300);display:flex;padding:24px 20px}.ims-logo a{display:block}.ims-logo img,.logo-halo{filter:drop-shadow(0 0 2px var(--color-base-100)) drop-shadow(0 0 6px color-mix(in oklch,var(--color-base-content) 45%,transparent)) drop-shadow(0 0 12px color-mix(in oklch,var(--color-base-content) 25%,transparent))}.ims-logo img{max-height:100px;width:auto}.ims-logo h2{color:var(--color-base-content);font-size:20px;font-weight:700;margin:0}.ims-logo p{color:color-mix(in oklch,var(--color-base-content) 40%,transparent);font-size:12px;margin:4px 0 0}.ims-nav{flex:1;min-height:0;overflow-y:auto;padding:16px 0}.ims-nav-item{align-items:center;border-left:3px solid transparent;color:color-mix(in oklch,var(--color-base-content) 60%,transparent);display:flex;font-size:14px;font-weight:500;padding:12px 20px;position:relative;text-decoration:none;transition:background-color .2s ease,border-left-color .2s ease}.ims-nav-item.active,.ims-nav-item:hover{background:var(--color-base-300);border-left-color:var(--color-primary);color:var(--color-base-content)}.ims-nav-item i{font-size:18px;margin-right:12px;width:20px}.ims-nav-item .badge{margin-left:auto}.ims-user-section{border-top:1px solid var(--color-base-300);flex-shrink:0;padding:16px 20px}.ims-user-profile{align-items:center;background:var(--color-base-300);border-radius:8px;color:var(--color-base-content);display:flex;font:inherit;gap:12px;padding:6px;text-decoration:none;transition:background .2s ease}.ims-user-profile:hover{background:color-mix(in oklch,var(--color-base-content) 30%,transparent);color:var(--color-base-content)}.ims-user-info{flex:1;min-width:0}.ims-user-name{color:var(--color-base-content);font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ims-quick-btn{align-items:center;background:transparent;border-radius:6px;color:color-mix(in oklch,var(--color-base-content) 55%,transparent);cursor:pointer;display:inline-flex;font-size:16px;height:32px;justify-content:center;position:relative;text-decoration:none;transition:background-color .15s ease,color .15s ease;width:32px}.ims-quick-btn:hover{background:var(--color-base-300);color:var(--color-base-content)}.ims-logout-quick{align-items:center;background:color-mix(in oklch,var(--color-error) 12%,transparent);border:0;border-radius:6px;color:var(--color-error);cursor:pointer;display:inline-flex;font-size:18px;justify-content:center;position:relative;text-decoration:none;transition:background-color .15s ease,color .15s ease;width:44px}.ims-logout-quick:hover{background:color-mix(in oklch,var(--color-error) 25%,transparent)}.ims-login-section{display:flex;flex-direction:column;gap:10px}.ims-login-btn{align-items:center;background:var(--color-base-300);border:1px solid var(--color-primary);border-radius:8px;color:var(--color-primary);cursor:pointer;display:flex;font-size:13px;font-weight:500;justify-content:flex-start;padding:12px 16px;text-decoration:none;transition:all .2s ease;width:100%}.ims-login-btn:hover{background:var(--color-primary);color:var(--color-primary-content);transform:translateY(-2px)}.ims-login-btn i{font-size:18px;margin-right:10px}.ims-main{display:flex;flex:1;flex-direction:column;margin-left:260px;min-height:100vh;min-height:100dvh;min-width:0;overflow-x:clip}.ims-header{background:var(--color-base-200);border-bottom:1px solid var(--color-base-300);padding:20px 32px;position:sticky;top:0;z-index:100}.ims-content{flex:1;padding:32px}@media (max-width:1024px){.ims-sidebar{transform:translateX(-100%)}.ims-main{margin-left:0;padding-bottom:70px}.ims-content{padding:20px 16px 80px}.ims-header{padding:16px 20px}}@media (max-width:640px){.ims-header>div{flex-wrap:wrap;gap:.5rem}.ims-header .btn{font-size:0;gap:.25rem;height:2rem;min-height:2rem;padding-inline:.625rem}.ims-header .btn>i{font-size:1rem;margin:0}.ims-header .btn>span{display:none}}@media (max-width:1024px){.ims-sidebar{z-index:1001}}.swal2-popup{background:var(--color-base-200)!important;border:1px solid var(--color-base-300)!important;border-radius:12px!important}.swal2-popup,.swal2-title{color:var(--color-base-content)!important}.swal2-html-container{color:color-mix(in oklch,var(--color-base-content) 60%,transparent)!important}.swal2-actions button.swal2-confirm{background:var(--color-primary)!important;color:var(--color-primary-content)!important}.swal2-actions button.swal2-cancel,.swal2-actions button.swal2-confirm{border:none!important;border-radius:8px!important;font-weight:600!important;padding:10px 24px!important}.swal2-actions button.swal2-cancel{background:color-mix(in oklch,var(--color-error) 30%,transparent)!important;color:var(--color-base-content)!important}.swal2-actions button.swal2-deny{background:color-mix(in oklch,var(--color-warning) 30%,transparent)!important;border:none!important;border-radius:8px!important;color:var(--color-base-content)!important}.swal-daisyui .swal2-html-container{color:var(--color-base-content)!important;overflow:visible!important}.swal-daisyui .swal2-actions{gap:.5rem;margin-bottom:1.5rem!important}.swal-daisyui .file-input,.swal-daisyui .input,.swal-daisyui .select,.swal-daisyui .textarea{background:var(--color-base-100)!important;border:1px solid var(--color-base-300)!important;border-radius:var(--radius-field,.5rem)!important;box-shadow:none!important;color:var(--color-base-content)!important;margin:0!important;max-width:100%!important;width:100%!important}.swal-daisyui .file-input:focus,.swal-daisyui .input:focus,.swal-daisyui .select:focus,.swal-daisyui .textarea:focus{border-color:var(--color-primary)!important;box-shadow:none!important;outline:2px solid color-mix(in oklch,var(--color-primary) 40%,transparent)!important;outline-offset:1px!important}.swal-daisyui .checkbox{box-shadow:none!important}.swal-daisyui .label{color:var(--color-base-content)!important}.swal-goal-form{display:flex;flex-direction:column;gap:4px;text-align:left}.swal-goal-form .label{padding-top:8px}.swal-goal-hint{align-items:center;background:color-mix(in oklch,var(--color-info) 10%,transparent);border:1px solid color-mix(in oklch,var(--color-info) 30%,transparent);border-radius:8px;color:var(--color-info);display:flex;font-size:13px;gap:6px;margin-top:8px;padding:8px 12px}.swal-goal-hint.hidden{display:none}.changelog-modal-content{text-align:left}.changelog-modal-content h3{border-bottom:1px solid var(--color-base-300);color:var(--color-secondary);font-size:.8125rem;font-weight:700;letter-spacing:.05em;margin-bottom:.375rem;margin-top:.75rem;padding-bottom:.25rem;text-transform:uppercase}.changelog-modal-content h3:first-child{margin-top:0}.changelog-modal-content ul{list-style:disc;margin:0 0 .5rem;padding-left:1.25rem}.changelog-modal-content li{color:var(--color-base-content);font-size:.875rem;line-height:1.6;margin-bottom:.25rem}.swal2-input,.swal2-select,.swal2-textarea{background:var(--color-base-300)!important;border:1px solid color-mix(in oklch,var(--color-base-content) 30%,transparent)!important;border-radius:8px!important;color:var(--color-base-content)!important}.swal2-input:focus,.swal2-select:focus,.swal2-textarea:focus{border-color:var(--color-primary)!important;box-shadow:0 0 0 2px color-mix(in oklch,var(--color-primary) 20%,transparent)!important}.swal2-icon.swal2-warning{border-color:var(--color-warning)!important;color:var(--color-warning)!important}.swal2-icon.swal2-error{border-color:var(--color-error)!important}.swal2-icon.swal2-error [class^=swal2-x-mark-line]{background-color:var(--color-error)!important}.swal2-icon.swal2-success{border-color:var(--color-success)!important}.swal2-icon.swal2-success [class^=swal2-success-line]{background-color:var(--color-success)!important}.swal2-icon.swal2-success .swal2-success-ring{border-color:color-mix(in oklch,var(--color-success) 30%,transparent)!important}.swal2-icon.swal2-info{border-color:var(--color-info)!important;color:var(--color-info)!important}.swal2-close{color:color-mix(in oklch,var(--color-base-content) 60%,transparent)!important}.swal2-close:hover{color:var(--color-base-content)!important}.swal2-footer{border-top-color:var(--color-base-300)!important;color:color-mix(in oklch,var(--color-base-content) 50%,transparent)!important}.swal2-container:not(:has(.swal2-toast)){background:rgba(0,0,0,.6)!important}.swal2-container{z-index:1200!important}.swal2-container:has(.swal2-toast){background:transparent!important;transition:none!important}.ims-footer{background:var(--color-base-200);border-top:1px solid var(--color-base-300);color:color-mix(in oklch,var(--color-base-content) 40%,transparent);font-size:13px;padding:16px 32px;text-align:center}.ims-footer a{color:var(--color-primary);font-weight:500;text-decoration:none}.ims-footer a:hover{color:var(--color-secondary);text-decoration:underline}.fab-container{align-items:center;bottom:30px;display:flex;flex-direction:column;gap:12px;position:fixed;right:30px;z-index:1001}body.renko-open .fab-container{display:none}.fab-main{align-items:center;background:linear-gradient(135deg,var(--color-secondary),var(--color-primary));border:none;border-radius:50%;box-shadow:0 4px 12px color-mix(in oklch,var(--color-secondary) 40%,transparent);color:#fff;cursor:pointer;display:flex;font-size:24px;height:56px;justify-content:center;order:1;transition:all .3s ease;width:56px}.fab-main:hover{box-shadow:0 6px 20px color-mix(in oklch,var(--color-secondary) 60%,transparent);transform:scale(1.1)}.fab-main.fab-active{background:var(--color-base-300);box-shadow:0 4px 12px rgba(0,0,0,.3)}.fab-actions{flex-direction:column;gap:10px;order:0}.fab-action,.fab-actions{align-items:center;display:flex}.fab-action{border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:20px;height:44px;justify-content:center;position:relative;text-decoration:none;transition:all .2s ease;width:44px}.fab-action:first-child{background:var(--color-info);box-shadow:0 3px 8px rgba(66,153,225,.4)}.fab-action:nth-child(2){background:var(--color-accent);box-shadow:0 3px 8px rgba(0,0,0,.3)}.fab-action:nth-child(3){background:var(--color-success);box-shadow:0 3px 8px rgba(0,0,0,.3)}.fab-action:hover{transform:scale(1.15)}.calendar-badge,.fab-action .calendar-badge{position:absolute;right:-4px;top:-4px}.calendar-badge{align-items:center;background:var(--color-error);border-radius:10px;color:#fff;display:flex;font-size:11px;font-weight:700;height:20px;justify-content:center;min-width:20px;padding:0 6px}.calendar-widget-panel{background:var(--color-base-200);border-radius:16px;bottom:70px;box-shadow:0 8px 32px rgba(0,0,0,.4);order:-1;overflow:hidden;position:absolute;right:0;width:320px}.calendar-widget-header{align-items:center;background:var(--color-base-100);border-bottom:1px solid var(--color-base-300);display:flex;justify-content:space-between;padding:16px 20px}.calendar-widget-header h3{color:var(--color-base-content);font-size:16px;font-weight:600;margin:0}.calendar-widget-actions{display:flex;gap:8px}.calendar-widget-close{align-items:center;background:var(--color-base-300);border:none;border-radius:8px;color:color-mix(in oklch,var(--color-base-content) 85%,transparent);cursor:pointer;display:flex;font-size:18px;height:32px;justify-content:center;text-decoration:none;transition:all .2s ease;width:32px}.calendar-widget-close:hover{background:color-mix(in oklch,var(--color-base-content) 30%,transparent);color:var(--color-base-content)}.calendar-mini-month{border-bottom:1px solid var(--color-base-300);padding:16px}.calendar-mini-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.calendar-mini-title{color:var(--color-base-content);font-size:14px;font-weight:600}.calendar-mini-nav{align-items:center;background:transparent;border:1px solid color-mix(in oklch,var(--color-base-content) 30%,transparent);border-radius:6px;color:color-mix(in oklch,var(--color-base-content) 60%,transparent);cursor:pointer;display:flex;font-size:18px;height:28px;justify-content:center;transition:all .2s ease;width:28px}.calendar-mini-nav:hover{background:var(--color-base-300);border-color:var(--color-primary);color:var(--color-base-content)}.calendar-mini-weekdays{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:8px;text-align:center}.calendar-mini-weekdays span{color:color-mix(in oklch,var(--color-base-content) 40%,transparent);font-size:11px;font-weight:600;padding:4px}.calendar-mini-days{display:grid;gap:2px;grid-template-columns:repeat(7,1fr)}.calendar-day{align-items:center;aspect-ratio:1;border-radius:6px;color:var(--color-base-content);cursor:pointer;display:flex;font-size:12px;justify-content:center;position:relative;transition:all .2s ease}.calendar-day:not(.empty):hover{background:var(--color-base-300)}.calendar-day.empty{cursor:default}.calendar-day.today{background:var(--color-primary);color:var(--color-primary-content);font-weight:600}.calendar-day.has-items{font-weight:600}.calendar-dot{background:var(--color-info);border-radius:50%;bottom:2px;height:4px;left:50%;position:absolute;transform:translateX(-50%);width:4px}.calendar-day.today .calendar-dot{background:var(--color-base-content)}.calendar-upcoming{max-height:200px;overflow-y:auto}.calendar-upcoming-header{background:var(--color-base-200);padding:12px 16px 8px;position:sticky;top:0}.calendar-upcoming-header h4{color:color-mix(in oklch,var(--color-base-content) 40%,transparent);font-size:12px;font-weight:600;letter-spacing:.5px;margin:0;text-transform:uppercase}.calendar-upcoming-list{padding:0 12px 12px}.calendar-upcoming-item{align-items:center;background:var(--color-base-300);border-radius:10px;display:flex;gap:12px;margin-bottom:8px;padding:10px 12px;text-decoration:none;transition:all .2s ease}.calendar-upcoming-item:last-child{margin-bottom:0}.calendar-upcoming-item:hover{background:color-mix(in oklch,var(--color-base-content) 30%,transparent);transform:translateX(4px)}.calendar-item-icon{align-items:center;border-radius:8px;display:flex;flex-shrink:0;height:36px;justify-content:center;width:36px}.calendar-item-icon i{font-size:18px}.calendar-item-content{flex:1;min-width:0}.calendar-item-title{color:var(--color-base-content);font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-item-meta{display:flex;gap:8px;margin-top:2px}.calendar-item-date,.calendar-item-time{color:color-mix(in oklch,var(--color-base-content) 40%,transparent);font-size:11px}.calendar-empty,.calendar-loading{align-items:center;color:color-mix(in oklch,var(--color-base-content) 40%,transparent);display:flex;flex-direction:column;gap:8px;justify-content:center;padding:24px}.calendar-loading i{animation:spin 1s linear infinite;font-size:24px}.calendar-empty i{color:color-mix(in oklch,var(--color-base-content) 30%,transparent);font-size:32px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:1023px){.fab-container{bottom:90px;right:20px}.fab-main{font-size:20px;height:48px;width:48px}.fab-action{font-size:18px;height:40px;width:40px}.calendar-widget-panel{bottom:60px;max-width:320px;width:calc(100vw - 40px)}}body.calendar-page .fab-container .fab-action:first-child{display:none}.badge{max-width:25ch;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.badge.tooltip{overflow:visible}.renko-md>:first-child{margin-top:0}.renko-md>:last-child{margin-bottom:0}.renko-md p{line-height:1.45;margin:.5em 0}.renko-md ol,.renko-md ul{margin:.5em 0;padding-left:1.25em}.renko-md ul{list-style:disc}.renko-md ol{list-style:decimal}.renko-md li{line-height:1.4}.renko-md li,.renko-md li>p{margin:.15em 0}.renko-md strong{font-weight:700}.renko-md em{font-style:italic}.renko-md h1,.renko-md h2,.renko-md h3,.renko-md h4{font-weight:700;line-height:1.25;margin:.75em 0 .25em}.renko-md h1{font-size:1.1em}.renko-md h2{font-size:1.05em}.renko-md h3,.renko-md h4{font-size:1em}.renko-md a{color:var(--color-primary);text-decoration:underline}.renko-md code{background:color-mix(in oklch,var(--color-base-content) 10%,transparent);border-radius:.25rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em;padding:.1em .35em}.renko-md pre{background:var(--color-base-300);border-radius:.375rem;margin:.5em 0;overflow-x:auto;padding:.5rem .75rem}.renko-md pre code{background:transparent;padding:0}.renko-md blockquote{border-left:3px solid color-mix(in oklch,var(--color-base-content) 30%,transparent);margin:.5em 0;opacity:.85;padding-left:.75em}.renko-md hr{border:none;border-top:1px solid color-mix(in oklch,var(--color-base-content) 20%,transparent);margin:.5em 0}
