:root{--font-display: "Clash Display", sans-serif;--font-body: "Satoshi", sans-serif;--font-mono: "Disket Mono", ui-monospace, monospace;--color-bg: #0d0d0d;--color-surface: #161616;--color-surface-2: #1e1e1e;--color-border: rgba(255, 255, 255, .08);--color-border-strong: rgba(255, 255, 255, .16);--color-text: #f0ede8;--color-text-muted: rgba(240, 237, 232, .55);--color-text-faint: rgba(240, 237, 232, .38);--color-accent: #c97b3a;--color-accent-glow: rgba(201, 123, 58, .25);--health-on-track: #2ec47a;--health-needs-attention: #e8b53a;--health-stalled: #e0533d;--health-unsorted: #8a8a8a;--lane-in-progress: #2ec47a;--lane-needs-attention: #e8b53a;--lane-paused: #7c8aa0;--lane-shipped: #6d7ef0;--lane-unsorted: #8a8a8a;--lane-in-progress-soft: rgba(46, 196, 122, .14);--lane-needs-attention-soft: rgba(232, 181, 58, .14);--lane-paused-soft: rgba(124, 138, 160, .14);--lane-shipped-soft: rgba(109, 126, 240, .16);--lane-unsorted-soft: rgba(138, 138, 138, .12);--priority-high: #e0533d;--priority-medium: #e8b53a;--priority-low: #6a96c9;--space-xs: .5rem;--space-sm: 1rem;--space-md: 2rem;--space-lg: 4rem;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 20px;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--duration-fast: .2s;--duration-base: .4s;--content-max: 1480px}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3{font-family:var(--font-display);font-weight:600;margin:0;letter-spacing:-.01em}a{color:inherit}button{font-family:var(--font-body);cursor:pointer}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:4px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.app{position:relative;min-height:100vh;overflow-x:hidden}.app__inner{position:relative;z-index:1;max-width:var(--content-max);margin:0 auto;padding:clamp(1.25rem,3vw,2.5rem)}.mesh{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;pointer-events:none}.mesh__blob{position:absolute;width:46vw;height:46vw;max-width:640px;max-height:640px;border-radius:50%;filter:blur(90px);opacity:.5;will-change:transform}.mesh__blob--green{top:-8%;left:-6%;background:radial-gradient(circle at 30% 30%,rgba(46,196,122,.55),transparent 70%);animation:drift1 22s var(--ease-out-expo) infinite alternate}.mesh__blob--amber{top:30%;right:-10%;background:radial-gradient(circle at 50% 50%,rgba(201,123,58,.5),transparent 70%);animation:drift2 26s var(--ease-out-expo) infinite alternate}.mesh__blob--red{bottom:-12%;left:25%;background:radial-gradient(circle at 50% 50%,rgba(224,83,61,.4),transparent 70%);animation:drift3 30s var(--ease-out-expo) infinite alternate}@keyframes drift1{to{transform:translate3d(8%,10%,0) scale(1.1)}}@keyframes drift2{to{transform:translate3d(-10%,6%,0) scale(1.08)}}@keyframes drift3{to{transform:translate3d(6%,-8%,0) scale(1.12)}}.topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-sm);flex-wrap:wrap;margin-bottom:clamp(1.5rem,3vw,2.5rem)}.topbar__title h1{font-size:clamp(2rem,5vw,3rem);line-height:1.05}.topbar__subtitle{margin:.4rem 0 0;color:var(--color-text-muted);font-size:.95rem}.topbar__actions{display:flex;align-items:center;gap:var(--space-sm)}.topbar__updated{color:var(--color-text-faint);font-size:.85rem;font-variant-numeric:tabular-nums}.btn{display:inline-flex;align-items:center;gap:.5rem;min-height:44px;padding:0 1.1rem;border-radius:var(--radius-sm);border:1px solid var(--color-border-strong);background:var(--color-surface-2);color:var(--color-text);font-size:.9rem;font-weight:500;transition:background var(--duration-fast) ease,border-color var(--duration-fast) ease,transform var(--duration-fast) ease}.btn:hover{background:#262626;border-color:var(--color-accent)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--ghost{background:transparent}.board{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:clamp(.75rem,1.5vw,1.25rem);align-items:start}.column{background:#ffffff04;border:1px solid var(--color-border);border-top:2px solid var(--col-color, var(--color-border-strong));border-radius:var(--radius-md);padding:var(--space-sm);min-width:0}.column__head{display:flex;align-items:center;gap:.55rem;padding:.15rem .25rem .85rem;position:sticky;top:0}.column__title{font-size:1rem;font-weight:600;letter-spacing:0}.column__count{margin-left:auto;min-width:24px;height:24px;padding:0 .45rem;display:inline-flex;align-items:center;justify-content:center;background:var(--col-soft, var(--color-surface-2));color:var(--color-text);border-radius:999px;font-size:.8rem;font-variant-numeric:tabular-nums}.column__body{display:flex;flex-direction:column;gap:.75rem}.column__empty{color:var(--color-text-faint);font-size:.85rem;padding:.5rem .25rem;margin:0}.dot{display:inline-block;border-radius:50%;flex:none}.dot--lg{width:12px;height:12px;box-shadow:0 0 12px -2px currentColor}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.9rem .95rem .8rem;display:flex;flex-direction:column;gap:.6rem;transition:border-color var(--duration-fast) ease,background var(--duration-fast) ease,transform var(--duration-fast) ease;will-change:transform}.card:hover{border-color:color-mix(in srgb,var(--card-accent) 55%,transparent);background:var(--color-surface-2);transform:translateY(-2px)}.card__head{display:flex;align-items:center;gap:.65rem}.card__title{font-size:1.05rem;font-weight:600;line-height:1.15;flex:1;min-width:0;overflow-wrap:anywhere}.logo-tile,.monogram{flex:none;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;overflow:hidden}.logo-tile{background:#ffffff0f;border:1px solid var(--color-border)}.logo-tile img{width:100%;height:100%;object-fit:contain;padding:5px}.monogram__text{font-family:var(--font-display);font-weight:600;font-size:1rem;color:#fff;letter-spacing:.02em;text-shadow:0 1px 2px rgba(0,0,0,.35)}.card__meta{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.badge{display:inline-flex;align-items:center;gap:.35rem;height:22px;padding:0 .55rem;border-radius:6px;font-size:.74rem;font-weight:500;white-space:nowrap}.badge--status{background:#ffffff12;color:var(--color-text)}.badge--priority{background:transparent;border:1px solid var(--color-border-strong);color:var(--color-text-muted)}.chip{font-size:.72rem;color:var(--color-text-faint);text-transform:uppercase;letter-spacing:.06em}.card__goal{margin:0;color:var(--color-text-muted);font-size:.88rem;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card__next{margin:0;display:flex;align-items:flex-start;gap:.45rem;font-size:.88rem;line-height:1.4;color:var(--color-text)}.card__next-icon{color:var(--card-accent, var(--color-accent));margin-top:2px;flex:none}.card__next-text{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card__foot{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap;margin-top:.1rem;padding-top:.6rem;border-top:1px solid var(--color-border)}.card__stats{display:flex;align-items:center;gap:.75rem}.stat{display:inline-flex;align-items:center;gap:.3rem;font-size:.78rem;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.stat--due.stat--overdue{color:var(--health-stalled)}.stat--due.stat--soon{color:var(--health-at-risk)}.card__links{display:flex;gap:.4rem}.link-btn{display:inline-flex;align-items:center;gap:.3rem;height:28px;padding:0 .5rem;border-radius:6px;border:1px solid var(--color-border);color:var(--color-text-muted);text-decoration:none;font-size:.76rem;transition:color var(--duration-fast) ease,border-color var(--duration-fast) ease}.link-btn:hover{color:var(--color-text);border-color:var(--color-border-strong)}.state-panel{max-width:460px;margin:8vh auto;text-align:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:2.5rem 2rem}.state-panel--error{border-color:color-mix(in srgb,var(--health-stalled) 40%,var(--color-border))}.state-panel__title{font-size:1.4rem;margin-bottom:.6rem}.state-panel__body{color:var(--color-text-muted);font-size:.95rem;margin:0 0 1.4rem;line-height:1.5}.skeleton-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.95rem;display:flex;flex-direction:column;gap:.7rem}.skeleton{background:linear-gradient(90deg,#ffffff0a,#ffffff17,#ffffff0a);border-radius:6px;animation:pulse 1.4s ease-in-out infinite}.skeleton--head{height:44px;width:60%}.skeleton--line{height:12px;width:100%}.skeleton--line.short{width:55%}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}.card{cursor:pointer}.card:focus-visible{outline:2px solid var(--card-accent, var(--color-accent));outline-offset:2px}.drawer-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50}.drawer-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000008c;animation:fade-in var(--duration-fast) ease}.drawer{position:absolute;top:0;right:0;height:100%;width:min(440px,100%);background:var(--color-surface);border-left:1px solid var(--color-border-strong);box-shadow:-24px 0 60px -20px #0009;display:flex;flex-direction:column;animation:slide-in var(--duration-base) var(--ease-out-expo);outline:none}@keyframes fade-in{0%{opacity:0}}@keyframes slide-in{0%{transform:translate(100%)}}.drawer__head{display:flex;align-items:center;gap:.65rem;padding:1.1rem 1.1rem .8rem;border-bottom:1px solid var(--color-border)}.drawer__title{font-size:1.25rem;flex:1;min-width:0;overflow-wrap:anywhere}.drawer__close{flex:none;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid var(--color-border);background:transparent;color:var(--color-text-muted)}.drawer__close:hover{color:var(--color-text);border-color:var(--color-border-strong)}.drawer__links{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;padding:.8rem 1.1rem;border-bottom:1px solid var(--color-border)}.drawer__body{flex:1;overflow-y:auto;padding:1.1rem;display:flex;flex-direction:column;gap:1.1rem}.save-pill{margin-left:auto;font-size:.76rem;color:var(--color-text-faint);min-height:1em}.save-pill--saving{color:var(--color-text-muted)}.save-pill--saved{color:var(--health-on-track)}.save-pill--error{color:var(--health-stalled)}.field-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem}.field{display:flex;flex-direction:column;gap:.3rem;min-width:0}.field--block{width:100%}.field__label{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-faint)}.field__select,.field__textarea,.tasks__input{width:100%;background:var(--color-surface-2);border:1px solid var(--color-border-strong);color:var(--color-text);border-radius:var(--radius-sm);padding:.5rem .6rem;font-size:.9rem;font-family:var(--font-body)}.field__select{min-height:40px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.field__textarea{resize:vertical;line-height:1.4}.field__select:hover,.field__textarea:hover{border-color:var(--color-accent)}.tasks{display:flex;flex-direction:column;gap:.6rem;border-top:1px solid var(--color-border);padding-top:1rem}.tasks__head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.tasks__count{font-size:.76rem;color:var(--color-text-faint);font-variant-numeric:tabular-nums}.tasks__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.15rem}.task{display:flex;align-items:center;gap:.5rem;border-radius:var(--radius-sm);padding:.1rem .3rem}.task:hover{background:var(--color-surface-2)}.task__label{display:flex;align-items:center;gap:.6rem;flex:1;min-width:0;min-height:44px;cursor:pointer}.task__check{width:18px;height:18px;flex:none;accent-color:var(--health-on-track);cursor:pointer}.task__name{font-size:.9rem;overflow-wrap:anywhere}.task--done .task__name{text-decoration:line-through;color:var(--color-text-faint)}.task__date{font-size:.74rem;color:var(--color-text-faint);flex:none}.tasks__empty,.tasks__loading{color:var(--color-text-muted);font-size:.85rem}.tasks__loading{display:flex;flex-direction:column;gap:.4rem}.tasks__error,.tasks__inline-error{color:var(--health-stalled);font-size:.82rem;display:flex;align-items:center;gap:.6rem}.tasks__add{display:flex;gap:.5rem;margin-top:.3rem}.tasks__input{flex:1}.btn--sm{min-height:40px;padding:0 .9rem;font-size:.85rem}.viewtabs{display:inline-flex;background:var(--color-surface);border:1px solid var(--color-border);border-radius:999px;padding:3px}.viewtabs__tab{min-height:38px;padding:0 1rem;border:none;background:transparent;color:var(--color-text-muted);font-size:.88rem;font-weight:500;border-radius:999px;transition:background var(--duration-fast) ease,color var(--duration-fast) ease}.viewtabs__tab:hover{color:var(--color-text)}.viewtabs__tab.is-active{background:var(--color-accent);color:#1a1206}.seo-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.seo-toolbar__count{color:var(--color-text-muted);font-size:.85rem}.seo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:clamp(.75rem,1.5vw,1.25rem);align-items:start}.seo-card{cursor:pointer;gap:.85rem}.seo-row{display:flex;flex-wrap:wrap;gap:.5rem 1.1rem}.seo-row--traffic{align-items:center;border-top:1px solid var(--color-border);padding-top:.75rem}.seo-metric{display:flex;flex-direction:column;gap:.1rem}.seo-metric__value{font-family:var(--font-display);font-size:1.15rem;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.seo-metric__label{font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-faint)}.seo-spark{margin-left:auto;align-self:center}.sparkline{display:block;overflow:visible}.seo-card__foot{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:.1rem;padding-top:.6rem;border-top:1px solid var(--color-border)}.seo-tag{font-size:.7rem;color:var(--color-text-faint);border:1px solid var(--color-border);border-radius:6px;padding:.1rem .4rem}.seo-card__cue{margin-left:auto;font-size:.74rem;color:var(--color-text-faint)}.seo-card__error{margin:0;font-size:.82rem;color:var(--health-stalled)}.seo-detail__range{margin:0;font-size:.74rem;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-faint)}.seo-detail__note{margin:0;font-size:.85rem;color:var(--color-text-muted)}.seo-table{display:flex;flex-direction:column;gap:.4rem}.seo-table__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.1rem}.seo-table__row{display:flex;align-items:baseline;gap:.6rem;padding:.35rem .3rem;border-radius:var(--radius-sm);font-size:.85rem}.seo-table__row:hover{background:var(--color-surface-2)}.seo-table__key{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.seo-table__metric{flex:none;font-variant-numeric:tabular-nums;color:var(--color-text)}.seo-table__metric--muted{color:var(--color-text-faint)}@media(max-width:520px){.drawer{width:100%}.field-grid{grid-template-columns:1fr 1fr}}@media(max-width:760px){.column__head{position:static}.link-btn__label{display:none}}@media(max-width:420px){.board{grid-template-columns:1fr}}.pipe-summary{display:flex;align-items:center;gap:clamp(1rem,3vw,2.25rem);flex-wrap:wrap;margin-bottom:1.1rem;padding:.85rem 1rem;background:#ffffff04;border:1px solid var(--color-border);border-radius:var(--radius-md)}.pipe-stat{display:flex;flex-direction:column;gap:.1rem}.pipe-stat__value{font-family:var(--font-display);font-size:1.3rem;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.01em}.pipe-stat__label{font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-faint)}.pipe-summary__refresh{margin-left:auto}.pipe-board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(252px,1fr);gap:clamp(.75rem,1.5vw,1.1rem);align-items:start;overflow-x:auto;padding-bottom:.75rem;scroll-snap-type:x proximity}.pipe-board>.column{scroll-snap-align:start}.pipe-lane__value{margin:-.4rem 0 .6rem;padding:0 .25rem;font-size:.72rem;color:var(--color-text-faint);font-variant-numeric:tabular-nums}.pipe-card{background:var(--color-surface);border:1px solid var(--color-border);border-left:2px solid var(--card-accent, var(--color-border-strong));border-radius:var(--radius-sm);padding:.7rem .75rem;display:flex;flex-direction:column;gap:.45rem;transition:border-color var(--duration-fast) ease,background var(--duration-fast) ease}.pipe-card:hover{background:var(--color-surface-2);border-color:color-mix(in srgb,var(--card-accent) 45%,var(--color-border))}.pipe-card__head{display:flex;align-items:baseline;gap:.5rem}.pipe-card__title{font-size:.95rem;font-weight:600;line-height:1.2;flex:1;min-width:0;overflow-wrap:anywhere}.pipe-card__value{flex:none;font-family:var(--font-display);font-size:.9rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--health-on-track)}.pipe-card__sub{margin:0;font-size:.78rem;color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pipe-card__next{display:flex;gap:.35rem;margin:0;font-size:.8rem;color:var(--color-text)}.pipe-card__next-icon{flex:none;margin-top:.15rem;color:var(--color-accent)}.pipe-card__next-text{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pipe-card__foot{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.1rem}.pipe-card__tags{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;min-width:0}.pipe-chip{font-size:.68rem;padding:.1rem .45rem;border-radius:999px;background:var(--color-surface-2);color:var(--color-text-muted);border:1px solid var(--color-border)}.pipe-due{font-size:.7rem;font-variant-numeric:tabular-nums;padding:.1rem .45rem;border-radius:999px;background:var(--color-surface-2);color:var(--color-text-muted)}.pipe-due--overdue{background:color-mix(in srgb,var(--health-stalled) 22%,transparent);color:#f2a796}.pipe-due--soon{background:color-mix(in srgb,var(--health-needs-attention) 22%,transparent);color:#f0cf86}
