:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color:#e0e0e0;background-color:#0d0d1a;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;background-color:#0d0d1a;color:#e0e0e0;min-height:100vh}.app{max-width:640px;margin:0 auto;padding:16px}.tabs{display:flex;gap:8px;margin-bottom:16px}.tabs button{padding:8px 14px;border:1px solid #2a2a40;border-radius:8px;background:#1a1a2e;color:#e0e0e0;font:inherit;cursor:pointer}.tabs button.active{background:#3a3a66;border-color:#5a5a99}.app-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.app-header h1{margin:0;font-size:1.3rem}.account-menu{position:relative}.account-menu>button{padding:8px 14px;border:1px solid #2a2a40;border-radius:8px;background:#1a1a2e;color:#e0e0e0;font:inherit;cursor:pointer}.account-panel{position:absolute;right:0;z-index:10;display:flex;flex-direction:column;gap:8px;width:260px;margin-top:6px;padding:12px;border:1px solid #2a2a40;border-radius:8px;background:#12121f}.account-panel p{margin:0;font-size:.9rem}.account-panel .delete-form{display:flex;flex-direction:column;gap:8px}.account-panel .field{display:flex;flex-direction:column;gap:4px}.account-panel .check{display:flex;gap:6px;align-items:flex-start;font-size:.9rem}.danger{border-color:#a44!important;color:#ff9a9a!important}.pet-bar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px;margin-bottom:12px}.pet-select{display:flex;flex-direction:column;gap:2px;font-size:.8rem}.pet-select select{padding:8px;border:1px solid #2a2a40;border-radius:8px;background:#1a1a2e;color:#e0e0e0;font:inherit}.pet-form{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}.pet-form h2,.pet-form p{margin:0}.pet-form .field{display:flex;flex-direction:column;gap:4px}.pet-form .actions{display:flex;gap:8px}.status{max-width:320px;margin:15vh auto 0;padding:0 16px;text-align:center}.error{margin:0;color:#ff7b7b}.auth{display:flex;flex-direction:column;gap:8px;max-width:360px;margin:10vh auto 0;padding:0 16px}.auth h1{margin:0;font-size:1.6rem}.auth h2{margin:0 0 4px;font-size:1.1rem;font-weight:600}.auth p{margin:0}.auth input,.pet-form input,.pet-form select,.account-panel input[type=password]{padding:10px;border:1px solid #2a2a40;border-radius:8px;background:#1a1a2e;color:#e0e0e0;font:inherit}.auth button,.pet-form button,.account-panel button,.pet-bar button{padding:8px 14px;border:1px solid #2a2a40;border-radius:8px;background:#1a1a2e;color:#e0e0e0;font:inherit;cursor:pointer}.auth button.primary{background:#3a3a66;border-color:#5a5a99}.auth button:disabled,.pet-form button:disabled,.account-panel button:disabled{opacity:.5;cursor:default}.auth button.link{padding:4px 0;border:0;background:none;color:#9aa0ff;text-decoration:underline}.auth-links{display:flex;justify-content:space-between;gap:12px}.notice{padding:10px;border:1px solid #5a5a99;border-radius:8px;background:#1a1a2e;font-size:.9rem}.hint{color:#9a9ab0}.auth-lang{max-width:360px;margin:16px auto 0;padding:0 16px}.lang-select{display:flex;align-items:center;gap:8px;font-size:.9rem}.lang-select select{padding:6px;border:1px solid #2a2a40;border-radius:8px;background:#1a1a2e;color:#e0e0e0;font:inherit}.meds,.med-form{--card-background: #1a1a2e;--accent-color: #00f5d4;--text-primary: #ffffff;--text-secondary: #a9a9a9;--border-color: #33334d;color:var(--text-primary)}.meds button,.med-form button{padding:6px 12px;border:1px solid var(--border-color);border-radius:8px;background:var(--card-background);color:var(--text-primary);font:inherit;cursor:pointer}.meds button:disabled,.med-form button:disabled{opacity:.5;cursor:default}.meds-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.meds h2,.med-form h2{margin:0;font-size:1.25rem}.med-list{list-style:none;padding:0;margin:0;display:grid;gap:12px}.med-item{display:flex;flex-direction:column;gap:10px;padding:14px;background:var(--card-background);border:1px solid var(--border-color);border-radius:12px}.med-item.paused .med-main{opacity:.5}.med-main{display:flex;flex-direction:column;gap:2px}.med-times,.med-status,.med-notes{color:var(--text-secondary);font-size:.85rem}.med-controls{display:flex;align-items:center;gap:8px}.switch{display:inline-flex;align-items:center;gap:6px;margin-right:auto;cursor:pointer}.med-form{display:flex;flex-direction:column;gap:12px}.field{display:flex;flex-direction:column;gap:4px;flex:1;font-size:.9rem}.field input,.field select{padding:8px;border:1px solid var(--border-color);border-radius:8px;background:var(--card-background);color:var(--text-primary);font:inherit}.row{display:flex;gap:12px}.check{display:flex;align-items:center;gap:8px}.field-error{color:#ff7b7b}.counter{align-self:flex-end;color:var(--text-secondary)}.preview{margin:0;color:var(--accent-color)}.actions{display:flex;gap:8px}.save-error{margin-bottom:12px;padding:10px 14px;border-radius:8px;background:#b3261e;color:#fff}.calendar-box{margin-top:24px;padding:14px;background:var(--card-background);border:1px solid var(--border-color);border-radius:12px}.calendar-box h3{margin:0 0 8px;font-size:1rem}.calendar-link{display:flex;gap:8px}.calendar-link input{flex:1;min-width:0;padding:8px;border:1px solid var(--border-color);border-radius:8px;background:transparent;color:var(--text-primary);font:inherit}.calendar-note{display:block;margin-top:8px;color:var(--text-secondary)}.today{--card-background: #1a1a2e;--accent-color: #00f5d4;--text-primary: #ffffff;--text-secondary: #a9a9a9;--border-color: #33334d}.day-nav{display:flex;align-items:center;gap:12px;margin-bottom:16px}.day-nav button{padding:6px 12px;border:1px solid var(--border-color);border-radius:8px;background:var(--card-background);color:var(--text-primary);font:inherit;cursor:pointer}.day-label{flex:1;text-align:center;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.late-warning{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px;padding:10px 14px;border-radius:8px;background:#fff3bf;color:#4a3b00;border:1px solid #e0b400}.late-actions{display:flex;gap:8px}.late-actions button{padding:4px 10px;border:1px solid #8a6d00;border-radius:6px;background:transparent;color:#4a3b00;font:inherit;cursor:pointer}.save-error{margin-bottom:16px;padding:10px 14px;border-radius:8px;background:#b3261e;color:#fff}.empty{text-align:center;color:var(--text-secondary)}.cards-container{display:grid;grid-template-columns:1fr;gap:20px}.card{background-color:var(--card-background);border:1px solid var(--border-color);border-radius:16px;padding:20px;box-shadow:0 8px 24px #0000004d}.card h2{margin:0;color:var(--accent-color);border-bottom:1px solid var(--border-color);padding-bottom:12px;font-size:1.3rem;font-weight:500}.card ul{list-style-type:none;padding:0;margin:12px 0 0}.card li{padding:10px 0;display:flex;align-items:center;border-bottom:1px solid var(--border-color)}.card li:last-child{border-bottom:none}.card li.completed label{text-decoration:line-through;color:var(--text-secondary)}.card label{cursor:pointer;display:flex;align-items:flex-start;color:var(--text-primary);font-size:1rem}.card strong{color:var(--accent-color);margin-right:10px;font-weight:600}.card li.completed strong{color:var(--text-secondary)}.dose-text{display:flex;flex-direction:column}.notes{color:var(--text-secondary);font-size:.8rem}.card input[type=checkbox]{-webkit-appearance:none;appearance:none;background-color:transparent;margin:0 15px 0 0;flex:none;font:inherit;width:1.15em;height:1.15em;border:2px solid var(--border-color);border-radius:4px;display:grid;place-content:center;cursor:pointer;transition:all .2s ease-in-out}.card input[type=checkbox]:disabled{opacity:.5;cursor:default}.card input[type=checkbox]:before{content:"";width:.65em;height:.65em;transform:scale(0);transition:.12s transform ease-in-out;background-color:var(--accent-color);border-radius:2px}.card input[type=checkbox]:checked{border-color:var(--accent-color)}.card input[type=checkbox]:checked:before{transform:scale(1)}
