@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap";:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;font-family:Plus Jakarta Sans,sans-serif}.app{background-color:var(--bg);min-height:100vh;color:var(--text);padding-bottom:110px;transition:background-color .2s,color .2s}header.top{z-index:30;border-bottom:1px solid var(--border);background-color:var(--bg);padding:16px 18px 12px;position:sticky;top:0}.top-row{justify-content:space-between;align-items:center;gap:12px;display:flex}h1.app-title{color:var(--text);font-size:19px;font-weight:700}.top-right{align-items:center;gap:8px;display:flex}.icon-btn-header{background:var(--switch-bg);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:11px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.subtitle-row{justify-content:space-between;align-items:center;margin-top:10px;display:flex}.subtitle{color:var(--muted);font-size:12.5px;font-weight:600}.undated-toggle{color:var(--text);cursor:pointer;background:0 0;border:none;align-items:center;gap:5px;font-size:12.5px;font-weight:700;display:flex}.undated-panel{background:var(--card);border:1px solid var(--border);border-radius:16px;margin:12px 14px 0;padding:14px}.undated-item{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:8px 0;display:flex}.undated-item:last-child{border-bottom:none}.check-circle{border:1.6px solid var(--muted-soft);cursor:pointer;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;display:flex}.check-circle.done{background:#5fc98a;border-color:#5fc98a}.undated-item span.ti{flex:1;font-size:13.5px}.undated-item span.ti.done{color:var(--muted-soft);text-decoration:line-through}.action-icon{color:var(--muted-soft);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex}.quick-add{gap:8px;margin-top:10px;display:flex}.quick-add input{background:var(--input-bg);border:1px solid var(--border);color:var(--text);border-radius:10px;outline:none;flex:1;padding:9px 12px;font-size:13px}.quick-add button{color:#fff;cursor:pointer;background:#8455d6;border:none;border-radius:10px;justify-content:center;align-items:center;width:38px;display:flex}.month-block{padding-bottom:20px}.month-band{border-radius:16px;justify-content:space-between;align-items:baseline;margin:16px 14px 10px;padding:12px 16px;display:flex;box-shadow:0 6px 18px -8px #00000040}.month-band h2{color:#fff;font-size:16px;font-weight:700}.month-band .m-count{color:#ffffffe6;font-size:11.5px;font-weight:600}.weekday-row{grid-template-columns:repeat(7,1fr);gap:5px;padding:0 14px 6px;display:grid}.weekday-row span{text-align:center;color:var(--muted-soft);font-size:11px;font-weight:700}.grid{grid-template-columns:repeat(7,1fr);gap:5px;padding:0 14px;display:grid}.cell{background:var(--card);border:1px solid var(--border);cursor:pointer;border-radius:14px;flex-direction:column;height:74px;padding:6px;display:flex;position:relative;overflow:hidden}.cell.blank{cursor:default;background:0 0;border:none}.cell.today{box-shadow:inset 0 0 0 1.8px #8455d6}.cell.range-edge{box-shadow:inset 0 0 0 2px var(--edge-color)}.cell-num{color:var(--muted);font-size:12px;font-weight:600}.cell.today .cell-num{color:#8455d6;font-weight:700}.pill{background:var(--pill-bg);border-radius:999px;align-items:center;gap:4px;max-width:100%;margin-top:3px;padding:2.5px 6px;display:flex}.pill.diff-alta{border-left:2px solid #f0665a}.pill.diff-media{border-left:2px solid #e6c654}.pill-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.pill-text{text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:9px;font-weight:600;overflow:hidden}.pill-more{color:var(--muted-soft);margin-top:2px;font-size:8.5px}.range-band{height:7px;position:absolute;bottom:0;left:0;right:0}.select-bar{z-index:40;background:var(--card);border:1px solid var(--border);border-radius:18px;align-items:center;gap:12px;padding:12px 16px;display:flex;position:fixed;bottom:20px;left:14px;right:14px;box-shadow:0 10px 28px -8px #00000059}.select-bar .sb-title{flex:1;min-width:0}.select-bar .sb-title strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;display:block;overflow:hidden}.select-bar .sb-status{font-size:12px;font-weight:600}.select-bar button{background:var(--switch-bg);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:11px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.select-bar button.danger{color:#f0665a}.modal-overlay{z-index:50;background:#0a080e99;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.modal{background:var(--card);border-top:1px solid var(--border);border-radius:24px 24px 0 0;width:100%;max-width:480px;max-height:88vh;padding:20px 20px 32px;overflow-y:auto}.modal-head{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.modal-head h3{font-size:17px;font-weight:700}.field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.field span{color:var(--muted);font-size:12px;font-weight:600}.field input,.field textarea{background:var(--input-bg);border:1px solid var(--border);color:var(--text);border-radius:11px;outline:none;padding:10px 12px;font-family:inherit;font-size:14px}.field input:focus,.field textarea:focus{border-color:#8455d6}.segmented{gap:6px;display:flex}.seg{border:1px solid var(--border);background:var(--input-bg);color:var(--muted);cursor:pointer;border-radius:10px;flex:1;padding:9px 6px;font-size:12.5px;font-weight:600}.seg.active{color:#fff;background:#8455d6;border-color:#8455d6}.checkbox-row{color:var(--text);align-items:center;gap:9px;margin-bottom:14px;font-size:13px;display:flex}.save-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#8455d6,#5b62e0);border:none;border-radius:13px;width:100%;padding:13px;font-size:14.5px;font-weight:700}.save-btn:disabled{opacity:.4;cursor:not-allowed}.fab{color:#fff;cursor:pointer;z-index:35;background:linear-gradient(135deg,#8455d6,#5b62e0);border:none;border-radius:20px;justify-content:center;align-items:center;width:56px;height:56px;display:flex;position:fixed;bottom:24px;right:20px;box-shadow:0 10px 26px -8px #8455d699}.sync-box{flex-direction:column;gap:12px;margin-top:10px;display:flex}.sync-action-card{background:var(--card-alt);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:8px;padding:14px;display:flex}.sync-action-card h4{color:var(--text);font-size:13.5px;font-weight:700}.sync-action-card p{color:var(--muted);font-size:12px;line-height:1.4}.action-row{gap:8px;margin-top:4px;display:flex}.sync-btn-primary{color:#fff;cursor:pointer;background:#8455d6;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:6px;padding:9px 12px;font-size:12.5px;font-weight:600;display:flex}.sync-btn-secondary{background:var(--input-bg);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:6px;padding:9px 12px;font-size:12.5px;font-weight:600;display:flex}.sync-status{color:#5fc98a;text-align:center;margin-top:6px;font-size:12px;font-weight:600}.qr-container{background:#fff;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;margin:10px 0;padding:16px;display:flex}#reader{border-radius:12px;width:100%;margin-top:10px;overflow:hidden}
