:root{--bg: #0f1114;--bg2: #1e2126;--panel: #171a1d;--border: #2a2e33;--border2: color-mix(in srgb, var(--border) 70%, var(--dim));--text: #e7eaed;--dim: #9aa0a7;--accent: #3fccbb;--accent2: #e0a94e;--danger: #e2685b;--sel: #1e2126;--shadow: none;color-scheme:dark;--font: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--ui-zoom: 1;--header-bg: var(--bg2);--header-fg: var(--text)}[data-theme=light]{--bg: #f3efe3;--bg2: #ebe5d5;--panel: #fbf8ef;--border: #cfc4aa;--border2: #b7a987;--text: #2b2a22;--dim: #8a8170;--accent: #1f7a3d;--accent2: #9a6400;--danger: #bb3a2c;--sel: #e7eeda;color-scheme:light}[data-theme=outlook]{--bg: #f3f2f1;--bg2: #faf9f8;--panel: #ffffff;--border: #e1dfdd;--border2: #c8c6c4;--text: #201f1e;--dim: #605e5c;--accent: #0f6cbd;--accent2: #8a6116;--danger: #a4262c;--sel: #eff6fc;--shadow: 0 1.6px 3.6px rgba(0, 0, 0, .09);color-scheme:light;--font: "Segoe UI", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;--header-bg: #0f6cbd;--header-fg: #ffffff}*{box-sizing:border-box}html{zoom:var(--ui-zoom, 1)}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:13px;line-height:1.5}::selection{background:var(--accent);color:var(--bg)}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{margin:0 0 6px;font-size:14px;font-weight:600}p{margin:0 0 8px}ul{margin:0 0 8px;padding-left:18px}.muted{color:var(--dim)}.hint{color:var(--dim);font-size:11px}.mono{font-variant-numeric:tabular-nums}.spacer{flex:1}.row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.stack{display:flex;flex-direction:column;gap:8px}.cols-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cols-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.cols-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.shell{display:grid;grid-template-columns:190px 1fr;grid-template-rows:32px 1fr 26px;grid-template-areas:"path path" "rail main" "status status";height:100%}.pathbar{grid-area:path;display:flex;align-items:center;gap:6px;padding:0 10px;background:var(--header-bg);color:var(--header-fg);border-bottom:1px solid var(--border);font-size:12px;overflow:hidden;white-space:nowrap}.pathbar .seg{color:inherit;opacity:.75}.pathbar .seg[aria-current=page]{opacity:1;font-weight:700}.pathbar .sep{color:var(--dim)}.rail{grid-area:rail;background:var(--bg2);border-right:1px solid var(--border);padding:8px 0;overflow-y:auto}.rail-label{padding:4px 10px;color:var(--dim);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.rail a{display:flex;align-items:center;gap:8px;padding:4px 10px;color:var(--text);border-left:2px solid transparent}.rail a:hover{background:var(--sel);text-decoration:none}.rail a.active{border-left-color:var(--accent);color:var(--accent);background:var(--sel)}.rail .idx{color:var(--dim);font-variant-numeric:tabular-nums}.main{grid-area:main;overflow-y:auto;padding:12px}.statusbar{grid-area:status;display:flex;align-items:center;gap:8px;padding:0 10px;background:var(--header-bg);color:var(--header-fg);border-top:1px solid var(--border);font-size:12px}.statusbar .dot{color:var(--accent)}.statusbar .select{width:auto;padding:0 4px;border-color:var(--border2)}.statusbar button{color:inherit}.login-wrap{height:100%;display:flex;align-items:flex-start;justify-content:center;padding-top:12vh}.login-wrap .panel{width:min(420px,92vw)}.focus-outline:focus-visible,.rail a:focus-visible{outline:1px solid var(--accent);outline-offset:1px}@media(max-width:820px){.shell{grid-template-columns:1fr;grid-template-rows:32px auto 1fr 26px;grid-template-areas:"path" "rail" "main" "status"}.rail{display:flex;overflow-x:auto;gap:2px;padding:4px 6px;border-right:none;border-bottom:1px solid var(--border)}.rail-label{display:none}.rail a{border-left:none;border-bottom:2px solid transparent;white-space:nowrap}.rail a.active{border-left:none;border-bottom-color:var(--accent)}.cols-2,.cols-3,.cols-4{grid-template-columns:1fr}}@media(max-width:560px){.statusbar .identity{display:none}.statusbar .btn{padding:3px 6px}.strip{display:flex;overflow-x:auto;gap:4px;-webkit-mask-image:linear-gradient(to right,#000 85%,transparent);mask-image:linear-gradient(to right,#000 85%,transparent)}}.panel{border:1px solid var(--border);background:var(--panel);margin-bottom:12px;box-shadow:var(--shadow)}.panel-h{display:flex;align-items:center;gap:8px;padding:5px 9px;background:var(--bg2);border-bottom:1px solid var(--border);color:var(--dim);text-transform:uppercase;letter-spacing:.06em;font-size:11px}.panel-h b{color:var(--text);text-transform:none;font-weight:600}.panel-b{padding:10px}.panel-b.flush{padding:0}.btn{font:inherit;cursor:pointer;background:transparent;color:var(--text);border:1px solid var(--border2);padding:2px 8px;white-space:nowrap}.btn:hover:not(:disabled){background:var(--text);color:var(--bg)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{border-color:var(--accent);color:var(--accent)}.btn.primary:hover:not(:disabled){background:var(--accent);color:var(--bg)}.btn.danger{border-color:var(--danger);color:var(--danger)}.btn.danger:hover:not(:disabled){background:var(--danger);color:var(--bg)}.btn.ghost{border-color:transparent;color:var(--dim)}.btn.ghost:hover:not(:disabled){background:transparent;color:var(--text)}.btn.sm{padding:0 6px;font-size:12px}.input,.select,.textarea{font:inherit;width:100%;background:var(--bg);color:var(--text);border:1px solid var(--border2);padding:4px 7px}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--accent)}.textarea{resize:vertical;min-height:64px}.field{display:block;margin-bottom:8px}.field-l{display:block;margin-bottom:2px;color:var(--dim);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.field-err{display:block;margin-top:2px;color:var(--danger);font-size:11px}.tag{display:inline-block;border:1px solid var(--border2);padding:0 5px;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--dim);white-space:nowrap}.tag.ok{border-color:var(--accent);color:var(--accent)}.tag.warn{border-color:var(--accent2);color:var(--accent2)}.tag.bad{border-color:var(--danger);color:var(--danger)}.kbd{border:1px solid var(--border2);border-bottom-width:2px;padding:0 4px;color:var(--dim);font-size:11px}.prompt{color:var(--accent)}.stat{border:1px solid var(--border);background:var(--panel);padding:7px 10px}.stat-l{display:block;color:var(--dim);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.stat-v{display:block;margin-top:2px;font-size:18px;font-weight:600;font-variant-numeric:tabular-nums}.stat-v.ok{color:var(--accent)}.stat-v.warn{color:var(--accent2)}.stat-v.bad{color:var(--danger)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:40}.modal{width:min(460px,92vw);margin:12vh auto 0;background:var(--panel);border:1px solid var(--border)}.modal-b{padding:10px;max-height:70vh;overflow-y:auto}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(580px,96vw);background:var(--panel);border-left:1px solid var(--border);display:flex;flex-direction:column}.drawer-b{flex:1;overflow-y:auto;padding:10px}.drawer-f{padding:8px 10px;border-top:1px solid var(--border);display:flex;gap:8px;justify-content:flex-end}.search{display:flex;align-items:center;gap:6px;flex:1;min-width:200px;border:1px solid var(--border2);background:var(--bg);padding:3px 7px}.search input{font:inherit;flex:1;background:transparent;border:none;color:var(--text)}.search input:focus{outline:none}.search .clear{cursor:pointer;background:transparent;border:none;color:var(--dim)}.toolbar{display:flex;align-items:center;gap:8px;justify-content:space-between;flex-wrap:wrap;padding:8px 10px;border-bottom:1px solid var(--border)}.toolbar .group{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.empty{padding:22px 10px;text-align:center;color:var(--dim)}.err{border:1px solid var(--danger);color:var(--danger);padding:6px 8px;margin-bottom:8px}.table{width:100%;border-collapse:collapse}.table th{text-align:left;color:var(--dim);font-size:11px;text-transform:uppercase;letter-spacing:.06em;padding:5px 9px;border-bottom:1px solid var(--border);white-space:nowrap}.table td{padding:5px 9px;border-bottom:1px solid var(--border);vertical-align:top}.table tr.clickable{cursor:pointer}.table tr.clickable:hover{background:var(--sel)}.table-wrap{overflow-x:auto}.table-wrap .table{min-width:520px}.list{display:flex;flex-direction:column}.item{display:flex;align-items:center;gap:8px;padding:6px 10px;border-bottom:1px solid var(--border)}.item:last-child{border-bottom:none}.progress{height:8px;border:1px solid var(--border2);background:var(--bg);position:relative}.progress>span{display:block;height:100%;background:var(--accent)}.progress.warn>span{background:var(--accent2)}.tabs{display:flex;gap:4px;flex-wrap:wrap}.footer{display:flex;justify-content:flex-end;padding:8px 10px;color:var(--dim);font-size:11px;border-top:1px solid var(--border)}.pre{white-space:pre-wrap;font-family:inherit;margin:0;padding:10px;border:1px solid var(--border);background:var(--bg);overflow-x:auto}.dragging{opacity:.6}.palette-item{width:100%;background:transparent;border:none;color:inherit;cursor:pointer;font:inherit;text-align:left}.item.on{background:var(--sel);color:var(--accent)}.rail .domain-toggle{display:flex;gap:4px;padding:2px 10px 8px}.rail .domain-toggle .btn{flex:1}.rail .domain-toggle .btn.primary.faith{border-color:var(--accent2);color:var(--accent2)}.rail .domain-toggle .btn.primary.faith:hover:not(:disabled){background:var(--accent2);color:var(--bg)}.pathbar .dom{opacity:1;font-weight:600}.pathbar .dom.faith{color:var(--accent2)}.pathbar .dom.daily{color:var(--accent)}.datebar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:6px 9px;margin-bottom:12px;border:1px solid var(--border);background:var(--bg2)}.datebar .date{font-variant-numeric:tabular-nums}.domain-section{border-top:1px solid var(--border);margin-top:8px;padding-top:8px}.domain-section:first-child{border-top:none;margin-top:0;padding-top:0}.section-label{display:flex;align-items:center;gap:6px;margin-bottom:4px;color:var(--dim);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.habit-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:3px 0}.habit-line .name{flex:1;min-width:0}.hstrip{display:flex;gap:2px;font-variant-numeric:tabular-nums;white-space:nowrap}.hmark{width:14px;text-align:center;line-height:1.2;font-size:12px;color:var(--dim)}.hmark.done{color:var(--accent)}.hmark.missed{color:var(--dim)}.hmark.unlogged{color:var(--border2)}.tbars{position:relative;display:flex;align-items:flex-end;gap:2px;height:44px;margin:4px 0 2px;border-bottom:1px solid var(--border)}.tbar{flex:1;min-width:3px;background:var(--border2)}.tbar.on{background:var(--accent)}.tbar.gap{height:1px!important;background:transparent;border-bottom:1px dotted var(--border2)}.tbar-target{position:absolute;left:0;right:0;border-top:1px dashed var(--accent2);pointer-events:none}.strategy-notes{list-style:none;margin:0;padding:0}.strategy-notes li{display:flex;align-items:flex-start;gap:8px;padding:4px 0;border-top:1px solid var(--border)}.strategy-notes li:first-child{border-top:none}.strategy-notes .body{flex:1;white-space:pre-wrap;word-break:break-word}.check-row{display:flex;align-items:center;gap:6px;padding:2px 0}.check-row input{accent-color:var(--accent)}.note-body{white-space:pre-wrap;word-break:break-word}.activity-item{align-items:flex-start}@media(max-width:820px){.rail .domain-toggle{flex:none;padding:0 6px}.rail .domain-toggle .btn{flex:none}}@media(max-width:560px){.tbars{min-width:180px;overflow-x:auto}}.panel-h,.strategy-notes li{flex-wrap:wrap}
