:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4f6fa;--surface:#fff;--surface-2:#eef1f6;--border:#dde2ea;--text:#1c2230;--text-muted:#5d6779;--primary:#3b5bdb;--primary-hover:#304bc0;--primary-soft:#e7ecff;--on-primary:#fff;--success:#2b8a3e;--success-soft:#e6f6ea;--warning:#b35c00;--warning-soft:#fff1e0;--danger:#c92a2a;--danger-soft:#fdecec;--focus:#3b5bdb;--radius-sm:6px;--radius:10px;--radius-lg:16px;--shadow:0 1px 2px #1018280f, 0 1px 3px #1018281a;--shadow-lg:0 10px 30px #1018282e;--touch:44px;--header-h:56px;--bottom-nav-h:64px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);--font:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-tap-highlight-color:transparent;margin:0;font-size:16px;line-height:1.45;overflow-x:hidden}h1,h2,h3{margin:0 0 .5em;line-height:1.2}h1{font-size:1.4rem}h2{font-size:1.15rem}h3{font-size:1rem}a{color:var(--primary)}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.muted{color:var(--text-muted)}.small{font-size:.875rem}.btn{min-height:var(--touch);min-width:var(--touch);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);font:inherit;cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:.4em;padding:0 1rem;font-weight:500;display:inline-flex}.btn:hover:not(:disabled){background:var(--surface-2)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){background:#a61e1e}.btn-ghost{background:0 0;border-color:#0000}.btn-icon{width:var(--touch);padding:0}.btn-block{width:100%}.field{flex-direction:column;gap:.3rem;margin-bottom:.9rem;display:flex}.field label,.label{font-size:.875rem;font-weight:600}.input,.select,.textarea{width:100%;min-height:var(--touch);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font:inherit;padding:.55rem .75rem;font-size:16px}.textarea{resize:vertical;min-height:88px}.input:focus,.select:focus,.textarea:focus{outline:2px solid var(--focus);outline-offset:0;border-color:var(--focus)}.field-error{color:var(--danger);font-size:.85rem}.checkbox-row{min-height:var(--touch);align-items:center;gap:.6rem;display:flex}.checkbox-row input{width:22px;height:22px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:1rem}.stack{flex-direction:column;gap:.75rem;display:flex}.row{align-items:center;gap:.5rem;display:flex}.row-between{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.wrap{flex-wrap:wrap}.alert{border-radius:var(--radius);padding:.75rem 1rem;font-size:.95rem}.alert-error{background:var(--danger-soft);color:var(--danger)}.alert-warning{background:var(--warning-soft);color:var(--warning)}.alert-success{background:var(--success-soft);color:var(--success)}.alert-info{background:var(--primary-soft);color:var(--primary)}.badge{background:var(--surface-2);color:var(--text-muted);border-radius:999px;align-items:center;gap:.25rem;padding:.1rem .5rem;font-size:.75rem;font-weight:600;display:inline-flex}.badge-success{background:var(--success-soft);color:var(--success)}.color-dot{border-radius:50%;flex:none;width:12px;height:12px;display:inline-block}.progress{background:var(--surface-2);border-radius:999px;height:10px;overflow:hidden}.progress>span{border-radius:inherit;background:var(--primary);height:100%;display:block}.empty{text-align:center;color:var(--text-muted);padding:2rem 1rem}.segmented{background:var(--surface-2);border-radius:var(--radius);gap:2px;padding:3px;display:inline-flex}.segmented button{min-height:var(--touch);border-radius:calc(var(--radius) - 3px);color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:0;padding:0 .85rem;font-weight:500}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:.95rem}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);padding:.55rem .5rem}.table th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.8rem;font-weight:600}.table td.num,.table th.num{text-align:right;font-variant-numeric:tabular-nums}.sheet-backdrop{z-index:100;background:#10182873;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{overscroll-behavior:contain;background:var(--surface);width:100%;max-height:92dvh;box-shadow:var(--shadow-lg);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:.5rem 1rem calc(1rem + var(--safe-bottom));overflow-y:auto}.sheet-handle{background:var(--border);border-radius:2px;width:40px;height:4px;margin:.25rem auto .5rem}.sheet-header{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.sheet-header h2{margin:0}.sheet-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-top:1rem;display:flex}@media (width>=640px){.sheet-backdrop{align-items:center;padding:1rem}.sheet{border-radius:var(--radius-lg);max-width:480px;padding:1rem 1.25rem 1.25rem}.sheet-handle{display:none}}.color-picker{flex-wrap:wrap;gap:.4rem;display:flex}.color-picker button{width:var(--touch);height:var(--touch);cursor:pointer;border:3px solid #0000;border-radius:50%;padding:0;box-shadow:inset 0 0 0 2px #fff9}.color-picker button[aria-checked=true]{border-color:var(--text)}.color-picker input[type=color]{width:var(--touch);height:var(--touch);border:1px solid var(--border);background:var(--surface);border-radius:50%;padding:2px}.pg-splash{justify-content:center;align-items:center;min-height:100dvh;display:flex}.pg-splash img{border-radius:14px;animation:1.2s ease-in-out infinite alternate pg-pulse}@keyframes pg-pulse{0%{opacity:.45}to{opacity:1}}@media (prefers-reduced-motion:reduce){.pg-splash img{animation:none}}.pg-auth{min-height:100dvh;padding:calc(1rem + var(--safe-top)) calc(1rem + var(--safe-right)) calc(1rem + var(--safe-bottom)) calc(1rem + var(--safe-left));justify-content:center;align-items:center;display:flex}.pg-auth-card{width:100%;max-width:400px;padding:1.5rem 1.25rem}.pg-auth-brand{color:var(--primary);align-items:center;gap:.6rem;margin-bottom:1.25rem;font-weight:600;display:flex}.pg-auth-brand img{border-radius:10px}.pg-auth-card form .alert{margin:0 0 1rem}.pg-auth-offline{flex-direction:column;align-items:flex-start;gap:.25rem;margin-bottom:1rem;display:flex}.pg-auth-offline .btn{color:inherit;padding:0 .5rem;text-decoration:underline}.pg-auth-footer{text-align:center;margin:1.25rem 0 0;font-size:.95rem}.pg-auth-footer a{padding:.6rem .25rem;display:inline-block}.pg-week{flex-direction:column;gap:1rem;min-width:0;display:flex}.pg-activities{gap:2rem}.pg-weeknav{flex-wrap:wrap;align-items:center;gap:.25rem;display:flex}.pg-weeknav-label{white-space:nowrap;margin:0 .25rem;font-size:1.15rem}.pg-weeknav .btn:last-child{margin-left:auto}.pwa-offline{padding:.6rem calc(1rem + var(--safe-right)) .6rem calc(1rem + var(--safe-left));background:var(--warning-soft);color:var(--warning);border-bottom:1px solid var(--border);align-items:center;gap:.6rem;font-size:.9rem;font-weight:500;display:flex}.pwa-offline svg{flex:none}.pwa-toasts{z-index:90;left:calc(.75rem + var(--safe-left));right:calc(.75rem + var(--safe-right));bottom:calc(.75rem + var(--safe-bottom));pointer-events:none;flex-direction:column;align-items:center;gap:.5rem;display:flex;position:fixed}@media (width<=899px){body:has(.ly-tabbar) .pwa-toasts{bottom:calc(var(--bottom-nav-h) + var(--safe-bottom) + .75rem)}}@media (width>=900px){.pwa-toasts{align-items:flex-end;left:auto}}.pwa-toast{pointer-events:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:420px;box-shadow:var(--shadow-lg);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem .75rem;padding:.75rem .75rem .75rem 1rem;display:flex}.pwa-toast-text{flex-direction:column;flex:180px;gap:.1rem;min-width:0;font-weight:500;display:flex}.pwa-toast-actions{gap:.4rem;margin-left:auto;display:flex}.pwa-share-icon{vertical-align:-3px;margin:0 .2rem;display:inline-block}.ly-app{min-height:100dvh}.ly-skip{z-index:200;border-radius:var(--radius);background:var(--primary);color:var(--on-primary);padding:.6rem 1rem;position:absolute;top:-100px;left:.5rem}.ly-skip:focus{top:calc(.5rem + var(--safe-top))}.ly-header{z-index:50;min-height:calc(var(--header-h) + var(--safe-top));padding:var(--safe-top) calc(.5rem + var(--safe-right)) 0 calc(1rem + var(--safe-left));background:var(--surface);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:.5rem;display:flex;position:sticky;top:0}.ly-brand{min-width:0;color:var(--text);align-items:center;gap:.6rem;font-weight:700;display:flex}.ly-brand img{border-radius:8px;flex:none}.ly-brand span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ly-user{flex:none;position:relative}.ly-user-btn{max-width:45vw;padding:0 .6rem}.ly-user-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ly-user-menu{z-index:60;width:260px;max-width:calc(100vw - 1rem);box-shadow:var(--shadow-lg);flex-direction:column;gap:.6rem;padding:.75rem;display:flex;position:absolute;top:calc(100% + .4rem);right:0}.ly-user-info{overflow-wrap:anywhere;flex-direction:column;min-width:0;display:flex}.ly-user-menu .alert,.ly-user-hint{margin:0}@media (width<=420px){.ly-user-name{display:none}.ly-user-btn{width:var(--touch);padding:0}}.ly-body{align-items:flex-start;display:flex}.ly-content{flex:1;min-width:0}.ly-main{width:100%;max-width:1200px;padding:1rem calc(1rem + var(--safe-right)) calc(var(--bottom-nav-h) + var(--safe-bottom) + 1.5rem) calc(1rem + var(--safe-left));margin:0 auto}.ly-main-wide{max-width:none}.ly-main:focus{outline:none}.ly-subnav{padding:.75rem calc(1rem + var(--safe-right)) 0 calc(1rem + var(--safe-left));scrollbar-width:none;overflow-x:auto}.ly-segmented{background:var(--surface-2);border-radius:var(--radius);gap:2px;width:100%;max-width:480px;padding:3px;display:flex}.ly-segmented a{min-height:var(--touch);border-radius:calc(var(--radius) - 3px);color:var(--text-muted);white-space:nowrap;flex:1;justify-content:center;align-items:center;padding:0 .6rem;font-weight:500;text-decoration:none;display:flex}.ly-segmented a[aria-current=page]{background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.ly-tabbar{z-index:50;height:calc(var(--bottom-nav-h) + var(--safe-bottom));padding:0 var(--safe-right) var(--safe-bottom) var(--safe-left);background:var(--surface);border-top:1px solid var(--border);display:flex;position:fixed;bottom:0;left:0;right:0}.ly-tab{min-width:0;min-height:var(--touch);color:var(--text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-size:.75rem;font-weight:600;text-decoration:none;display:flex}.ly-tab-icon{border-radius:999px;padding:2px 16px;display:flex}.ly-tab-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;padding:0 .25rem;overflow:hidden}.ly-tab[aria-current=page]{color:var(--primary)}.ly-tab[aria-current=page] .ly-tab-icon{background:var(--primary-soft)}.ly-sidebar{display:none}@media (width>=900px){.ly-tabbar,.ly-subnav{display:none}.ly-header{padding-left:calc(1.25rem + var(--safe-left));padding-right:calc(1rem + var(--safe-right))}.ly-sidebar{width:240px;top:calc(var(--header-h) + var(--safe-top));height:calc(100vh - var(--header-h) - var(--safe-top));padding:1rem .75rem calc(1rem + var(--safe-bottom)) calc(.75rem + var(--safe-left));background:var(--surface);border-right:1px solid var(--border);flex:none;display:block;position:sticky;overflow-y:auto}.ly-side-group+.ly-side-group{margin-top:1rem}.ly-side-area{min-height:var(--touch);border-radius:var(--radius);color:var(--text);align-items:center;gap:.6rem;padding:0 .75rem;font-weight:600;text-decoration:none;display:flex}.ly-side-area:hover{background:var(--surface-2)}.ly-side-area.active{color:var(--primary)}.ly-side-items{margin:.15rem 0 0;padding:0 0 0 .75rem;list-style:none}.ly-side-item{border-radius:var(--radius-sm);min-height:40px;color:var(--text-muted);align-items:center;padding:0 .75rem;text-decoration:none;display:flex}.ly-side-item:hover{background:var(--surface-2);color:var(--text)}.ly-side-item[aria-current=page]{background:var(--primary-soft);color:var(--primary);font-weight:600}.ly-main{padding:1.5rem calc(1.5rem + var(--safe-right)) calc(2rem + var(--safe-bottom)) 1.5rem}}@media (width<=399px){.ly-main{padding-left:calc(.625rem + var(--safe-left));padding-right:calc(.625rem + var(--safe-right))}}@media (width>=900px){.ly-main-wide{padding-bottom:1rem}}
