.mf-mascota{z-index:60;pointer-events:none;align-items:flex-end;gap:4px;display:flex;position:fixed;bottom:10px;right:14px}.mf-mascota>*{pointer-events:auto}.mf-mascota-bot{cursor:pointer;filter:drop-shadow(0 6px 12px #00000040);background:0 0;border:0;width:120px;height:164px;padding:0;transition:transform .15s}.mf-mascota-bot:hover{transform:translateY(-3px)scale(1.04)}.mf-mascota-bot:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius)}.mf-mascota-lottie{width:100%;height:100%;display:block}.mf-mascota-fallback{border:1px solid var(--line-strong,var(--line));background:var(--surface,#24282c);width:76px;height:76px;color:var(--ink,#f7f5ee);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:.15rem;margin:80px auto 0;font-size:1.6rem;line-height:1;display:flex}.mf-mascota-fallback b{letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:600}.mf-mascota-saludo{max-width:240px;font-family:var(--font-body);color:var(--ink);background:var(--surface-lift);border:1px solid var(--line-strong);border-radius:10px 10px 2px;flex-direction:column;order:-1;gap:.15rem;margin:0 0 104px;padding:.65rem 2rem .65rem .85rem;font-size:.875rem;line-height:1.35;animation:.25s ease-out mf-mascota-pop;display:flex;position:relative;box-shadow:0 8px 24px #00000029}.mf-mascota-saludo[hidden]{display:none}.mf-mascota-saludo strong{font-family:var(--font-display);font-size:1rem;font-weight:600}.mf-mascota-saludo span{color:var(--ink-dim)}.mf-mascota-cerrar{width:22px;height:22px;color:var(--ink-faint);cursor:pointer;background:0 0;border:0;border-radius:50%;padding:0;font-size:16px;line-height:1;position:absolute;top:.3rem;right:.3rem}.mf-mascota-cerrar:hover,.mf-mascota-cerrar:focus-visible{color:var(--ink);background:var(--line)}body:has(.op-ai[data-open=true]) .mf-mascota{display:none}.mf-mascota.is-entering .mf-mascota-bot{animation:.6s cubic-bezier(.2,.9,.3,1.2) both mf-mascota-in}@keyframes mf-mascota-in{0%{transform:translate(140%)}to{transform:none}}@keyframes mf-mascota-pop{0%{opacity:0;transform:translateY(6px)scale(.96)}to{opacity:1;transform:none}}@media (width<=640px){.mf-mascota{bottom:4px;right:4px}.mf-mascota-bot{width:70px;height:96px}.mf-mascota-saludo{margin-bottom:60px}}@media (prefers-reduced-motion:reduce){.mf-mascota.is-entering .mf-mascota-bot,.mf-mascota-saludo{animation:none}}.op{flex-direction:column;gap:2.2rem;max-width:62rem;padding-bottom:3rem;display:flex}.op-loading,.op-error{color:var(--ink-faint);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;font-size:.82rem}.op-error{color:var(--danger-ink);text-transform:none;letter-spacing:0;font-family:var(--font-body);flex-direction:column;align-items:flex-start;gap:1.2rem;font-size:.95rem;display:flex}.op-notice{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);color:var(--ink-dim);border-left-width:3px;margin:0;padding:.85rem 1.1rem;font-size:.9rem}.op-notice[data-tone=info]{border-left-color:var(--highlight)}.op-notice[data-tone=error]{border-color:var(--danger-line);border-left-color:var(--danger-line);background:var(--danger-bg);color:var(--danger-ink)}@keyframes op-pulse{50%{opacity:.25}}.op-now-body{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1.5rem;margin-top:.9rem;display:flex}.op-now-lines{min-width:0}.op-now-name{letter-spacing:-.02em;margin:0;font-size:clamp(1.5rem,3.2vw,2.1rem);line-height:1.15}.op-now-where{color:var(--ink-faint);margin:.35rem 0 0;font-size:.9rem}.op-clock{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:.04em;color:var(--highlight);flex:none;margin:0;font-size:clamp(1.6rem,4vw,2.3rem)}.op-now-foot{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.2rem;margin-top:1.5rem;padding-top:1.2rem;display:flex}.op-hours{font-family:var(--font-mono);letter-spacing:.1em;color:var(--ink-faint);margin:0;font-size:.8rem}.op-actions{flex:none;align-items:center;gap:.6rem;display:flex}.op-btn-sm{letter-spacing:.11em;padding:.55rem 1rem;font-size:.7rem}.op-stats{border:1px solid var(--line);border-radius:var(--radius);background:var(--line);grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:1px;display:grid;overflow:hidden}.op-stat{background:var(--bg);flex-direction:column;gap:.4rem;padding:1.1rem 1.3rem;display:flex}.op-stat-label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);font-size:.68rem}.op-stat-value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:1.6rem;font-weight:500}.op [data-status]{--status:var(--st-todo)}.op [data-status=InProgress]{--status:var(--st-progress)}.op [data-status=Paused]{--status:var(--st-paused)}.op [data-status=InReview]{--status:var(--st-review)}.op [data-status=Completed]{--status:var(--st-done)}.op-group{--status:var(--st-todo)}.op-group+.op-group{margin-top:1.6rem}.op-group-head{border-bottom:1px solid var(--line);align-items:baseline;gap:.8rem;margin-bottom:.9rem;padding-bottom:.6rem;display:flex}.op-group[data-status] .op-group-head{border-bottom-color:color-mix(in srgb, var(--status) 45%, transparent)}.op-group[data-status] .op-group-head h2{color:var(--status)}.op-group-head h2,.op-col-head h2{align-items:center;gap:.45rem;display:flex}.op-group-head h2 svg,.op-col-head h2 svg{flex:none;width:14px;height:14px}.op-group-head h2{font-size:.78rem;font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-dim);margin:0;font-weight:500}.op-count{font-family:var(--font-mono);color:var(--ink-faint);font-size:.78rem}summary.op-group-head{cursor:pointer;user-select:none;list-style:none}summary.op-group-head::-webkit-details-marker{display:none}summary.op-group-head>.op-btn-icon{color:var(--ink-faint);align-self:center;margin-left:auto;transition:transform .15s,color .15s}summary.op-group-head:hover>.op-btn-icon{color:var(--status)}details.op-group[open]>summary.op-group-head>.op-btn-icon{transform:rotate(180deg)}summary.op-group-head:focus-visible{outline:2px solid var(--accent);outline-offset:3px}details.op-group:not([open])>summary.op-group-head{margin-bottom:0}details.op-group+details.op-group{margin-top:1rem}.op-group-head .mf-btn{margin-left:auto}.op-group-note{color:var(--ink-faint);margin:0;font-size:.9rem}.op-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.op-task{--status:var(--st-todo);border-bottom:1px solid var(--line);border-radius:2px;align-items:center;gap:.7rem;padding:.5rem;transition:background .15s;display:flex}.op-task:hover{background:color-mix(in srgb, var(--ink) 4%, transparent)}.op-task[data-context=project] .op-task-lines{align-items:baseline;gap:.6rem;display:flex}.op-task[data-context=project] .op-task-where{margin-top:0}.op-task:last-child{border-bottom:none}.op-status{color:var(--status);flex:none;place-items:center;display:grid}.op-status svg{width:15px;height:15px}.op-task[data-status=Client] .op-status{color:var(--ink-faint);opacity:.7}.op-task[data-status=Completed] .op-task-name{color:var(--ink-faint)}.op-task[data-running=true]{box-shadow:inset 2px 0 0 var(--status)}.op-task[data-running=true] .op-status{animation:2s ease-in-out infinite op-pulse}.op-task-lines{flex:1;min-width:0}.op-task-lines>*{min-width:0}.op-task-name,.op-task-where{text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.op-task-name{font-size:.98rem}.op-task-where{color:var(--ink-faint);margin-top:.2rem;font-size:.82rem}.op-task-hours{font-family:var(--font-mono);letter-spacing:.06em;color:var(--ink-faint);font-variant-numeric:tabular-nums;flex:none;margin:0;font-size:.76rem}.op-tag{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);font-size:.68rem}.op-act{width:1.9rem;height:1.9rem;color:color-mix(in srgb, var(--status,var(--ink-faint)) 80%, transparent);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;flex:none;justify-content:center;align-items:center;gap:.45rem;padding:0;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.op-act:hover:not(:disabled){background:color-mix(in srgb, var(--status,var(--ink)) 16%, transparent);border-color:color-mix(in srgb, var(--status,var(--ink)) 45%, transparent);color:var(--status,var(--ink))}.op-act[data-act=start]{background:color-mix(in srgb, var(--status) 15%, transparent);border-color:color-mix(in srgb, var(--status) 40%, transparent);color:var(--status)}.op-act[data-act=start]:hover:not(:disabled){background:var(--status);border-color:var(--status);color:var(--accent-ink)}.op-act:disabled{opacity:.4;cursor:not-allowed}.op-act-quiet{color:var(--ink-faint)}.op-act-quiet:hover:not(:disabled){background:color-mix(in srgb, var(--ink) 10%, transparent);border-color:var(--line-strong);color:var(--ink)}.op-act:has(span){border-color:var(--line);width:auto;height:auto;font-family:var(--font-mono);letter-spacing:.11em;text-transform:uppercase;padding:.5rem .9rem;font-size:.68rem}.op-grip{width:1rem;color:color-mix(in srgb, var(--ink-faint) 45%, transparent);cursor:grab;touch-action:none;flex:none;place-items:center;margin-left:-.25rem;transition:color .15s;display:grid}.op-task:hover .op-grip{color:var(--ink-faint)}.op-grip:active{cursor:grabbing}.op-task[data-dragging=true]{background:color-mix(in srgb, var(--accent) 12%, transparent);outline:1px dashed color-mix(in srgb, var(--accent) 60%, transparent);outline-offset:-1px}.op-list[data-reordering] .op-task:hover{background:0 0}.op-list[data-reordering]{cursor:grabbing;user-select:none}.op-toolbar{flex-wrap:wrap;justify-content:flex-end;gap:.8rem;display:flex}.op-btn-icon{flex:none;width:1rem;height:1rem}.mf-btn:has(.op-btn-icon){gap:.5rem}.op-form{flex-direction:column;gap:1.6rem;max-width:40rem;display:flex}.op-form-row{grid-template-columns:1fr 1fr;gap:1.6rem;display:grid}.op-form .mf-input-label{background:var(--bg)}.op-combo{position:relative}.op-combo-list{z-index:20;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);max-height:17rem;margin:0;padding:.3rem;list-style:none;position:absolute;top:calc(100% + .3rem);left:0;right:0;overflow-y:auto;box-shadow:0 14px 34px #0000004d}.op-combo-list li{cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border-radius:2px;padding:.55rem .7rem;font-size:.92rem;overflow:hidden}.op-combo-list li:hover,.op-combo-list li[data-active=true]{background:var(--surface-lift);color:var(--highlight)}.op-combo-list li.op-combo-create{border-top:1px solid var(--line);color:var(--ink-faint);align-items:center;gap:.5rem;margin-top:.2rem;display:flex}.op-combo input:disabled{cursor:not-allowed;opacity:.55}.op-name{position:relative}.op-name input{padding-right:3rem}.op-suggest{border-radius:var(--radius);width:2rem;height:2rem;color:var(--ink-faint);cursor:pointer;background:0 0;border:none;place-items:center;padding:0;transition:color .15s,background .15s;display:grid;position:absolute;top:50%;right:.55rem;transform:translateY(-50%)}.op-suggest:hover:not(:disabled){background:var(--surface-lift);color:var(--highlight)}.op-suggest:disabled{cursor:progress}.op-suggest[data-busy=true] svg{color:var(--highlight);animation:1.2s ease-in-out infinite op-pulse}.op-suggestion{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);gap:.7rem;margin-top:-.6rem;padding:.8rem 1rem;display:flex}.op-suggestion[hidden]{display:none}.op-suggestion>svg{color:var(--highlight);flex:none;margin-top:.15rem}.op-suggestion-body{flex-direction:column;gap:.35rem;min-width:0;display:flex}.op-suggestion-text{color:var(--ink);margin:0;font-size:.88rem}.op-suggestion-proposal{border-top:1px solid var(--line);flex-direction:column;gap:.5rem;margin-top:.3rem;padding-top:.6rem;display:flex}.op-suggestion-actions{flex-wrap:wrap;gap:.6rem;display:flex}.op-check{cursor:pointer;align-items:flex-start;gap:.7rem;display:flex}.op-check input{width:1.05rem;height:1.05rem;accent-color:var(--accent);cursor:pointer;flex:none;margin:.15rem 0 0}.op-check input:disabled,.op-check input:disabled+span{cursor:not-allowed;opacity:.6}.op-check span{flex-direction:column;gap:.15rem;display:flex}.op-check strong{font-size:.92rem;font-weight:500}.op-check small{color:var(--ink-faint);font-size:.82rem}.op-search{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);flex:1;align-items:center;gap:.6rem;min-width:12rem;max-width:22rem;padding:.5rem .9rem;transition:border-color .15s;display:flex}.op-search:focus-within{border-color:var(--highlight)}.op-search svg{width:1.05rem;height:1.05rem;color:var(--ink-faint);flex:none}.op-search input{min-width:0;color:inherit;font:inherit;background:0 0;border:none;outline:none;flex:1;font-size:.92rem}.op-search input::-webkit-search-cancel-button{appearance:none}.op-filters{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.op-tabs{border:1px solid var(--line);border-radius:var(--radius);gap:.2rem;padding:.2rem;display:flex}.op-tab{cursor:pointer;font-family:var(--font-mono);letter-spacing:.11em;text-transform:uppercase;color:var(--ink-faint);background:0 0;border:none;border-radius:2px;align-items:center;gap:.4rem;padding:.45rem .85rem;font-size:.68rem;transition:color .15s,background .15s;display:inline-flex}.op-tab svg{flex:none;width:14px;height:14px}.op-tab[data-status] svg{color:var(--status)}.op-tab[aria-selected=true] svg{color:currentColor}.op-tab[data-live=true] svg{animation:2s ease-in-out infinite op-pulse}.op-tab:hover{color:var(--ink)}.op-tab[aria-selected=true]{background:var(--accent);color:var(--accent-ink)}.op-form-error{border:1px solid var(--danger-line);border-radius:var(--radius);background:var(--danger-bg);color:var(--danger-ink);margin:0;padding:.8rem 1rem;font-size:.9rem}.op-form-actions{flex-wrap:wrap;gap:.8rem;display:flex}@media (width<=560px){.op-form-row{grid-template-columns:1fr}}.op-head{flex-direction:column;gap:.3rem;display:flex}.op-head-row{flex-flow:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.op-back{cursor:pointer;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);background:0 0;border:none;align-self:flex-start;margin-bottom:.6rem;padding:0;font-size:.72rem;transition:color .15s}.op-back:hover{color:var(--highlight)}.op-title{letter-spacing:-.02em;margin:0;font-size:clamp(1.7rem,4vw,2.4rem);line-height:1.12}.op-title .op-marks{vertical-align:middle;margin-left:.5rem}.op-subtitle{color:var(--ink-faint);margin:0;font-size:.9rem}@media (width<=640px){.op-task{flex-wrap:wrap}.op-task-hours{order:3}}.op-wide{max-width:none}.op-kanban{align-items:flex-start;gap:.9rem;padding-bottom:.6rem;display:flex;overflow-x:auto}.op-col{--status:var(--st-todo);flex-direction:column;flex:12.5rem;gap:.6rem;min-width:12.5rem;display:flex}.op-col-head{border-bottom:1px solid color-mix(in srgb, var(--status) 45%, transparent);align-items:baseline;gap:.6rem;padding-bottom:.5rem;display:flex}.op-col-head h2{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--status);margin:0;font-size:.7rem;font-weight:500}.op-col-list{border-radius:var(--radius);border:1px dashed #0000;flex-direction:column;gap:.5rem;min-height:5rem;margin:0;padding:.35rem;list-style:none;transition:background .15s,border-color .15s;display:flex}.op-col-list[data-over=yes]{border-color:var(--status);background:color-mix(in srgb, var(--status) 10%, transparent)}.op-col-list[data-over=no]{border-color:var(--line-strong);background:color-mix(in srgb, var(--ink) 4%, transparent)}.op-col-empty{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);opacity:.6;padding:.6rem .2rem;font-size:.66rem}.op-kcard{--status:var(--st-todo);background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--status);border-radius:var(--radius);padding:.65rem .75rem}.op-kcard[data-status=Client]{border-left-style:dashed;border-left-color:var(--ink-faint);background:0 0}.op-kcard[data-movable=true]{cursor:grab;touch-action:none;user-select:none}.op-kcard[data-movable=true]:active{cursor:grabbing}.op-kcard[data-dragging=true]{opacity:.3}.op-kcard[data-running=true]{border-color:color-mix(in srgb, var(--status) 60%, var(--line))}.op-kcard-ghost{z-index:60;pointer-events:none;opacity:.95;cursor:grabbing;position:fixed;transform:rotate(-1.2deg);box-shadow:0 12px 30px #00000059}.op-kcard-name{overflow-wrap:anywhere;margin:0;font-size:.88rem;line-height:1.3}.op-kcard[data-status=Completed] .op-kcard-name{color:var(--ink-faint)}.op-kcard-meta{color:var(--ink-faint);overflow-wrap:anywhere;margin:.3rem 0 0;font-size:.74rem}.op-kcard-foot{font-family:var(--font-mono);letter-spacing:.06em;color:var(--ink-faint);flex-wrap:wrap;justify-content:space-between;gap:.2rem .5rem;margin:.5rem 0 0;font-size:.68rem;display:flex}.op-flow-hint{color:var(--ink-faint);margin:1rem 0 0;font-size:.8rem}@media (prefers-reduced-motion:reduce){.op-col-list,.op-kcard-ghost{transition:none;transform:none}}.op-task-open{font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.op-task-open:hover{color:var(--highlight);text-underline-offset:.15em;text-decoration:underline}.op-task-description{max-width:62ch;color:var(--ink-dim);white-space:pre-wrap;margin:.6rem 0 0;font-size:.9rem;line-height:1.55}.op-composer,.op-inline-edit,.op-reply-form{flex-direction:column;gap:.5rem;margin:0 0 1rem;display:flex}.op-composer textarea,.op-inline-edit textarea,.op-reply-form textarea{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:100%;color:var(--ink);font:inherit;resize:vertical;padding:.7rem .85rem;font-size:.9rem}.op-composer textarea:focus,.op-inline-edit textarea:focus,.op-reply-form textarea:focus{border-color:var(--highlight);outline:none}.op-composer-foot{justify-content:flex-end;align-items:center;gap:.6rem;display:flex}.op-composer-hint{color:var(--ink-faint);margin-right:auto;font-size:.76rem}.op-thread,.op-replies{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.op-note{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:.7rem .9rem .75rem}.op-replies{border-left:2px solid var(--line);margin:.6rem 0 0 .9rem;padding-left:.9rem}.op-note-reply{background:var(--bg-deep)}.op-note-head{flex-wrap:wrap;align-items:baseline;gap:.55rem;display:flex}.op-note-author{color:var(--ink);font-size:.85rem;font-weight:600}.op-note-when{color:var(--ink-faint);font-size:.72rem}.op-note-actions{gap:.5rem;margin-left:auto;display:flex}.op-note-action{font:inherit;color:var(--ink-faint);cursor:pointer;background:0 0;border:0;padding:0;font-size:.74rem}.op-note-action:hover{color:var(--highlight)}.op-note-danger:hover{color:var(--danger-ink)}.op-note-body{color:var(--ink-dim);white-space:pre-wrap;overflow-wrap:anywhere;margin:.4rem 0 0;font-size:.9rem;line-height:1.55}.op-reply-form{margin:.6rem 0 0 1.8rem}.op-drop{border:1px dashed var(--line-strong);border-radius:var(--radius);background:var(--bg-deep);color:var(--ink-faint);cursor:pointer;text-align:center;flex-direction:column;align-items:center;gap:.2rem;margin:0 0 1rem;padding:1.5rem 1rem;transition:border-color .2s,background .2s;display:flex}.op-drop:hover,.op-drop[data-over=true]{border-color:var(--highlight);background:var(--surface)}.op-drop-lead{color:var(--ink-dim);align-items:center;gap:.5rem;margin:0;font-size:.9rem;display:flex}.op-drop-hint{margin:0;font-size:.78rem}.op-files{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.op-file{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;padding:.6rem .9rem;display:grid}.op-file:last-child{border-bottom:0}.op-file-kind{border:1px solid var(--line);border-radius:var(--radius);width:2.2rem;height:2.2rem;font-family:var(--font-mono);color:var(--ink-faint);place-items:center;font-size:.58rem;display:grid;overflow:hidden}.op-file-kind[data-image=true]{border-color:var(--st-review);color:var(--st-review)}.op-file-lines{flex-direction:column;min-width:0;display:flex}.op-file-name{color:var(--ink);overflow-wrap:anywhere;font-size:.88rem;text-decoration:none}.op-file-name:hover{color:var(--highlight);text-underline-offset:.15em;text-decoration:underline}.op-personal{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);flex-direction:column;gap:1.1rem;padding:1.3rem 1.5rem;display:flex}.op-running{flex-direction:column;display:flex}.op-personal .op-tabs{align-self:flex-start}.op-personal-body{max-width:62rem;min-height:3.5rem;max-height:19rem;overflow-y:auto}.op{--risk-critical:var(--danger-ink);--risk-critical-soft:var(--danger-bg);--risk-behind:var(--st-paused);--risk-behind-soft:color-mix(in srgb, var(--st-paused) 16%, transparent)}.op-portfolio{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden}.op-portfolio-bar{border-bottom:1px solid var(--line);background:var(--bg-deep);flex-wrap:wrap;align-items:center;gap:.75rem;padding:.7rem .8rem;display:flex}.op-portfolio-right{align-items:center;gap:.75rem;margin-left:auto;display:flex}.op-portfolio-count{font-family:var(--font-mono);color:var(--ink-faint);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.7rem}.op-portfolio-body{overflow-x:auto}.op-portfolio-empty{text-align:center;padding:3.5rem 1.25rem}.op-portfolio-empty-title{color:var(--ink);margin:0 0 .3rem;font-size:.95rem}.op-chips{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.op-chip{--tone:var(--ink-dim);border:1px solid var(--line);color:var(--ink-faint);font:inherit;cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:.4rem;padding:.32rem .7rem;font-size:.78rem;transition:background .15s,color .15s,border-color .15s;display:inline-flex}.op-chip:hover{color:var(--ink);border-color:var(--line-strong)}.op-chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.op-chip-count{font-family:var(--font-mono);opacity:.7;font-variant-numeric:tabular-nums;font-size:.68rem}.op-chip svg{flex:none;width:14px;height:14px}.op-marks{vertical-align:middle;align-items:center;gap:.3rem;display:inline-flex}.op-mark{--tone:var(--risk-critical);border-radius:var(--radius);background:color-mix(in srgb, var(--tone) 16%, transparent);width:1.3rem;height:1.3rem;color:var(--tone);place-items:center;display:inline-grid}.op-mark[data-mark=behind]{--tone:var(--risk-behind)}.op-mark svg{width:14px;height:14px}.op-state{--status:var(--st-progress);border-radius:var(--radius);background:color-mix(in srgb, var(--status) 16%, transparent);border:1px solid color-mix(in srgb, var(--status) 45%, transparent);width:100%;color:var(--status);white-space:nowrap;justify-content:center;align-items:center;gap:.4rem;padding:.32rem .6rem;font-size:.75rem;display:inline-flex}.op-state[data-state=Paused]{--status:var(--st-paused)}.op-state[data-state=Finished]{--status:var(--st-done)}.op-state svg{flex:none;width:14px;height:14px}.op-progress{align-items:center;gap:.6rem;margin:0;display:flex}.op-bar{background:var(--line);border-radius:999px;flex:1;min-width:3rem;height:4px;display:block;overflow:hidden}.op-bar-fill{background:var(--accent);border-radius:999px;height:100%;transition:width .5s;display:block}.op-progress-value{font-family:var(--font-mono);color:var(--ink-faint);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.72rem}.op-late{color:var(--danger-ink)}.op-table{border-collapse:collapse;text-align:left;width:100%;min-width:52rem}.op-table th,.op-table td{vertical-align:middle;padding:.6rem .9rem}.op-table thead th{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);background:var(--bg-deep);border-bottom:1px solid var(--line);font-size:.66rem;font-weight:500}.op-table-group th{color:var(--ink);background:var(--bg-deep);border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:.82rem;font-weight:500}.op-table-group .op-count{margin-left:.6rem}.op-table-row{cursor:pointer;transition:background .15s}.op-table-row:hover,.op-table-row:focus-visible{background:var(--surface-lift);outline:none}.op-table-row:focus-visible{box-shadow:inset 2px 0 0 var(--accent)}.op-table-row td{border-bottom:1px solid color-mix(in srgb, var(--line) 60%, transparent)}.op-table-name{color:var(--ink);flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.92rem;display:flex}.op-table-hint{max-width:28rem;color:var(--ink-faint);white-space:nowrap;text-overflow:ellipsis;padding-top:.15rem;font-size:.76rem;display:block;overflow:hidden}.op-table-dim{color:var(--ink-faint);font-size:.82rem}.op-table-num{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.82rem}.op-pboard{align-items:stretch;gap:.75rem;padding:.8rem;display:flex}.op-pcol{--status:var(--st-progress);background:var(--bg-deep);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;flex:15rem;min-width:15rem;display:flex;overflow:hidden}.op-pcol[data-state=Paused]{--status:var(--st-paused)}.op-pcol[data-state=Finished]{--status:var(--st-done)}.op-pcol-rule{background:var(--status);height:3px;display:block}.op-pcol-head{align-items:center;gap:.5rem;padding:.6rem .7rem;display:flex}.op-pcol-head h2{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--status);align-items:center;gap:.4rem;margin:0;font-size:.68rem;font-weight:500;display:flex}.op-pcol-head h2 svg{width:14px;height:14px}.op-pcol-head .op-count{margin-left:auto}.op-pcol-list{flex-direction:column;gap:.5rem;margin:0;padding:0 .5rem .6rem;list-style:none;display:flex}.op-pcard{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;flex-direction:column;gap:.35rem;padding:.7rem .75rem;transition:border-color .15s,transform .15s;display:flex}.op-pcard:hover{border-color:var(--line-strong);transform:translateY(-1px)}.op-pcard:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.op-pcard p{margin:0}.op-pcard-top{align-items:center;gap:.5rem;display:flex}.op-pcard-client{min-width:0;font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.64rem;overflow:hidden}.op-pcard-name{color:var(--ink);font-size:.9rem;line-height:1.3}.op-pcard-where,.op-pcard-foot{color:var(--ink-faint);font-size:.76rem}.op-pcard-foot{font-variant-numeric:tabular-nums}.op-stat-text{letter-spacing:0;font-size:1.05rem}.op-stat .op-bar{flex:none;width:100%;margin-top:.15rem}.op-stat-of{color:var(--ink-faint);font-size:1rem}.op-notes{border:1px solid var(--line);border-top:2px dashed color-mix(in srgb, var(--accent) 55%, var(--line));border-radius:var(--radius);background:var(--surface);overflow:hidden}.op-notes-head{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.85rem 1rem;display:flex}.op-notes-head h2{letter-spacing:-.01em;color:var(--ink);margin:0;font-size:.95rem;font-weight:500}.op-notes-sub{color:var(--ink-faint);margin:.15rem 0 0;font-size:.76rem}.op-notes-dirty{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--st-paused);font-size:.66rem}.op-notes-body{padding:.85rem 1rem 1rem}.op-notes-empty{text-align:center;color:var(--ink-faint);margin:0;padding:1.4rem .25rem;font-size:.85rem;line-height:1.6}.op-notes-actions{align-items:center;gap:1rem;padding-top:.85rem;display:flex}.op-notes-cancel{color:var(--ink-faint);font:inherit;cursor:pointer;background:0 0;border:0;font-size:.78rem;text-decoration:underline}.op-notes-cancel:hover{color:var(--ink)}.op-assign{margin-top:1rem}.op-assign-list{border:1px solid var(--line);border-radius:var(--radius);max-height:14rem;margin:0 0 .6rem;padding:0;list-style:none;overflow-y:auto}.op-assign-list label{color:var(--ink);cursor:pointer;align-items:baseline;gap:.55rem;padding:.4rem .6rem;font-size:.84rem;display:flex}.op-assign-list li+li label{border-top:1px solid var(--line)}.op-assign-list small{color:var(--ink-faint);margin-left:auto;font-size:.72rem}.op-log{gap:1.1rem;margin:0;padding:0;list-style:none;display:grid}.op-log-day+.op-log-day{border-top:1px solid var(--line);padding-top:1.1rem}.op-log-head{flex-wrap:wrap;align-items:baseline;gap:.35rem .75rem;margin-bottom:.5rem;display:flex}.op-log-date{color:var(--ink);margin:0;font-size:.82rem;font-weight:600}.op-log-date:first-letter{text-transform:uppercase}.op-log-who{color:var(--ink-faint);font-size:.74rem}.op-log-edit{margin-left:auto}.op-md-files{border-bottom:1px solid var(--line);background:var(--surface);padding:.5rem .6rem}.op-md-files-search{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-deep);width:100%;color:var(--ink);font:inherit;margin-bottom:.4rem;padding:.35rem .55rem;font-size:.8rem}.op-md-files-list{max-height:11rem;margin:0;padding:0;list-style:none;overflow-y:auto}.op-md-files-list button{border-radius:var(--radius);width:100%;color:var(--ink-dim);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;gap:.75rem;padding:.35rem .45rem;font-size:.8rem;display:flex}.op-md-files-list button:hover{background:var(--surface-lift);color:var(--ink)}.op-md-files-list small{color:var(--ink-faint);flex-shrink:0}.op-md-files-empty{color:var(--ink-faint);margin:0;font-size:.8rem}.op-md{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-deep);overflow:hidden}.op-md-bar{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:.15rem;padding:.35rem .4rem;display:flex}.op-md-gap{flex:1}.op-md-tool{border-radius:var(--radius);min-width:1.7rem;height:1.7rem;color:var(--ink-dim);font:inherit;cursor:pointer;background:0 0;border:0;place-items:center;padding:0 .35rem;font-size:.78rem;transition:background .15s,color .15s;display:grid}.op-md-tool:hover{background:var(--surface-lift);color:var(--ink)}.op-md-tabs{border-radius:var(--radius);background:var(--surface);gap:.15rem;padding:.12rem;display:flex}.op-md-tab{border-radius:var(--radius);color:var(--ink-faint);font:inherit;cursor:pointer;background:0 0;border:0;padding:.2rem .6rem;font-size:.74rem}.op-md-tab[aria-pressed=true]{background:var(--bg-deep);color:var(--ink)}.op-md-area{width:100%;min-height:13rem;color:var(--ink);font-family:var(--font-mono);resize:vertical;background:0 0;border:0;padding:.7rem .85rem;font-size:.82rem;line-height:1.65;display:block}.op-md-area:focus{outline:none}.op-md-area::placeholder{color:var(--ink-faint);opacity:.7}.op-md-preview{min-height:13rem;padding:.7rem .85rem}.op-md-error{background:var(--danger-bg);color:var(--danger-ink);margin:0;padding:.4rem .85rem;font-size:.78rem}.md{color:var(--ink-dim);font-size:.88rem;line-height:1.65}.md>:first-child{margin-top:0}.md>:last-child{margin-bottom:0}.md h3,.md h4,.md h5,.md h6{letter-spacing:-.01em;color:var(--ink);margin:1.1rem 0 .4rem;font-weight:500}.md h3{font-size:1rem}.md h4{font-size:.9rem}.md h5,.md h6{color:var(--ink-dim);font-size:.82rem}.md p{margin:.5rem 0}.md-list{margin:.5rem 0;padding-left:1.2rem}.md-list li{margin:.15rem 0}.md-task{align-items:flex-start;gap:.45rem;margin-left:-1.2rem;list-style:none;display:flex}.md-task input{accent-color:var(--accent);margin-top:.28rem}.md-task-done{color:var(--ink-faint);text-decoration:line-through}.md-link{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.md-code{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-deep);font-family:var(--font-mono);padding:.05rem .3rem;font-size:.8em}.md-pre{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-deep);margin:.6rem 0;padding:.7rem .85rem;overflow-x:auto}.md-pre code{font-family:var(--font-mono);background:0 0;border:0;padding:0;font-size:.8rem}.md-quote{border-left:3px solid var(--line-strong);color:var(--ink-faint);margin:.6rem 0;padding:.1rem 0 .1rem .8rem}.md-hr{border:0;border-top:1px solid var(--line);margin:1rem 0}.md-img{border:1px solid var(--line);border-radius:var(--radius);max-width:100%;height:auto;margin:.6rem 0;display:block}@media (prefers-reduced-motion:reduce){.op-bar-fill,.op-pcard,.op-chip,.op-table-row{transition:none}}.op-project{gap:1.5rem}.op-head-lines{flex-direction:column;gap:.3rem;min-width:0;display:flex}.op-project .op-head-row>.op-actions{flex-wrap:wrap;margin-top:.4rem}.op-project-body{grid-template-columns:minmax(0,1fr) clamp(19rem,24vw,24rem);align-items:start;gap:1.5rem;display:grid}.op-project-main,.op-project-side{flex-direction:column;gap:1.2rem;min-width:0;display:flex}@media (width<=1080px){.op-project-body{grid-template-columns:minmax(0,1fr)}}.op-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden}.op-panel-head{border-bottom:1px solid var(--line);align-items:center;gap:.6rem;padding:.85rem 1rem;display:flex}.op-panel-head h2{letter-spacing:-.01em;align-items:center;gap:.45rem;margin:0;font-size:.95rem;font-weight:500;display:flex}.op-panel-head h2 svg{width:15px;height:15px;color:var(--ink-faint);flex:none}.op-panel-head .op-count{margin-left:auto}.op-panel-body{flex-direction:column;gap:.8rem;padding:.85rem 1rem 1rem;display:flex}.op-panel-body .op-drop{margin:0;padding:1rem}.op-panel-error{border:1px solid var(--danger-line);border-radius:var(--radius);background:var(--danger-bg);color:var(--danger-ink);margin:0;padding:.6rem .75rem;font-size:.82rem}.op-gallery{grid-template-columns:repeat(auto-fill,minmax(6rem,1fr));gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.op-thumb{flex-direction:column;gap:.3rem;min-width:0;display:flex;position:relative}.op-thumb>a{aspect-ratio:1;border:1px solid var(--line);background:var(--bg-deep);border-radius:4px;transition:border-color .15s;display:block;overflow:hidden}.op-thumb>a:hover{border-color:var(--highlight)}.op-thumb img{object-fit:cover;width:100%;height:100%;display:block}.op-thumb-name{color:var(--ink-faint);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.op-thumb-drop{border:1px solid var(--line-strong);background:var(--bg);width:1.4rem;height:1.4rem;color:var(--ink-faint);cursor:pointer;opacity:0;border-radius:999px;place-items:center;padding:0;transition:opacity .15s,color .15s,border-color .15s;display:grid;position:absolute;top:.3rem;right:.3rem}.op-thumb:hover .op-thumb-drop,.op-thumb-drop:focus-visible{opacity:1}.op-thumb-drop:hover{border-color:var(--danger-line);color:var(--danger-ink)}body[data-modal]{overflow:hidden}.op-modal{z-index:60;justify-content:center;align-items:center;padding:clamp(.75rem,4vh,2.5rem);display:flex;position:fixed;inset:0}.op-modal-veil{background:color-mix(in srgb, var(--bg-deep) 78%, transparent);backdrop-filter:blur(3px);position:absolute;inset:0}.op-modal-card{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg);flex-direction:column;width:min(54rem,100%);max-height:100%;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 60px #00000073}.op-modal-card:focus-visible{outline:none}.op-modal-head{grid-template-columns:minmax(0,1fr) auto;gap:.6rem 1rem;padding:1.1rem 1.2rem 0;display:grid}.op-modal-lines{min-width:0}.op-modal-name{letter-spacing:-.01em;align-items:center;gap:.5rem;margin:0;font-size:1.25rem;font-weight:500;display:flex}.op-modal-where{color:var(--ink-faint);margin:.3rem 0 0;font-size:.82rem}.op-modal-close{width:2rem;height:2rem;color:var(--ink-faint);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;place-items:center;padding:0;transition:color .15s,border-color .15s;display:grid}.op-modal-close:hover{border-color:var(--line-strong);color:var(--ink)}.op-modal-tabs{grid-column:1/-1;justify-self:start}.op-modal-body{flex-direction:column;flex:1;gap:1.1rem;padding:1.1rem 1.2rem;display:flex;overflow-y:auto}.op-modal .op-notice,.op-modal-error{margin:.9rem 1.2rem -.2rem}.op-modal-error{border:1px solid var(--danger-line);border-radius:var(--radius);background:var(--danger-bg);color:var(--danger-ink);padding:.7rem .9rem;font-size:.88rem}.op-modal-description{color:var(--ink-dim);white-space:pre-wrap;margin:0;font-size:.95rem;line-height:1.6}.op-modal-foot{border-top:1px solid var(--line);background:var(--surface);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.2rem;display:flex}.op-modal-body>.op-composer,.op-modal-body>.op-drop{margin:0}.op-times{flex-direction:column;gap:.9rem;display:flex}.op-times .op-panel-head{padding:0 0 .6rem}.op-times .op-panel-head .op-clock{margin-left:auto}.op-clock-sm{font-size:1.15rem}.op-facts{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.9rem;margin:0;display:grid}.op-facts dt{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);font-size:.64rem}.op-facts dd{margin:.25rem 0 0;font-size:.88rem}@media (width<=640px){.op-modal{padding:0}.op-modal-card{border:none;border-radius:0;height:100%;max-height:100%}}.op-tip{z-index:90;background:var(--ink);color:var(--bg);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;pointer-events:none;opacity:0;border-radius:3px;padding:.3rem .5rem;font-size:.62rem;transition:opacity .12s;position:fixed;box-shadow:0 6px 18px #00000059}.op-tip[data-shown]{opacity:1}.op-ai{z-index:55;border-left:1px solid var(--line-strong);background:var(--bg);overscroll-behavior:contain;flex-direction:column;width:min(30rem,100vw);transition:transform .24s;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-18px 0 46px #00000047}.op-ai[data-open=false]{box-shadow:none;transform:translate(101%)}.op-ai-head{border-bottom:1px solid var(--line);background:var(--surface-lift);align-items:center;gap:.65rem;padding:.6rem .85rem .6rem .75rem;display:flex}.op-ai-avatar{filter:drop-shadow(0 3px 5px #0000002e);flex:none;width:44px;height:60px;margin:-4px 0}.op-ai-title{flex:1;min-width:0}.op-ai-title h2{color:var(--highlight);align-items:center;gap:.35rem;margin:0;font-size:1.1rem;font-weight:700;display:flex}.op-ai-title p{color:var(--ink-faint);text-overflow:ellipsis;white-space:nowrap;margin:.1rem 0 0;font-size:.76rem;overflow:hidden}.op-ai-status{color:var(--st-done);align-items:center;gap:.3rem;font-weight:500;display:inline-flex}.op-ai-status:before{content:"";background:currentColor;border-radius:50%;width:.45rem;height:.45rem}.op-ai-status[data-on=false]{color:var(--ink-faint)}.op-ai-head-actions{flex:none;align-items:center;gap:.3rem;display:flex}.op-ai-warn{border:1px solid var(--line-strong);border-left-width:3px;border-left-color:var(--st-paused);border-radius:var(--radius);background:var(--surface);color:var(--ink-dim);margin:.75rem 1rem 0;padding:.6rem .75rem;font-size:.82rem}.op-ai-warn[data-tone=error]{border-color:var(--danger-line);border-left-color:var(--danger-line);background:var(--danger-bg);color:var(--danger-ink)}.op-ai{--op-ai-pattern:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22270%22 height=%22270%22 viewBox=%220 0 270 270%22 fill=%22none%22 stroke=%22%231e2225%22 stroke-opacity=%220.11%22 stroke-width=%221.3%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cg transform=%22translate(18 20) rotate(-12 12 12) scale(1.5)%22%3E%3Cpath d=%22M12 2.5c-3 0-5 2.2-5 5 0 1.6.7 2.6 1.4 3.4.5.6.5 1.2 0 1.8C7.7 13.5 7 14.5 7 16.1c0 2.8 2.2 5.4 5 5.4s5-2.6 5-5.4c0-1.6-.7-2.6-1.4-3.4-.5-.6-.5-1.2 0-1.8.7-.8 1.4-1.8 1.4-3.4 0-2.8-2-5-5-5Z%22/%3E%3Cpath d=%22M10 6.5h.01M13.5 8h.01M11 16h.01M13.8 17.5h.01M10.5 19h.01%22/%3E%3C/g%3E%3Cg transform=%22translate(100 14) rotate(6 12 12) scale(1.3)%22%3E%3Cpath d=%22M4 19a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h5l2 3h7a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2Z%22/%3E%3C/g%3E%3Cg transform=%22translate(182 28) rotate(0 12 12) scale(1.2)%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%229%22/%3E%3Cpath d=%22m8 12.3 2.7 2.7L16 9.7%22/%3E%3C/g%3E%3Cg transform=%22translate(58 84) rotate(10 12 12) scale(1.1)%22%3E%3Cpath d=%22M12 3.5 13.6 9 19 10.6 13.6 12.2 12 17.6 10.4 12.2 5 10.6 10.4 9Z%22/%3E%3C/g%3E%3Cg transform=%22translate(140 80) rotate(-6 12 12) scale(1.35)%22%3E%3Cpath d=%22M20.5 12c0 3.9-3.8 7-8.5 7a9.8 9.8 0 0 1-2.6-.35L4 20l1.4-3.4A6.6 6.6 0 0 1 3.5 12c0-3.9 3.8-7 8.5-7s8.5 3.1 8.5 7Z%22/%3E%3C/g%3E%3Cg transform=%22translate(214 96) rotate(0 12 12) scale(1.15)%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%228.5%22/%3E%3Cpath d=%22M12 7.2V12l3.2 2%22/%3E%3C/g%3E%3Cg transform=%22translate(14 150) rotate(4 12 12) scale(1.3)%22%3E%3Crect x=%223.5%22 y=%225%22 width=%2217%22 height=%2215%22 rx=%222%22/%3E%3Cpath d=%22M3.5 10h17M8 3v4M16 3v4%22/%3E%3C/g%3E%3Cg transform=%22translate(96 150) rotate(-10 12 12) scale(1.25)%22%3E%3Cpath d=%22M4 20l1-4L16.5 4.5a2.1 2.1 0 0 1 3 3L8 19Z%22/%3E%3Cpath d=%22m14.5 6.5 3 3%22/%3E%3C/g%3E%3Cg transform=%22translate(172 160) rotate(18 12 12) scale(1.4)%22%3E%3Cpath d=%22M12 2.5c-3 0-5 2.2-5 5 0 1.6.7 2.6 1.4 3.4.5.6.5 1.2 0 1.8C7.7 13.5 7 14.5 7 16.1c0 2.8 2.2 5.4 5 5.4s5-2.6 5-5.4c0-1.6-.7-2.6-1.4-3.4-.5-.6-.5-1.2 0-1.8.7-.8 1.4-1.8 1.4-3.4 0-2.8-2-5-5-5Z%22/%3E%3Cpath d=%22M10 6.5h.01M13.5 8h.01M11 16h.01M13.8 17.5h.01M10.5 19h.01%22/%3E%3C/g%3E%3Cg transform=%22translate(236 178) rotate(0 12 12) scale(1.15)%22%3E%3Cpath d=%22M9 18h6M10 21h4%22/%3E%3Cpath d=%22M12 3a6 6 0 0 0-3.5 10.9c.6.5 1 1.2 1 2V16h5v-.1c0-.8.4-1.5 1-2A6 6 0 0 0 12 3Z%22/%3E%3C/g%3E%3Cg transform=%22translate(50 214) rotate(0 12 12) scale(1.25)%22%3E%3Cpath d=%22M4 20V4M4 20h16%22/%3E%3Cpath d=%22M8 16v-4M12 16V8M16 16v-6%22/%3E%3C/g%3E%3Cg transform=%22translate(132 222) rotate(8 12 12) scale(1.25)%22%3E%3Cpath d=%22M6 3h8l4 4v14H6Z%22/%3E%3Cpath d=%22M14 3v4h4M9 12h6M9 16h6%22/%3E%3C/g%3E%3Cg transform=%22translate(206 236) rotate(-4 12 12) scale(1.3)%22%3E%3Cpath d=%22M5 8h11v6a5 5 0 0 1-5 5h-1a5 5 0 0 1-5-5Z%22/%3E%3Cpath d=%22M16 10h1.5a2.5 2.5 0 0 1 0 5H16M8 3.5c0 1 1 1 1 2M12 3.5c0 1 1 1 1 2%22/%3E%3C/g%3E%3C/svg%3E")}:root[data-theme=dark] .op-ai{--op-ai-pattern:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22270%22 height=%22270%22 viewBox=%220 0 270 270%22 fill=%22none%22 stroke=%22%23f2f5f8%22 stroke-opacity=%220.07%22 stroke-width=%221.3%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cg transform=%22translate(18 20) rotate(-12 12 12) scale(1.5)%22%3E%3Cpath d=%22M12 2.5c-3 0-5 2.2-5 5 0 1.6.7 2.6 1.4 3.4.5.6.5 1.2 0 1.8C7.7 13.5 7 14.5 7 16.1c0 2.8 2.2 5.4 5 5.4s5-2.6 5-5.4c0-1.6-.7-2.6-1.4-3.4-.5-.6-.5-1.2 0-1.8.7-.8 1.4-1.8 1.4-3.4 0-2.8-2-5-5-5Z%22/%3E%3Cpath d=%22M10 6.5h.01M13.5 8h.01M11 16h.01M13.8 17.5h.01M10.5 19h.01%22/%3E%3C/g%3E%3Cg transform=%22translate(100 14) rotate(6 12 12) scale(1.3)%22%3E%3Cpath d=%22M4 19a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h5l2 3h7a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2Z%22/%3E%3C/g%3E%3Cg transform=%22translate(182 28) rotate(0 12 12) scale(1.2)%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%229%22/%3E%3Cpath d=%22m8 12.3 2.7 2.7L16 9.7%22/%3E%3C/g%3E%3Cg transform=%22translate(58 84) rotate(10 12 12) scale(1.1)%22%3E%3Cpath d=%22M12 3.5 13.6 9 19 10.6 13.6 12.2 12 17.6 10.4 12.2 5 10.6 10.4 9Z%22/%3E%3C/g%3E%3Cg transform=%22translate(140 80) rotate(-6 12 12) scale(1.35)%22%3E%3Cpath d=%22M20.5 12c0 3.9-3.8 7-8.5 7a9.8 9.8 0 0 1-2.6-.35L4 20l1.4-3.4A6.6 6.6 0 0 1 3.5 12c0-3.9 3.8-7 8.5-7s8.5 3.1 8.5 7Z%22/%3E%3C/g%3E%3Cg transform=%22translate(214 96) rotate(0 12 12) scale(1.15)%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%228.5%22/%3E%3Cpath d=%22M12 7.2V12l3.2 2%22/%3E%3C/g%3E%3Cg transform=%22translate(14 150) rotate(4 12 12) scale(1.3)%22%3E%3Crect x=%223.5%22 y=%225%22 width=%2217%22 height=%2215%22 rx=%222%22/%3E%3Cpath d=%22M3.5 10h17M8 3v4M16 3v4%22/%3E%3C/g%3E%3Cg transform=%22translate(96 150) rotate(-10 12 12) scale(1.25)%22%3E%3Cpath d=%22M4 20l1-4L16.5 4.5a2.1 2.1 0 0 1 3 3L8 19Z%22/%3E%3Cpath d=%22m14.5 6.5 3 3%22/%3E%3C/g%3E%3Cg transform=%22translate(172 160) rotate(18 12 12) scale(1.4)%22%3E%3Cpath d=%22M12 2.5c-3 0-5 2.2-5 5 0 1.6.7 2.6 1.4 3.4.5.6.5 1.2 0 1.8C7.7 13.5 7 14.5 7 16.1c0 2.8 2.2 5.4 5 5.4s5-2.6 5-5.4c0-1.6-.7-2.6-1.4-3.4-.5-.6-.5-1.2 0-1.8.7-.8 1.4-1.8 1.4-3.4 0-2.8-2-5-5-5Z%22/%3E%3Cpath d=%22M10 6.5h.01M13.5 8h.01M11 16h.01M13.8 17.5h.01M10.5 19h.01%22/%3E%3C/g%3E%3Cg transform=%22translate(236 178) rotate(0 12 12) scale(1.15)%22%3E%3Cpath d=%22M9 18h6M10 21h4%22/%3E%3Cpath d=%22M12 3a6 6 0 0 0-3.5 10.9c.6.5 1 1.2 1 2V16h5v-.1c0-.8.4-1.5 1-2A6 6 0 0 0 12 3Z%22/%3E%3C/g%3E%3Cg transform=%22translate(50 214) rotate(0 12 12) scale(1.25)%22%3E%3Cpath d=%22M4 20V4M4 20h16%22/%3E%3Cpath d=%22M8 16v-4M12 16V8M16 16v-6%22/%3E%3C/g%3E%3Cg transform=%22translate(132 222) rotate(8 12 12) scale(1.25)%22%3E%3Cpath d=%22M6 3h8l4 4v14H6Z%22/%3E%3Cpath d=%22M14 3v4h4M9 12h6M9 16h6%22/%3E%3C/g%3E%3Cg transform=%22translate(206 236) rotate(-4 12 12) scale(1.3)%22%3E%3Cpath d=%22M5 8h11v6a5 5 0 0 1-5 5h-1a5 5 0 0 1-5-5Z%22/%3E%3Cpath d=%22M16 10h1.5a2.5 2.5 0 0 1 0 5H16M8 3.5c0 1 1 1 1 2M12 3.5c0 1 1 1 1 2%22/%3E%3C/g%3E%3C/svg%3E")}.op-ai-thread{overscroll-behavior:contain;background-color:var(--bg-deep);background-image:var(--op-ai-pattern);background-size:270px 270px;flex:1;padding:1rem .9rem;overflow-y:auto}.op-ai-list{flex-direction:column;gap:.9rem;margin:0;padding:0;list-style:none;display:flex}.op-ai-turn{flex-direction:column;align-items:flex-start;gap:.4rem;min-width:0;display:flex}.op-ai-turn>*{max-width:92%}.op-ai-turn[data-who=user]{align-items:flex-end}.op-ai-turn[data-who=user]>*{max-width:85%}.op-ai-turn[data-who=user] .op-ai-said{background:var(--accent);color:var(--accent-ink);white-space:pre-wrap;border-radius:14px 4px 14px 14px;padding:.55rem .8rem}.op-ai-turn[data-who=assistant] .op-ai-said,.op-ai-bubble{background:var(--surface-lift);color:var(--ink);border-radius:4px 14px 14px;padding:.6rem .85rem;box-shadow:0 1px 2px #0000001a}.op-ai-who{color:var(--ink-faint);margin:0;font-size:.66rem}.op-ai-said{color:var(--ink-dim);overflow-wrap:anywhere;font-size:.9rem;line-height:1.6}.op-ai-said.md>:first-child{margin-top:0}.op-ai-said.md>:last-child{margin-bottom:0}.op-ai-thinking{color:var(--ink-faint);margin:0;font-size:.85rem;animation:1.6s ease-in-out infinite op-pulse}.op-ai-reasoning{border-left:2px solid var(--line-strong);padding-left:.7rem}.op-ai-reasoning summary{cursor:pointer;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);font-size:.64rem}.op-ai-reasoning summary:hover{color:var(--ink)}.op-ai-reasoning div{color:var(--ink-faint);white-space:pre-wrap;max-height:14rem;margin-top:.4rem;font-size:.78rem;line-height:1.55;overflow-y:auto}.op-ai-actions{flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none;display:flex}.op-ai-actions li{--tone:var(--st-done);border:1px solid color-mix(in srgb, var(--tone) 35%, transparent);border-radius:var(--radius);background:color-mix(in srgb, var(--tone) 10%, transparent);color:var(--ink-dim);align-items:flex-start;gap:.45rem;padding:.4rem .6rem;font-size:.8rem;display:flex}.op-ai-actions li[data-ok=false]{--tone:var(--danger-ink)}.op-ai-actions svg{color:var(--tone);flex:none;margin-top:.15rem}.op-ai-actions em{color:var(--ink-faint);font-style:normal}.op-ai-download{border:1px solid var(--line-strong);border-radius:var(--radius);color:var(--ink);flex:none;align-items:center;gap:.3rem;margin-left:auto;padding:.1rem .5rem;font-size:.75rem;text-decoration:none;display:inline-flex}.op-ai-download:hover{border-color:var(--accent)}.op-ai-actions .op-ai-download svg{color:inherit;margin-top:0;transform:rotate(180deg)}.op-ai-title p strong{color:var(--ink-dim);font-weight:500}.op-ai-attached{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.op-ai-attached img{object-fit:cover;border:1px solid var(--line);border-radius:4px;width:5rem;height:5rem;display:block}.op-ai-attached-file{border:1px solid var(--line);color:var(--ink-faint);border-radius:999px;align-items:center;gap:.35rem;padding:.3rem .55rem;font-size:.74rem;display:inline-flex}.op-ai-attached-file a{color:inherit}.op-ai-current{background:var(--surface-lift);width:fit-content;max-width:85%;color:var(--ink-faint);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;margin:0 auto .9rem;padding:.2rem .75rem;font-size:.72rem;overflow:hidden;box-shadow:0 1px 2px #00000014}.op-ai-history{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.op-ai-history li{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);align-items:center;gap:.35rem;transition:border-color .15s;display:flex}.op-ai-history li:hover,.op-ai-history li[data-current=true]{border-color:var(--highlight)}.op-ai-history li>.op-act{margin-right:.35rem}.op-ai-history-open{min-width:0;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;gap:.15rem;padding:.55rem .7rem;display:flex}.op-ai-history-title{text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;overflow:hidden}.op-ai-history-when{color:var(--ink-faint);font-size:.74rem}.op-ai-empty{flex-direction:column;align-items:flex-start;gap:.75rem;display:flex}.op-ai-bubble{max-width:92%;font-size:.9rem;line-height:1.55}.op-ai-empty-lead{color:var(--ink-faint);margin:0;font-size:.88rem;line-height:1.6}.op-ai-suggestions{flex-direction:column;align-items:flex-start;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.op-ai-suggestions button{border:1px solid var(--line);background:var(--surface-lift);color:var(--ink-dim);font:inherit;text-align:left;cursor:pointer;border-radius:999px;padding:.45rem .8rem;font-size:.82rem;transition:border-color .15s,color .15s}.op-ai-suggestions button:hover{border-color:var(--highlight);color:var(--ink)}.op-ai-composer{border-top:1px solid var(--line);background:var(--surface-lift);flex-direction:column;gap:.5rem;padding:.7rem .85rem .85rem;display:flex}.op-ai-composer-row{align-items:flex-end;gap:.45rem;display:flex}.op-ai-composer textarea{border:1px solid var(--line-strong);background:var(--surface-lift);min-width:0;color:var(--ink);font:inherit;resize:none;border-radius:10px;flex:1;min-height:2.6rem;max-height:10rem;padding:.6rem .85rem;font-size:.9rem;line-height:1.4}.op-ai-send{background:var(--accent);width:2.6rem;height:2.6rem;color:var(--accent-ink);cursor:pointer;border:0;border-radius:10px;flex:none;place-items:center;padding:0;transition:background .15s,color .15s;display:grid}.op-ai-send:hover{background:var(--accent-hover);color:var(--accent-hover-ink)}.op-ai-composer textarea:focus{border-color:var(--highlight);outline:none}.op-ai-composer textarea:disabled{opacity:.6}.op-ai-files{flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none;display:flex}.op-ai-files li{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);align-items:center;gap:.5rem;padding:.35rem .5rem;font-size:.78rem;display:flex}.op-ai-file-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.op-ai-file-size{font-family:var(--font-mono);color:var(--ink-faint);flex:none;font-size:.66rem}.op-ai-file-drop{width:1.2rem;height:1.2rem;color:var(--ink-faint);cursor:pointer;background:0 0;border:none;border-radius:3px;flex:none;place-items:center;padding:0;display:grid}.op-ai-file-drop:hover{color:var(--danger-ink)}@media (width<=720px){.op-ai{width:100vw}}.mf-topbar-link[data-astro-cid-jvws6cnk]{border:1px solid var(--line);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);border-radius:2px;align-items:center;gap:.45rem;padding:.35rem .6rem;font-size:.68rem;text-decoration:none;transition:color .15s,border-color .15s;display:inline-flex}.mf-topbar-link[data-astro-cid-jvws6cnk][hidden]{display:none}.mf-topbar-link[data-astro-cid-jvws6cnk]:hover{color:var(--ink);border-color:var(--line-strong)}.mf-topbar-link[data-astro-cid-jvws6cnk] svg[data-astro-cid-jvws6cnk]{flex:none;width:14px;height:14px}@media (width<=1100px){.mf-topbar-link[data-astro-cid-jvws6cnk] span[data-astro-cid-jvws6cnk]{display:none}}@media (width<=640px){.mf-topbar-link[data-astro-cid-jvws6cnk]{display:none}}
