:root{--paper: #f8f4ec;--ink: #2c2522;--sage: #5c6652;--amber: #c17f3a;--rust: #9c6644;--warmgray: #6b625b}body{font-family:Inter,system_ui,sans-serif;background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased}.serif{font-family:Georgia,ui-serif,serif}.thread-text{font-size:1.02rem;line-height:1.65}.reflection-text{font-size:.985rem;line-height:1.7}.card{background:#fff;border:1px solid #e6e0d6;border-radius:10px;transition:box-shadow .2s ease,transform .2s ease}.card:hover{box-shadow:0 2px 12px #2c25220f}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;border-radius:8px;font-size:.925rem;font-weight:500;transition:all .15s ease;border:1px solid transparent}.btn-primary{background:var(--ink);color:#fff}.btn-primary:hover{background:#1f1a18}.btn-ghost{background:transparent;color:var(--ink);border:1px solid #d8d0c4}.btn-ghost:hover{background:#f1ede5;border-color:#c9c0b3}.btn-warm{background:var(--amber);color:#fff}.btn-warm:hover{background:#a86a2f}.input{width:100%;background:#fff;border:1px solid #d8d0c4;border-radius:8px;padding:.65rem .85rem;font-size:.95rem;transition:border .15s ease}.input:focus{outline:none;border-color:var(--amber);box-shadow:0 0 0 3px #c17f3a14}.textarea{width:100%;background:#fff;border:1px solid #d8d0c4;border-radius:10px;padding:.85rem 1rem;font-size:.98rem;line-height:1.55;min-height:92px;resize:vertical;transition:border .15s ease}.textarea:focus{outline:none;border-color:var(--amber);box-shadow:0 0 0 3px #c17f3a14}.pill{display:inline-flex;align-items:center;padding:.15rem .6rem;border-radius:999px;font-size:.75rem;border:1px solid #d8d0c4;background:#f8f4ec;color:var(--warmgray)}.badge{font-size:.7rem;padding:1px 7px;border-radius:4px;background:#f1ede5;color:var(--warmgray)}.move-badge{font-size:.72rem;padding:1px 8px;border-radius:4px;background:#f4e9dc;color:var(--rust);border:1px solid #e8d9c8}.section-title{font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;color:var(--warmgray);font-weight:600}.empty-state{border:1px dashed #d8d0c4;border-radius:12px;padding:2.25rem;text-align:center;color:var(--warmgray)}.modal{background:#fff;border:1px solid #d8d0c4;border-radius:14px;box-shadow:0 10px 40px #2c25222e}.zen{background:#f6f1e7;min-height:100vh}.loom-line{border-left:2px solid #d8d0c4;padding-left:1rem;margin-left:.35rem}.link{color:var(--amber);text-decoration:underline;text-underline-offset:2px}.link:hover{color:var(--rust)}
