.tw{max-width:1080px;margin:0 auto;padding:32px 28px 64px}.tw-head{border-bottom:1px solid var(--rule);margin-bottom:28px;padding-bottom:22px}.tw-eyebrow{color:var(--signal);text-transform:uppercase;letter-spacing:1.4px;margin-bottom:8px;font-size:11px;font-weight:600}.tw-title{font-family:var(--serif);letter-spacing:-.6px;color:var(--ink);margin-bottom:8px;font-size:30px;font-weight:600;line-height:1.1}.tw-sub{color:var(--muted);max-width:60ch;font-size:14px;line-height:1.6}.tw-grid{grid-template-columns:280px 1fr;align-items:start;gap:28px;display:grid}.tw-side{position:sticky;top:24px}.tw-task-pill{background:var(--ink);color:#fff;letter-spacing:1px;text-transform:uppercase;border-radius:20px;margin-bottom:14px;padding:4px 11px;font-size:10px;font-weight:700;display:inline-block}.tw-prompt{background:var(--white);border:1px solid var(--rule);border-radius:var(--radius);font-family:var(--serif);color:var(--ink);margin-bottom:24px;padding:18px;font-size:15px;line-height:1.65}.tw-prompt-cta{color:var(--ink2);margin-top:12px;font-style:italic;font-weight:600}.tw-struct-label{color:var(--muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:12px;font-size:11px;font-weight:600}.tw-struct{gap:2px;list-style:none;display:grid}.tw-struct-row{border-radius:var(--radius-sm);align-items:center;gap:12px;padding:10px 12px;transition:background .2s,color .2s;display:flex}.tw-struct-dot{width:26px;height:26px;font-family:var(--serif);border:1.5px solid var(--rule2);color:var(--muted2);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:600;transition:all .2s;display:flex}.tw-struct-name{color:var(--muted2);font-size:13px;font-weight:500;transition:color .2s}.tw-struct-row.now{background:var(--signal-soft)}.tw-struct-row.now .tw-struct-dot{border-color:var(--signal);color:var(--signal)}.tw-struct-row.now .tw-struct-name{color:var(--ink);font-weight:600}.tw-struct-row.done .tw-struct-dot{background:var(--ink);border-color:var(--ink);color:#fff}.tw-struct-row.done .tw-struct-name{color:var(--text)}.tw-stats{background:var(--rule);border:1px solid var(--rule);border-radius:var(--radius);grid-template-columns:repeat(3,1fr);gap:1px;margin-bottom:18px;display:grid;overflow:hidden}.tw-stat{background:var(--white);padding:16px 18px}.tw-stat-val{font-family:var(--serif);color:var(--ink);letter-spacing:-.5px;font-size:26px;font-weight:600;line-height:1}.tw-stat-val small{color:var(--muted2);font-size:14px}.tw-stat-lbl{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;margin-top:6px;font-size:10px;font-weight:600}.tw-surface{border:1px solid var(--rule2);border-radius:var(--radius);background:var(--white);position:relative;overflow:hidden}.tw-surface:focus-within{border-color:var(--signal);box-shadow:0 0 0 3px var(--signal-soft)}.tw-ghost,.tw-input{font-family:var(--serif);letter-spacing:0;white-space:pre-wrap;word-break:break-word;border:0;margin:0;padding:22px 24px;font-size:17px;line-height:1.9}.tw-ghost{color:var(--muted2);-webkit-user-select:none;user-select:none;min-height:340px}.tw-gch{color:#cfcfcf;transition:color 50ms}.tw-gch.ok{color:var(--ink)}.tw-gch.bad{color:#c0392b;background:#fdecea;border-radius:2px}.tw-input{resize:none;color:#0000;width:100%;height:100%;caret-color:var(--signal);background:0 0;outline:none;position:absolute;inset:0}.tw-input::selection{background:#1d4ed81f}.tw-foot{margin-top:16px}.tw-progress{background:var(--rule);border-radius:2px;height:3px;margin-bottom:14px;overflow:hidden}.tw-progress-fill{background:var(--ink);border-radius:2px;height:100%;transition:width .2s}.tw-foot-actions{justify-content:flex-end;gap:10px;display:flex}.tw-btn{border-radius:var(--radius-sm);border:1px solid var(--rule2);background:var(--white);color:var(--muted);padding:10px 20px;font-size:13px;font-weight:600;transition:all .15s}.tw-btn.ghost:hover{border-color:var(--ink3);color:var(--ink)}.tw-btn.primary{background:var(--ink);color:#fff;border-color:var(--ink)}.tw-btn.primary:disabled{background:var(--off2);color:var(--muted2);border-color:var(--rule);cursor:not-allowed}.tw-btn.primary:not(:disabled):hover{background:var(--signal);border-color:var(--signal)}.tw-done{background:var(--signal-soft);border:1px solid var(--signal);border-radius:var(--radius);color:var(--ink2);margin-top:18px;padding:16px 18px;font-size:14px;line-height:1.6}.tw-done strong{color:var(--ink)}@media (max-width:860px){.tw-grid{grid-template-columns:1fr}.tw-side{position:static}}
