.modal-overlay[data-v-480df63a]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-box[data-v-480df63a]{background:#fff;border-radius:12px;padding:32px 28px 24px;width:min(420px,90vw);box-shadow:0 20px 60px #0003;text-align:center}.modal-icon[data-v-480df63a]{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;margin:0 auto 16px}.modal-icon--danger[data-v-480df63a]{background:#ffeaea;color:#e74c3c}.modal-icon--warning[data-v-480df63a]{background:#fff8e1;color:#f39c12}.modal-icon--info[data-v-480df63a]{background:#eaf4fb;color:#2980b9}.modal-icon--success[data-v-480df63a]{background:#eafaf1;color:#27ae60}.modal-title[data-v-480df63a]{font-size:1.05rem;font-weight:700;margin:0 0 8px;color:#2d3436}.modal-message[data-v-480df63a]{font-size:.875rem;color:#636e72;margin:0 0 24px;line-height:1.5}.modal-actions[data-v-480df63a]{display:flex;gap:10px;justify-content:center}.modal-actions .btn[data-v-480df63a]{min-width:110px}.spin[data-v-480df63a]{animation:spin-480df63a .7s linear infinite;display:inline-block}@keyframes spin-480df63a{to{transform:rotate(360deg)}}.modal-enter-active[data-v-480df63a],.modal-leave-active[data-v-480df63a]{transition:opacity .18s ease}.modal-enter-from[data-v-480df63a],.modal-leave-to[data-v-480df63a]{opacity:0}.modal-enter-active .modal-box[data-v-480df63a],.modal-leave-active .modal-box[data-v-480df63a]{transition:transform .18s ease}.modal-enter-from .modal-box[data-v-480df63a],.modal-leave-to .modal-box[data-v-480df63a]{transform:scale(.92)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-family, "Inter", "Segoe UI", system-ui, -apple-system, sans-serif);background:#eff3f8;color:#495057;line-height:1.6;font-size:14px;-webkit-font-smoothing:antialiased}a{color:#00c793;text-decoration:none}a:hover{text-decoration:none}h1{font-size:1.5rem;font-weight:700;color:#343a40;line-height:1.3}h2{font-size:1.1rem;font-weight:600;color:#343a40}#app{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;padding:2rem 1.5rem;max-width:980px;margin:0 auto;width:100%}.main-content--full{max-width:100%;padding:0}.text-muted{color:#d3d3d3;font-size:.875rem}.optional{color:#d3d3d3;font-size:.8rem;font-style:italic}.navbar{background:#fafafa;color:#495057;padding:0 1.5rem;display:flex;align-items:center;gap:1.5rem;height:64px;box-shadow:0 2px 4px #00000014;border-bottom:1px solid #dfe7ef;position:sticky;top:0;z-index:100}.navbar__brand a{display:inline-flex;align-items:center;gap:8px;color:#00c793;font-size:1.05rem;font-weight:700;text-decoration:none;letter-spacing:.3px}.navbar .navbar-logo{height:50px;width:auto;object-fit:contain}.navbar__links{display:flex;gap:2px;flex:1}.navbar__links a{display:inline-flex;align-items:center;gap:5px;color:#343a40;font-size:.875rem;font-weight:500;text-decoration:none;padding:6px 12px;border-radius:6px;transition:all .2s ease}.navbar__links a:hover{background:#eef2ff}.navbar__links a.router-link-active{background:#eef2ff;color:#00c793;font-weight:600}.navbar__user{display:flex;align-items:center;gap:12px}.navbar__name{display:inline-flex;align-items:center;gap:5px;font-size:.875rem;font-weight:500;color:#495057}.navbar__lang{display:none;position:relative}.navbar__lang-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0}.navbar__lang-btn{display:inline-flex;align-items:center;gap:5px;background:transparent;border:1px solid rgba(73,80,87,.25);border-radius:6px;color:#495057;cursor:pointer;font-size:.8rem;font-weight:600;padding:5px 9px;transition:all .2s ease}.navbar__lang-btn:hover{background:#eef2ff;border-color:#00c793;color:#00c793}.navbar__lang-menu{position:absolute;top:calc(100% + 6px);right:0;background:#fafafa;border:1px solid #dfe7ef;border-radius:10px;padding:5px;display:flex;flex-direction:column;gap:2px;min-width:140px;box-shadow:0 8px 24px #00000021;z-index:200}.navbar__lang-option{display:flex;align-items:center;gap:9px;padding:8px 11px;border:none;background:transparent;border-radius:7px;cursor:pointer;font-size:1rem;font-weight:500;color:#495057;width:100%;text-align:left;transition:.3s}.navbar__lang-option span:first-child{font-size:1.3rem;line-height:1.3rem}.navbar__lang-option:hover,.navbar__lang-option--active{box-shadow:0 0 2px}.navbar__lang-option--active{font-weight:600}.navbar__hamburger{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:40px;height:40px;background:none;border:none;cursor:pointer;padding:4px;border-radius:6px;margin-left:auto}.navbar__hamburger span{display:block;width:22px;height:2px;background:#343a40;border-radius:2px;transition:all .2s ease;transform-origin:center}.navbar__hamburger--open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.navbar__hamburger--open span:nth-child(2){opacity:0;transform:scaleX(0)}.navbar__hamburger--open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.navbar__mobile-user,.navbar__backdrop{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:.625rem 1.25rem;border-radius:6px;border:1px solid transparent;cursor:pointer;font-size:.875rem;font-weight:600;line-height:1.5;letter-spacing:.01em;transition:all .2s ease;white-space:nowrap;text-decoration:none;-webkit-user-select:none;user-select:none}.btn:focus-visible{outline:none;box-shadow:0 0 0 .2rem #00c79340}.btn:disabled{opacity:.6;cursor:not-allowed}.btn--primary{background:#00c793;border-color:#00c793;color:#fff}.btn--primary:hover:not(:disabled){background:#32daa2;border-color:#32daa2}.btn--primary:focus-visible{box-shadow:0 0 0 .2rem #00c79366}.btn--outline{background:transparent;border-color:#dfe7ef;color:#495057}.btn--outline:hover:not(:disabled){background:#f6f9fc;border-color:#c4d3e1}.btn--outline-light{background:transparent;border:1px solid rgba(73,80,87,.4);color:#495057;font-size:.82rem;padding:.45rem 1rem}.btn--outline-light:hover:not(:disabled){background:#eef2ff;border:1px solid rgba(239,68,68,.4)}.btn--danger{background:#fff;border-color:#ef4444;color:#495057}.btn--danger:hover:not(:disabled){background:#dc2626;border-color:#dc2626;color:#fff}.btn--danger:focus-visible{box-shadow:0 0 0 .2rem #ef444459}.btn--success{background:#22c55e;border-color:#22c55e;color:#fff}.btn--success:hover:not(:disabled){background:#1eaf54}.btn--sm{padding:.4rem .875rem;font-size:.8rem}.btn--lg{padding:.875rem 1.75rem;font-size:1rem}.btn--full{width:100%}.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:1.25rem}.form-group label{font-size:.875rem;font-weight:500;color:#343a40}.form-group input,.form-group select,.form-group textarea{padding:.625rem .75rem;border:1px solid #dfe7ef;border-radius:6px;font-size:.875rem;background:#fafafa;color:#495057;transition:all .2s ease;width:100%}.form-group input::placeholder,.form-group select::placeholder,.form-group textarea::placeholder{color:#d3d3d3}.form-group input:hover:not(:focus),.form-group select:hover:not(:focus),.form-group textarea:hover:not(:focus){border-color:#b6c8db}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#00c793;box-shadow:0 0 0 .2rem #00c79333}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.input-sm{padding:.4rem .625rem;border:1px solid #dfe7ef;border-radius:6px;font-size:.8rem;background:#fafafa;color:#495057;width:100%;transition:all .2s ease}.input-sm::placeholder{color:#d3d3d3}.input-sm:hover:not(:focus){border-color:#b6c8db}.input-sm:focus{outline:none;border-color:#00c793;box-shadow:0 0 0 .15rem #00c79333}.input-sm--summary{background:#eff3f8;font-weight:600;color:#495057;cursor:default}.input-sm--summary:hover:not(:focus){border-color:#dfe7ef}.input-sm--summary:focus{outline:none;border-color:#dfe7ef;box-shadow:none}.report-table__summary td{background:#eff3f8;border-top:2px solid #dfe7ef}.row-actions{width:52px;text-align:center;white-space:nowrap;padding:.25rem .3rem!important;vertical-align:middle}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;border:none;cursor:pointer;padding:0;transition:all .2s ease;line-height:1}.btn-icon--add{background:#22c55e26;color:#22c55e;margin-right:5px}.btn-icon--add:hover{background:#22c55e;color:#fff}.btn-icon--remove{background:#ef44441f;color:#ef4444}.btn-icon--remove:hover{background:#ef4444;color:#fff}.badge{display:inline-flex;align-items:center;padding:.25rem .625rem;border-radius:6px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;border:none;line-height:1}.badge--draft{background:#fffbeb;color:#945f06;border:1px solid #f59e0b}.badge--saved{background:#eff6ff;border:1px solid #22c55e}.badge--sent{background:#f0fdf4;color:#136e34}.badge--system{background:#eef2ff;color:#32daa2}.badge--pill{border-radius:2rem}.error-msg{color:#ec1e1e;font-size:.875rem;padding:.625rem .875rem;background:#fef2f2;border-radius:6px;border-left:4px solid #ef4444;margin-bottom:.75rem}.success-msg{color:#17843f;font-size:.875rem;padding:.625rem .875rem;background:#f0fdf4;border-radius:6px;border-left:4px solid #22c55e;margin-bottom:.75rem}.loading{text-align:center;padding:4rem 1.25rem;color:#d3d3d3;font-size:.95rem}.empty-state{text-align:center;padding:4rem 1.25rem;color:#d3d3d3;background:#fafafa;border-radius:12px;border:1.5px dashed #dfe7ef}.empty-state__icon{color:#00c79366;margin-bottom:.875rem}.empty-state p{font-size:.95rem;margin-bottom:6px}.table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:6px}.table-scroll .report-table{min-width:560px}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#eff3f8;padding:1.5rem}.auth-card{background:#fafafa;border-radius:12px;padding:2.5rem 2.25rem;width:100%;max-width:440px;box-shadow:0 12px 40px #0000001f;border:1px solid #dfe7ef}.auth-card__logo{display:flex;justify-content:center;color:#00c793;margin-bottom:6px}.auth-card .auth-logo{height:100px;width:auto;object-fit:contain}.auth-card__title{text-align:center;font-size:1.35rem;margin-bottom:4px}.auth-card__subtitle{text-align:center;color:#d3d3d3;margin-bottom:1.75rem;font-size:.875rem}.auth-card__footer{text-align:center;margin-top:1.25rem;font-size:.875rem;color:#d3d3d3}@media (max-width: 768px){.auth-page .lang-fab{display:flex!important}}.auth-form{display:flex;flex-direction:column}.auth-form .form-group:last-of-type{margin-bottom:1.25rem}.remember-me{display:flex;align-items:center;gap:9px;margin-bottom:1.25rem}.remember-me__checkbox{width:17px;height:17px;accent-color:#00c793;cursor:pointer;flex-shrink:0}.remember-me__label{font-size:.875rem;color:#d3d3d3;cursor:pointer;-webkit-user-select:none;user-select:none}.dashboard__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.875rem;margin-bottom:1.5rem}.dashboard__stats.project-stats{grid-template-columns:repeat(4,1fr)}.stat-card{background:#fafafa;border:1px solid #dfe7ef;border-radius:12px;padding:1rem 1.25rem;box-shadow:0 2px 10px #00000014;display:flex;flex-direction:column;gap:4px}.stat-card__label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#d3d3d3}.stat-card__value{font-size:1.6rem;font-weight:700;color:#343a40;line-height:1.2}.stat-card__badge{display:inline-block;margin-top:4px;padding:2px 8px;font-size:1rem;font-weight:600;background:#00c7931a;border:1px solid rgba(0,199,147,.4);border-radius:6px;letter-spacing:.01em}.report-card--clickable{cursor:pointer}.report-card--clickable:focus-visible{outline:2px solid #00c793;outline-offset:2px}.dashboard__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.75rem;gap:1rem}.dashboard__header h1{margin-bottom:3px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.section-header h2{font-size:1rem;font-weight:700;color:#343a40}.empty-state--inline{padding:1rem 0;text-align:left}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem;margin-bottom:.5rem}.project-card{background:#fafafa;border-radius:12px;padding:1.1rem 1.25rem;box-shadow:0 3px 5px #00000005,0 0 2px #0000000d,0 1px 4px #00000014;border:1px solid #dfe7ef;border-left:4px solid #00c793;transition:box-shadow .2s,transform .18s}.project-card--clickable{cursor:pointer}.project-card--clickable:hover{box-shadow:0 6px 20px #0000001a;transform:translateY(-2px)}.project-card--clickable:focus-visible{outline:2px solid #00c793;outline-offset:2px}.project-card__header{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.4rem}.project-card__name{font-weight:700;font-size:.95rem;color:#343a40;line-height:1.3}.project-card__detail{font-size:.82rem;color:#495057;margin-bottom:2px}.project-card__footer{display:flex;justify-content:space-between;align-items:center;margin-top:.75rem;padding-top:.5rem;border-top:1px solid #dfe7ef}.project-meta-card{display:flex;flex-wrap:wrap;gap:1rem 2rem;background:#fafafa;border:1px solid #dfe7ef;border-radius:12px;padding:1rem 1.25rem;margin-bottom:1.75rem;box-shadow:0 2px 10px #00000014}.project-meta-card__item{display:inline-flex;align-items:center;gap:6px;font-size:.875rem;color:#495057}.project-edit__header{margin-bottom:1.5rem}.project-edit__header h1{font-size:1.25rem}.project-edit__card{background:#fafafa;border-radius:12px;padding:2rem;box-shadow:0 3px 5px #00000005,0 0 2px #0000000d,0 1px 4px #00000014;border:1px solid #dfe7ef;max-width:640px}.project-edit__actions{display:flex;gap:.625rem;margin-top:1.5rem}.modal-box--form{max-width:520px;width:100%}.project-form{display:grid;grid-template-columns:1fr 1fr;gap:.75rem 1rem;margin:1.25rem 0 .5rem}.project-form__field{display:flex;flex-direction:column;gap:4px}.project-form__field--full{grid-column:1/-1}.project-form__field label{font-size:.82rem;font-weight:500;color:#343a40}.project-form__field input{padding:.5rem .75rem;border:1px solid #dfe7ef;border-radius:6px;font-size:.875rem;background:#fafafa;color:#495057;transition:all .2s ease}.project-form__field input::placeholder{color:#d3d3d3}.project-form__field input:focus{outline:none;border-color:#00c793;box-shadow:0 0 0 .15rem #00c79333}.project-form__field input.input--error{border-color:#ef4444}.required{color:#ef4444}.field-error{font-size:.8rem;color:#ef4444;margin:.25rem 0 .5rem}.reports-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.report-card{background:#fafafa;border-radius:12px;padding:1.25rem;box-shadow:0 3px 5px #00000005,0 0 2px #0000000d,0 1px 4px #00000014;border:1px solid #dfe7ef;transition:box-shadow .2s,transform .18s}.report-card:hover{box-shadow:0 6px 20px #0000001a;transform:translateY(-2px)}.report-card__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.report-card__week{font-weight:700;font-size:.975rem;color:#343a40}.report-card__entries,.report-card__date{font-size:.825rem;color:#d3d3d3;margin-bottom:4px}.report-card__project{font-size:.8rem;font-weight:600;color:#00c793;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.report-card__actions{display:flex;justify-content:space-between;gap:8px;margin-top:14px}.report-view{background:#fafafa;border-radius:12px;padding:1.75rem;box-shadow:0 3px 5px #00000005,0 0 2px #0000000d,0 1px 4px #00000014;border:1px solid #dfe7ef}.report-view__header{margin-bottom:1.5rem}.report-view__header h1{font-size:1.25rem;text-align:center}.report-view__meta{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem}.report-view__project-link{margin-left:auto;font-size:.8125rem;font-weight:500;color:#00c793;text-decoration:none}.report-view__project-link:hover{text-decoration:underline}.report-view__actions{display:flex;gap:.625rem;margin-top:1.25rem;flex-wrap:wrap}.back-link{display:inline-flex;align-items:center;gap:6px;margin-bottom:.75rem;font-size:1rem;font-weight:500;color:#495057;transition:color .15s}.back-link svg{width:24px;height:24px;flex-shrink:0}.back-link:hover{color:#00c793;text-decoration:none}.report-edit{background:#fafafa;border-radius:12px;padding:1.75rem;box-shadow:0 3px 5px #00000005,0 0 2px #0000000d,0 1px 4px #00000014;border:1px solid #dfe7ef}.report-edit__header{margin-bottom:1.5rem}.report-edit__header h1{font-size:1.25rem;text-align:center}.report-edit__meta{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.report-edit__meta .form-group{margin-bottom:0;max-width:140px}.report-edit__meta .form-group:last-child{max-width:260px;flex:1}.report-edit__actions{display:flex;gap:.625rem;margin-top:1.25rem;flex-wrap:wrap}.report-table{width:100%;table-layout:fixed;border-collapse:collapse;margin-bottom:1rem;border:1px solid #dfe7ef;border-radius:6px;overflow:hidden}.report-table th{background:#f6f9fc;color:#343a40;padding:.875rem 1rem;text-align:left;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid #dfe7ef}.report-table td{padding:.6rem 1rem;border-bottom:1px solid #dfe7ef;vertical-align:middle;font-size:.85rem}.report-table tbody tr:last-child td{border-bottom:none}.report-table tbody tr.row-day-alt td{background:#eff3f8d9}.report-table tbody tr:hover td{transition:background .15s}.report-table .day-label{font-weight:700;width:56px;color:#495057;font-size:.875rem;vertical-align:top;padding-top:10px}.report-table .day-label__name{display:block;font-weight:700}.report-table .day-label__date{display:block;font-weight:400;font-size:.75rem;color:#d3d3d3}.workcodes-page{background:#fafafa;border-radius:12px;padding:1.75rem;box-shadow:0 3px 5px #00000005,0 0 2px #0000000d,0 1px 4px #00000014;border:1px solid #dfe7ef}.workcodes-page__header{margin-bottom:1.25rem}.workcodes-page__header p{margin-top:6px}.workcodes-list{border:1px solid #dfe7ef;border-radius:6px;overflow:hidden;margin-bottom:1.75rem}.workcode-item{display:flex;align-items:center;gap:12px;padding:.75rem 1rem;border-bottom:1px solid #dfe7ef;min-height:52px;transition:background .15s}.workcode-item:last-child{border-bottom:none}.workcode-item:hover{background:#f6f9fc}.workcode-item:nth-child(2n){background:#eff3f873}.workcode-item:nth-child(2n):hover{background:#f6f9fc}.workcode-code{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;background:#eef2ff;color:#00c793;border-radius:6px;font-weight:700;font-size:.82rem;flex-shrink:0;border:1px solid rgba(0,199,147,.2)}.workcode-desc{flex:1;font-size:.9rem;color:#495057}.workcode-actions{display:flex;gap:8px;margin-left:auto}.workcode-add{background:#eff3f8;border-radius:6px;padding:1.125rem 1.25rem;border:1px dashed #dfe7ef}.workcode-add h2{font-size:.9rem;margin-bottom:.75rem}.workcode-add__row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}@media (max-width: 480px){body{font-size:13px}.main-content{padding:.875rem .625rem}.main-content--full{padding:0}.navbar{padding:0 .75rem;gap:.5rem}.navbar__hamburger{display:flex}.navbar__links{display:none;position:fixed;top:64px;left:0;right:0;flex-direction:column;background:#fafafa;border-bottom:1px solid #dfe7ef;box-shadow:0 12px 40px #0000001f;padding:.75rem 1rem 1rem;gap:2px;z-index:99}.navbar__links a{padding:10px 12px;font-size:.925rem;border-radius:6px}.navbar__links--open{display:flex}.navbar__user{display:none}.navbar__lang{display:flex;justify-content:end;width:100%}.navbar__mobile-user{display:flex;flex-direction:column;gap:8px;margin-top:8px;padding-top:10px;border-top:1px solid #dfe7ef}.navbar__mobile-user .btn{width:100%;justify-content:center}.navbar__backdrop{display:block;position:fixed;right:0;bottom:0;left:0;top:64px;background:#00000040;z-index:98}.navbar__name span,.lang-fab{display:none}.auth-card{padding:1.75rem 1.25rem;border-radius:6px}.report-view{padding:1rem .875rem}.report-view__actions{flex-direction:column}.report-view__actions .btn{width:100%;justify-content:center}.dashboard__stats{grid-template-columns:repeat(2,1fr);gap:.5rem}.dashboard__stats.project-stats{grid-template-columns:repeat(2,1fr)}.stat-card{padding:.75rem 1rem}.stat-card__label{font-size:.7rem}.stat-card__value{font-size:1.35rem}.report-edit{padding:1rem .875rem}.report-edit__meta{flex-direction:column;gap:0}.report-edit__meta .form-group{max-width:100%}.report-edit__actions{flex-direction:column}.report-edit__actions .btn{width:100%;justify-content:center}.report-table th,.report-table td{padding:.5rem}.dashboard__header{flex-direction:column;align-items:stretch}.dashboard__header .btn{width:100%;justify-content:center}.reports-grid,.projects-grid,.form-row{grid-template-columns:1fr}.workcode-add__row{flex-direction:column}.workcode-add__row input,.workcode-add__row select{width:100%}.workcode-add__row .btn{width:100%;justify-content:center}.workcode-item{flex-wrap:wrap;gap:8px}.workcode-actions{width:100%;justify-content:flex-end}}@media (min-width: 481px) and (max-width: 768px){.main-content{padding:1.25rem 1rem}.main-content--full{padding:0}.navbar{padding:0 1rem}.navbar__hamburger{display:flex}.navbar__links{display:none;position:fixed;top:64px;left:0;right:0;flex-direction:column;background:#fafafa;border-bottom:1px solid #dfe7ef;box-shadow:0 12px 40px #0000001f;padding:.75rem 1rem 1rem;gap:2px;z-index:99}.navbar__links a{padding:10px 12px;font-size:.925rem}.navbar__links--open{display:flex}.navbar__user{display:none}.navbar__lang{display:flex;justify-content:end;width:100%}.navbar__mobile-user{display:flex;flex-direction:column;gap:8px;margin-top:8px;padding-top:10px;border-top:1px solid #dfe7ef}.navbar__mobile-user .btn{width:100%;justify-content:center}.navbar__backdrop{display:block;position:fixed;right:0;bottom:0;left:0;top:64px;background:#00000040;z-index:98}.lang-fab{display:none}.report-edit{padding:1.375rem 1.25rem}.report-edit__meta,.report-edit__actions{flex-wrap:wrap}.reports-grid,.projects-grid{grid-template-columns:1fr}.dashboard__stats.project-stats{grid-template-columns:repeat(2,1fr)}.dashboard__header{flex-wrap:wrap}.form-row{grid-template-columns:1fr}}.stats-page__header{margin-bottom:1.75rem}.stats-page__header h1{margin-bottom:4px}.stats-card{background:#fafafa;border:1px solid #dfe7ef;border-radius:12px;padding:1.5rem;box-shadow:0 2px 10px #00000014;margin-bottom:1.25rem}.stats-card__header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.stats-card__title{font-size:.95rem;font-weight:700;color:#343a40;margin-bottom:0}.stats-card__chart{height:260px}.stats-card__chart--doughnut{height:280px}.stats-card--empty p{font-size:.875rem}.stats-charts-row{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:1.25rem}.stats-charts-row .stats-card{margin-bottom:0}@media (max-width: 640px){.stats-charts-row{grid-template-columns:1fr}}.stats-status-row{display:flex;gap:2rem;flex-wrap:wrap}.stats-status-item{display:flex;align-items:center;gap:.5rem}.stats-status-item__count{font-size:1.4rem;font-weight:700;color:#343a40}.week-filters{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.range-inputs{display:flex;align-items:center;gap:.4rem}.range-sep{font-size:.85rem;color:#495057}.filter-input-week{font-size:.8rem;padding:3px 8px;border:1px solid #dfe7ef;border-radius:6px;background:#f6f9fc;color:#343a40;outline:none;cursor:pointer}.filter-input-week:focus{border-color:#00c793}.filter-select{font-size:.8rem;padding:3px 10px;border:1px solid #dfe7ef;border-radius:6px;background:#f6f9fc;color:#343a40;cursor:pointer;outline:none}.filter-select:focus{border-color:#00c793}.btn-group{display:flex;border:1px solid #dfe7ef;border-radius:6px;overflow:hidden}.btn--xs{padding:3px 10px;font-size:.78rem;border:none;border-right:1px solid #dfe7ef;background:#f6f9fc;color:#495057;cursor:pointer;transition:background .15s,color .15s}.btn--xs:last-child{border-right:none}.btn--xs.active{background:#00c793;color:#fff;font-weight:600}.btn--xs:hover:not(.active){background:#e8f8f4;color:#343a40}.landing{font-family:inherit;color:#495057;background:#eff3f8;min-height:100vh;overflow-x:hidden}.landing__hero{background:linear-gradient(145deg,#007d5c,#015a43);color:#fff;padding:5rem 1.5rem 4rem;text-align:center}.landing__hero-inner{max-width:620px;margin:0 auto}.landing__logo{height:90px;width:auto;margin-bottom:1.5rem;filter:brightness(0) invert(1)}.landing__title{font-size:clamp(2rem,6vw,3rem);font-weight:800;line-height:1.2;margin-bottom:1rem;color:#fff}.landing__title-accent{color:#00c793}.landing__subtitle{font-size:1.05rem;line-height:1.65;color:#fffc;margin-bottom:2.25rem}.landing__cta-group{display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.landing__cta-group .btn--lg{padding:.85rem 2rem;font-size:1rem;border-radius:12px;display:inline-flex;align-items:center;gap:8px}.landing__cta-group .btn--outline{border:2px solid rgba(255,255,255,.55);color:#fff;background:transparent}.landing__cta-group .btn--outline:hover{background:#ffffff1a}.landing__cta-group .btn--ghost{color:#ffffffbf;background:transparent;border:none;text-decoration:underline;text-underline-offset:3px}.landing__cta-group .btn--ghost:hover{color:#fff}.landing__ios-tip{font-size:.82rem;color:#fff9;margin-top:.5rem}.landing__features{padding:4rem 1.5rem;background:#fff}.landing__section-inner{max-width:960px;margin:0 auto}.landing__section-title{text-align:center;font-size:1.6rem;font-weight:700;margin-bottom:2.5rem;color:#495057}.landing__feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.landing__feature-card{border:1px solid #dfe7ef;border-radius:12px;padding:1.75rem 1.5rem;transition:box-shadow .2s}.landing__feature-card:hover{box-shadow:0 2px 10px #00000014}.landing__feature-icon{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:6px;background:#00c7931a;color:#00c793;margin-bottom:1rem}.landing__feature-icon svg{display:block}.landing__feature-title{font-size:1rem;font-weight:700;margin-bottom:.4rem;color:#495057}.landing__feature-desc{font-size:.875rem;color:#d3d3d3;line-height:1.6}.landing__trust{padding:3rem 1.5rem;background:#00c793}.landing__trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;text-align:center}.landing__trust-item{display:flex;flex-direction:column;align-items:center;gap:4px}.landing__trust-value{font-size:2rem;font-weight:800;color:#fff;line-height:1}.landing__trust-label{font-size:.8rem;font-weight:600;color:#fffc;text-transform:uppercase;letter-spacing:.05em}.landing__bottom-cta{padding:4.5rem 1.5rem;background:#eff3f8;text-align:center}.landing__bottom-cta h2{font-size:1.75rem;font-weight:700;margin-bottom:.5rem}.landing__bottom-cta p{color:#d3d3d3;margin-bottom:1.75rem}.landing__bottom-cta .btn--lg{padding:.85rem 2.5rem;font-size:1rem;border-radius:12px}.landing__footer{background:#002d22;color:#ffffff8c;text-align:center;padding:1.25rem 1.5rem;font-size:.8rem}.landing__footer a{color:#00c793;text-decoration:none}.landing__footer a:hover{text-decoration:underline}@media (max-width: 600px){.landing__trust-grid{grid-template-columns:repeat(2,1fr)}.landing__feature-grid{grid-template-columns:1fr}.landing__cta-group{flex-direction:column;align-items:stretch}.landing__cta-group .btn{width:100%;justify-content:center}}.gdpr-page{min-height:100vh;background:#eff3f8;padding:2rem 1.5rem 4rem;display:flex;justify-content:center}.gdpr-card{background:#fafafa;border:1px solid #dfe7ef;border-radius:12px;box-shadow:0 12px 40px #0000001f;padding:2.5rem 2.25rem;width:100%;max-width:780px;height:fit-content}.gdpr-card .back-link{display:inline-flex;align-items:center;gap:6px;margin-bottom:1.25rem;font-size:1rem;font-weight:500;color:#495057;transition:color .15s;text-decoration:none}.gdpr-card .back-link svg{flex-shrink:0}.gdpr-card .back-link:hover{color:#00c793}.gdpr-card__title{font-size:1.75rem;font-weight:800;margin-bottom:.25rem;color:#495057}.gdpr-card__updated{font-size:.8rem;color:#d3d3d3;margin-bottom:2rem}.gdpr-section{margin-bottom:2rem;border-bottom:1px solid #dfe7ef;padding-bottom:2rem}.gdpr-section:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.gdpr-section h2{font-size:1.05rem;font-weight:700;margin-bottom:.6rem;color:#495057}.gdpr-section p,.gdpr-section li{font-size:.9rem;line-height:1.75;color:#495057}.gdpr-section ul{padding-left:1.25rem;margin-top:.4rem}.gdpr-section ul li{margin-bottom:.3rem}.gdpr-section a{color:#00c793;text-decoration:none}.gdpr-section a:hover{text-decoration:underline}.gdpr-section code{background:#f6f9fc;border-radius:4px;padding:1px 5px;font-size:.85em}.gdpr-footer{margin-top:2.5rem;display:flex;gap:1rem;flex-wrap:wrap}.gdpr-footer .btn{flex:1;min-width:140px;text-align:center;padding:.75rem 1.5rem;border-radius:12px;text-decoration:none;font-size:.9rem;font-weight:600}@media (max-width: 480px){.gdpr-card{padding:1.5rem 1.25rem}.gdpr-footer{flex-direction:column}.gdpr-footer .btn{width:100%}}.lang-fab{position:fixed;bottom:1.5rem;right:1.5rem;z-index:9999;display:flex;flex-direction:column;align-items:flex-end;gap:8px}@media (max-width: 768px){.lang-fab{display:none!important}}.lang-fab__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1}.lang-fab__menu{background:#fafafa;border:1px solid #dfe7ef;border-radius:12px;padding:6px;display:flex;flex-direction:column;gap:2px;box-shadow:0 8px 32px #00000026,0 2px 8px #00000014;min-width:148px}.lang-fab__option{display:flex;align-items:center;gap:10px;padding:9px 12px;border:none;background:transparent;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;color:#495057;text-align:left;transition:.3s;width:100%}.lang-fab__option span:first-child{font-size:1.3rem;line-height:1.3rem}.lang-fab__option:hover,.lang-fab__option--active{box-shadow:0 0 2px}.lang-fab__option--active{font-weight:600}.lang-fab__label{flex:1}.lang-fab__btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:58px;height:58px;border-radius:50%;cursor:pointer;border:1px solid;transition:transform .2s,box-shadow .2s,background .2s;-webkit-user-select:none;user-select:none}.lang-fab__btn:hover,.lang-fab__btn--open{box-shadow:0 5px 17px #00c79380,0 2px 8px #00000026;transform:translateY(-2px) scale(1.04)}.lang-fab__current{font-size:1.3rem;font-weight:700;letter-spacing:.05em;line-height:1}.lang-fab-slide-enter-active{transition:opacity .18s ease,transform .18s ease}.lang-fab-slide-leave-active{transition:opacity .14s ease,transform .14s ease}.lang-fab-slide-enter-from{opacity:0;transform:translateY(10px) scale(.96)}.lang-fab-slide-leave-to{opacity:0;transform:translateY(8px) scale(.96)}.lang-drop-enter-active{transition:opacity .15s ease,transform .15s ease}.lang-drop-leave-active{transition:opacity .12s ease,transform .12s ease}.lang-drop-enter-from{opacity:0;transform:translateY(-6px) scale(.97)}.lang-drop-leave-to{opacity:0;transform:translateY(-4px) scale(.97)}
