:root{--bg-primary: #0a0a0c;--bg-secondary: #0d0d0f;--bg-card: rgba(15, 15, 18, .6);--accent: #f0d890;--accent-dim: #e8cc7a;--accent-muted: #dfc175;--text-primary: #ffffff;--text-secondary: #c8c8d8;--text-muted: #b8b8c8;--border-color: rgba(240, 216, 144, .15);--border-hover: rgba(240, 216, 144, .3);--transition-speed: .4s;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}[data-theme=light]{--bg-primary: #dcd8d0;--bg-secondary: #d2cec6;--bg-card: rgba(200, 196, 188, .5);--accent: #4a6fa5;--accent-dim: #3d5f8f;--accent-muted: #355580;--text-primary: #1a1a1c;--text-secondary: #2e2e3e;--text-muted: #4a4a5a;--border-color: rgba(74, 111, 165, .18);--border-hover: rgba(74, 111, 165, .35)}*{margin:0;padding:0;box-sizing:border-box}html,body{font-family:var(--font-family);background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;-webkit-font-smoothing:antialiased;font-size:16px}h1,h2,h3{font-weight:200;letter-spacing:.15em;text-transform:uppercase}p{font-weight:300;letter-spacing:.03em;color:var(--text-secondary);line-height:1.7;font-size:.95rem}.app-shell{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;max-width:1200px;margin:0 auto;padding:3rem 2rem;width:100%}.content-fade{transition:opacity .12s ease}.content-fading-in{opacity:1}.content-fading-out{opacity:0}.navbar{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 3rem;border-bottom:1px solid var(--border-color)}.navbar-brand{display:flex;align-items:center;gap:1rem}.navbar-right{display:flex;align-items:center;gap:2rem}.user-menu{position:relative}.user-menu-trigger{display:flex;align-items:center;gap:.6rem;background:transparent;border:none;cursor:pointer;padding:.3rem;transition:opacity var(--transition-speed) ease-in-out}.user-menu-trigger:hover{opacity:.7}.user-avatar{width:28px;height:28px;border-radius:50%;border:1px solid var(--accent-muted);display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:300;color:var(--accent);letter-spacing:0;font-family:var(--font-family)}.user-name{font-size:.7rem;font-weight:300;color:var(--text-secondary);letter-spacing:.05em;font-family:var(--font-family)}.user-dropdown{position:absolute;top:calc(100% + .5rem);right:0;min-width:160px;border:1px solid var(--border-color);background:var(--bg-primary);z-index:100;display:flex;flex-direction:column}.dropdown-item{background:transparent;border:none;color:var(--text-secondary);font-family:var(--font-family);font-size:.65rem;font-weight:300;letter-spacing:.12em;padding:.8rem 1rem;text-align:left;cursor:pointer;transition:opacity var(--transition-speed) ease-in-out;border-bottom:1px solid var(--border-color)}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover{opacity:.6}.logo-svg{width:36px;height:36px}.brand-text{font-size:.9rem;font-weight:300;letter-spacing:.3em;color:var(--accent)}.nav-link{color:var(--text-secondary);text-decoration:none;font-size:.8rem;font-weight:300;letter-spacing:.2em;transition:opacity var(--transition-speed) ease-in-out}.nav-link:hover{opacity:.6}.arc{transform-origin:center}.arc-1{animation:rotate-arc 80s linear infinite}.arc-2{animation:rotate-arc 100s linear infinite reverse}.arc-3{animation:rotate-arc 120s linear infinite}@keyframes rotate-arc{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.page{padding-top:2rem}.page-title{font-size:2rem;color:var(--accent);margin-bottom:.5rem}.page-subtitle{font-size:.9rem;margin-bottom:3rem}.lists-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.create-list-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:3rem 2rem;background:transparent;border:1px solid var(--border-color);border-radius:2px;color:var(--text-muted);cursor:pointer;transition:all var(--transition-speed) ease-in-out;min-height:180px}.create-list-btn:hover{border-color:var(--border-hover);opacity:.8}.btn-icon{font-size:1.5rem;font-weight:200;color:var(--accent)}.btn-text{font-size:.7rem;font-weight:300;letter-spacing:.2em}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background-color:var(--bg-primary)}.login-container{text-align:center}.login-logo-svg{width:120px;height:120px;margin-bottom:2rem}.login-title{font-size:2rem;color:var(--accent);letter-spacing:.3em;margin-bottom:.5rem}.login-subtitle{font-size:.7rem;letter-spacing:.25em;color:var(--text-muted);margin-bottom:3rem}.login-btn{background:transparent;border:1px solid var(--accent-muted);color:var(--accent);padding:.8rem 2.5rem;font-size:.75rem;font-weight:300;letter-spacing:.15em;cursor:pointer;transition:all var(--transition-speed) ease-in-out;font-family:var(--font-family)}.login-btn:hover{opacity:.7}.nav-link.active{color:var(--accent)}.loading-indicator{display:flex;justify-content:center;padding:4rem}.loading-arc svg{width:40px;height:40px}.list-card{padding:1.5rem;border:1px solid var(--border-color);border-radius:2px;cursor:pointer;transition:all var(--transition-speed) ease-in-out;min-height:140px;display:flex;flex-direction:column;background:#0a0a0ccc}[data-theme=light] .list-card{background:#fffc}.list-card:hover{border-color:var(--border-hover);opacity:.85}.list-card-header{display:flex;justify-content:space-between;align-items:flex-start}.list-card-title{font-size:1rem;font-weight:300;letter-spacing:.1em;color:var(--accent)}.list-card-delete{background:transparent;border:none;color:var(--text-muted);font-size:1.2rem;cursor:pointer;opacity:0;transition:opacity var(--transition-speed) ease-in-out;padding:0 .3rem}.list-card:hover .list-card-delete{opacity:.5}.list-card-delete:hover{opacity:1!important;color:var(--accent)}.list-card-desc{font-size:.8rem;margin-top:.5rem;flex:1}.list-card-meta{margin-top:auto;padding-top:1rem}.list-card-count{font-size:.7rem;color:var(--text-muted);letter-spacing:.1em}.create-form{display:flex;flex-direction:column;gap:.8rem;cursor:default}.input-field{background:transparent;border:1px solid var(--border-color);border-radius:2px;color:var(--text-primary);padding:.7rem 1rem;font-family:var(--font-family);font-size:.8rem;font-weight:300;letter-spacing:.05em;outline:none;transition:border-color var(--transition-speed) ease-in-out;width:100%}.input-field::placeholder{color:var(--text-muted);opacity:.5}.input-field:focus{border-color:var(--accent-muted)}.btn-primary{background:transparent;border:1px solid var(--accent);color:var(--accent);padding:.6rem 1.5rem;font-family:var(--font-family);font-size:.7rem;font-weight:300;letter-spacing:.15em;cursor:pointer;transition:opacity var(--transition-speed) ease-in-out}.btn-primary:hover{opacity:.7}.btn-primary:disabled{opacity:.3;cursor:not-allowed}.btn-secondary{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary);padding:.6rem 1.5rem;font-family:var(--font-family);font-size:.7rem;font-weight:300;letter-spacing:.15em;cursor:pointer;transition:opacity var(--transition-speed) ease-in-out}.btn-secondary:hover{opacity:.7}.form-actions{display:flex;gap:.8rem;margin-top:.5rem}.error-text{color:#e07070;font-size:.75rem;font-weight:300}.page-header{display:flex;align-items:center;gap:1.5rem;margin-bottom:2rem}.back-btn{background:transparent;border:none;color:var(--text-muted);font-family:var(--font-family);font-size:.75rem;font-weight:300;letter-spacing:.1em;cursor:pointer;transition:opacity var(--transition-speed) ease-in-out;padding:0}.back-btn:hover{opacity:.6}.external-link{color:var(--accent-muted);font-size:.7rem;font-weight:300;letter-spacing:.1em;text-decoration:none;margin-left:auto;transition:opacity var(--transition-speed) ease-in-out}.external-link:hover{opacity:.6}.articles-list{display:flex;flex-direction:column;gap:1px}.article-row{display:flex;align-items:center;gap:1rem;padding:1rem 1.2rem;border:1px solid var(--border-color);cursor:pointer;transition:all var(--transition-speed) ease-in-out}.article-row:hover{border-color:var(--border-hover);opacity:.85}.article-row-icon{flex-shrink:0}.source-icon{width:20px;height:20px}.article-row-info{flex:1;display:flex;flex-direction:column;gap:.2rem;overflow:hidden}.article-row-title{font-size:.85rem;font-weight:300;color:var(--text-primary);letter-spacing:.03em}.article-row-url{font-size:.65rem;color:var(--text-muted);letter-spacing:.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.article-row-type{font-size:.6rem;color:var(--accent-muted);letter-spacing:.15em;flex-shrink:0}.article-row-action{background:transparent;border:1px solid var(--border-color);color:var(--text-muted);font-family:var(--font-family);font-size:.6rem;font-weight:300;letter-spacing:.1em;padding:.3rem .6rem;cursor:pointer;opacity:0;transition:opacity var(--transition-speed) ease-in-out;flex-shrink:0}.article-row:hover .article-row-action{opacity:.6}.article-row-action:hover{opacity:1!important;border-color:var(--accent);color:var(--accent)}.article-row-delete{background:transparent;border:none;color:var(--text-muted);font-size:1.2rem;cursor:pointer;opacity:0;transition:opacity var(--transition-speed) ease-in-out;padding:0 .3rem}.article-row:hover .article-row-delete{opacity:.5}.article-row-delete:hover{opacity:1!important;color:var(--accent)}.add-article-form{padding:1.2rem;border:1px solid var(--accent-muted);display:flex;flex-direction:column;gap:.8rem}.add-article-btn{background:transparent;border:1px dashed var(--border-color);color:var(--text-muted);padding:1rem;font-family:var(--font-family);font-size:.7rem;font-weight:300;letter-spacing:.15em;cursor:pointer;transition:all var(--transition-speed) ease-in-out;text-align:center}.add-article-btn:hover{border-color:var(--border-hover);opacity:.8}.timeline-container{margin:2rem 0;padding:.5rem 0;position:relative}.timeline-track{display:flex;gap:0;overflow-x:auto;padding:1rem 0;scrollbar-width:none;-ms-overflow-style:none;scroll-behavior:smooth}.timeline-track::-webkit-scrollbar{display:none}.timeline-node{display:flex;flex-direction:column;align-items:center;gap:.4rem;background:transparent;border:none;cursor:pointer;padding:.4rem .6rem;min-width:50px;flex-shrink:0;transition:all var(--transition-speed) ease-in-out;position:relative}.timeline-node:hover{opacity:.7}.timeline-dot{width:8px;height:8px;border-radius:50%;border:1px solid var(--border-color);background:var(--bg-primary);transition:all .5s cubic-bezier(.25,.1,.25,1);z-index:1}.timeline-node.active .timeline-dot{background:var(--accent);border-color:var(--accent);width:10px;height:10px;box-shadow:0 0 12px #f0d8904d}[data-theme=light] .timeline-node.active .timeline-dot{box-shadow:0 0 12px #4a6fa54d}.timeline-date{font-size:.6rem;color:var(--text-muted);letter-spacing:.04em;white-space:nowrap;font-weight:300}.timeline-node.active .timeline-date{color:var(--accent);font-weight:400}.timeline-slider-track{position:relative;height:24px;margin-top:.3rem;cursor:pointer}.timeline-slider-rail{position:absolute;top:50%;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--border-color) 3%,var(--border-color) 97%,transparent);transform:translateY(-50%)}.timeline-slider-thumb{position:absolute;top:50%;width:12px;height:12px;border-radius:50%;background:var(--bg-primary);border:1.5px solid var(--accent);transform:translate(-50%,-50%);pointer-events:none;box-shadow:0 0 10px #f0d89040}[data-theme=light] .timeline-slider-thumb{box-shadow:0 0 10px #4a6fa540}.timeline-slider-input{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;margin:0;-webkit-appearance:none;appearance:none}.diff-viewer{margin-top:1.5rem}.diff-lines{font-family:Consolas,Monaco,monospace;font-size:.75rem;line-height:1.6}.diff-line{display:flex;padding:.1rem .5rem}.diff-added{background:#64c86414}.diff-removed{background:#c8646414}.diff-hunk{background:#f0d8900d;color:var(--accent-muted);font-size:.65rem;padding:.3rem .5rem;margin-top:.5rem}.no-diff-text{color:var(--text-muted);font-size:.8rem;padding:1rem}.diff-line-prefix{color:var(--text-muted);width:1.5rem;flex-shrink:0;-webkit-user-select:none;user-select:none}.diff-added .diff-line-prefix{color:#8bc68b}.diff-removed .diff-line-prefix{color:#c68b8b}.diff-line-content{white-space:pre-wrap;word-break:break-all}.commit-detail{border:1px solid var(--border-color);padding:1.2rem}.commit-meta{display:flex;gap:1.5rem;margin-bottom:.8rem}.commit-sha{font-family:Consolas,monospace;font-size:.75rem;color:var(--accent)}.commit-author,.commit-date{font-size:.7rem;color:var(--text-muted);letter-spacing:.05em}.commit-message{font-size:.8rem;margin-bottom:1rem;color:var(--text-primary)}.diff-content{font-family:Consolas,monospace;font-size:.7rem;color:var(--text-secondary);white-space:pre-wrap;word-break:break-all;line-height:1.5;padding:1rem;border-top:1px solid var(--border-color);margin:0;background:transparent}.empty-state{text-align:center;padding:4rem 2rem}.empty-state p{font-size:.85rem}.config-form{max-width:600px}.config-section{margin-bottom:2rem}.config-label{display:block;font-size:.65rem;color:var(--accent-muted);letter-spacing:.2em;margin-bottom:.8rem;font-weight:300}.toggle-btn{background:transparent;border:1px solid var(--border-color);color:var(--text-muted);padding:.5rem 1.5rem;font-family:var(--font-family);font-size:.7rem;font-weight:300;letter-spacing:.15em;cursor:pointer;transition:all var(--transition-speed) ease-in-out}.toggle-btn.active{border-color:var(--accent);color:var(--accent)}.day-selector{display:flex;gap:.5rem;flex-wrap:wrap}.day-btn{background:transparent;border:1px solid var(--border-color);color:var(--text-muted);padding:.5rem .8rem;font-family:var(--font-family);font-size:.65rem;font-weight:300;letter-spacing:.1em;cursor:pointer;transition:all var(--transition-speed) ease-in-out}.day-btn.selected{border-color:var(--accent);color:var(--accent)}.day-btn:hover{opacity:.7}.time-input{max-width:200px;color-scheme:dark}[data-theme=light] .time-input{color-scheme:light}.email-row{display:flex;gap:.5rem;margin-bottom:.5rem}.remove-email-btn{background:transparent;border:1px solid var(--border-color);color:var(--text-muted);width:36px;font-size:1rem;cursor:pointer;transition:opacity var(--transition-speed) ease-in-out;flex-shrink:0}.remove-email-btn:hover{opacity:.6}.add-email-btn{background:transparent;border:none;color:var(--accent-muted);font-family:var(--font-family);font-size:.7rem;font-weight:300;letter-spacing:.1em;cursor:pointer;padding:.5rem 0;transition:opacity var(--transition-speed) ease-in-out}.add-email-btn:hover{opacity:.6}#geometryCanvas{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none}[data-theme=light] #geometryCanvas{opacity:.3}.app-shell,.login-page{position:relative;z-index:1}.article-reader{border:1px solid var(--border-color);padding:2.5rem 3rem;background:#1b1b1b;max-height:70vh;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#3a3a3a transparent;font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif;color:#e0e0e0;font-size:15px;line-height:1.6;border-radius:4px}[data-theme=light] .article-reader{background:#fff;color:#1b1b1b;scrollbar-color:#d0d0d0 transparent}.article-reader h1,.article-reader h2,.article-reader h3,.article-reader h4,.article-reader h5,.article-reader h6{font-family:Segoe UI,-apple-system,BlinkMacSystemFont,sans-serif;font-weight:600;letter-spacing:normal;text-transform:none;margin:1.8rem 0 .6rem}.article-reader h1{font-size:2rem;color:#fff;line-height:1.3;margin-top:0}[data-theme=light] .article-reader h1{color:#1b1b1b}.article-reader h2{font-size:1.5rem;color:#e0e0e0;border-bottom:1px solid #3a3a3a;padding-bottom:.4rem}[data-theme=light] .article-reader h2{color:#1b1b1b;border-bottom-color:#e0e0e0}.article-reader h3{font-size:1.2rem;color:#d0d0d0}[data-theme=light] .article-reader h3{color:#1b1b1b}.article-reader p{font-size:15px;line-height:1.6;margin-bottom:1rem;font-weight:400;color:inherit}.article-reader ul,.article-reader ol{padding-left:2rem;margin-bottom:1rem}.article-reader li{font-size:15px;line-height:1.6;font-weight:400;margin-bottom:.25rem;color:inherit}.article-reader code{font-family:Cascadia Code,Consolas,Courier New,monospace;font-size:13.5px;background:#2d2d2d;padding:.1rem .4rem;border-radius:3px;color:#d4d4d4}[data-theme=light] .article-reader code{background:#f0f0f0;color:#1b1b1b}.article-reader pre{background:#1e1e1e;padding:1rem 1.2rem;overflow-x:auto;margin-bottom:1rem;border:1px solid #3a3a3a;border-radius:4px}[data-theme=light] .article-reader pre{background:#1e1e1e;border-color:#d0d0d0}.article-reader pre code{background:none;padding:0;color:#d4d4d4;font-size:13px;line-height:1.5;border-radius:0}.article-reader table{width:100%;border-collapse:collapse;margin-bottom:1rem;font-size:14px}.article-reader th{padding:.6rem .8rem;text-align:left;font-weight:600;font-size:14px;letter-spacing:normal;text-transform:none;background:#2d2d2d;color:#e0e0e0;border:1px solid #3a3a3a}[data-theme=light] .article-reader th{background:#f5f5f5;color:#1b1b1b;border-color:#e0e0e0}.article-reader td{padding:.6rem .8rem;border:1px solid #3a3a3a;text-align:left;font-weight:400;color:inherit}[data-theme=light] .article-reader td{border-color:#e0e0e0}.article-reader a{color:#4da3ff;text-decoration:none;border-bottom:none;transition:color .2s ease}.article-reader a:hover{color:#7bbfff;text-decoration:underline;opacity:1}[data-theme=light] .article-reader a{color:#0078d4}[data-theme=light] .article-reader a:hover{color:#106ebe}.article-reader blockquote{border-left:3px solid #4da3ff;padding:.8rem 1.2rem;margin:1rem 0;background:#4da3ff0f;font-style:normal;color:inherit}[data-theme=light] .article-reader blockquote{border-left-color:#0078d4;background:#0078d40d}.article-reader img{max-width:100%;height:auto}.article-reader strong{font-weight:600}.article-reader hr{border:none;border-top:1px solid #3a3a3a;margin:1.5rem 0}[data-theme=light] .article-reader hr{border-top-color:#e0e0e0}.modal-overlay{position:fixed;inset:0;background:#050507d9;z-index:200;display:flex;align-items:center;justify-content:center;padding:1.5rem}.modal-card{background:var(--bg-primary);border:1px solid var(--border-color);padding:2rem 2.5rem;max-width:420px;width:100%;text-align:center}.modal-text{font-size:.9rem;color:var(--text-primary);line-height:1.6}.btn-danger{background:transparent;border:1px solid #c45;color:#e07070;padding:.6rem 1.5rem;font-family:var(--font-family);font-size:.7rem;font-weight:300;letter-spacing:.15em;cursor:pointer;transition:opacity var(--transition-speed) ease-in-out}.btn-danger:hover{opacity:.7}.view-toggle{display:flex;gap:0;border:1px solid var(--border-color)}.view-toggle-btn{background:transparent;border:none;border-right:1px solid var(--border-color);color:var(--text-muted);font-family:var(--font-family);font-size:.7rem;font-weight:300;letter-spacing:.12em;padding:.5rem 1rem;cursor:pointer;transition:all var(--transition-speed) ease-in-out}.view-toggle-btn:last-child{border-right:none}.view-toggle-btn.active{color:var(--accent);background:#f0d8900d}[data-theme=light] .view-toggle-btn.active{background:#4a6fa514}.view-toggle-btn:hover{opacity:.7}
