:root{--app-red:#C2410C;--app-amber:#B7791F}.app-dots{display:inline-flex;gap:5px}.app-dots i{width:22px;height:4px;border-radius:2px;background:var(--surface-3)}.app-dots i.on{background:var(--ink)}.app-choices{gap:10px}.app-choice,.app-choices{display:flex;flex-direction:column}.app-choice{align-items:flex-start;gap:2px;width:100%;padding:14px 16px;border-radius:var(--r-lg);border:1px solid var(--rule);background:var(--surface);cursor:pointer;text-align:left;font:inherit}.app-choice:hover{border-color:rgba(0,0,0,.2)}.app-choice.on{border-color:var(--ink);box-shadow:var(--shadow-sm)}.app-choice b{font-size:15px;font-weight:500}.app-choice span{font-size:13px;color:var(--ink-3)}.app-plans{display:flex;flex-direction:column;gap:10px}.app-plan{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:12px;align-items:start;width:100%;padding:14px 16px;border-radius:var(--r-lg);border:1px solid var(--rule);background:var(--surface);cursor:pointer;text-align:left;font:inherit;color:inherit;transition:border-color .12s,box-shadow .12s}.app-plan:hover{border-color:rgba(0,0,0,.2)}.app-plan.on{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.app-plan:disabled{cursor:not-allowed;background:var(--surface-2);border-color:var(--rule-2)}.app-plan:disabled .app-plan-dot,.app-plan:disabled .app-plan-main>:not(.app-plan-soon){opacity:.55}.app-plan:disabled .app-plan-price{color:var(--ink-3)}.app-plan-soon{margin-top:6px;font-size:12.5px;font-weight:500;color:var(--ink-2)}.app-plan:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.app-plan-dot{width:18px;height:18px;margin-top:1px;border-radius:50%;border:1.5px solid var(--ink-3);background:var(--surface)}.app-plan.on .app-plan-dot{border:5px solid var(--ink)}.app-plan-main{display:flex;flex-direction:column;gap:3px;min-width:0}.app-plan-main b{font-size:15px;font-weight:500}.app-plan-blurb{font-size:13px;color:var(--ink-3);line-height:1.4}.app-plan-points{font-size:12.5px;color:var(--ink-2);line-height:1.45;margin-top:3px}.app-plan-price{text-align:right;font-size:16px;font-weight:600;white-space:nowrap;line-height:1.2}.app-plan-price s,.app-plan-price small{display:block;font-size:12px;font-weight:400;color:var(--ink-3)}.app-plan-price small{margin-top:2px}.app-sec{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-lg)}.app-sec-h{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--rule-2);flex-wrap:wrap}.app-sec-h h2{font-family:var(--body);font-size:15px;font-weight:600;letter-spacing:-.01em}.app-count{min-width:22px;height:22px;padding:0 7px;border-radius:var(--r-pill);background:var(--surface-2);color:var(--ink-2);display:inline-grid;place-items:center;font-size:12px;font-weight:600}.app-sec-b{padding:6px 8px 8px}.app-empty-line{padding:16px 18px;font-size:14px;color:var(--ink-3)}.app-row{display:flex;align-items:center;gap:12px;padding:10px;border-radius:var(--r-sm);text-decoration:none;color:inherit}a.app-row:hover{background:var(--surface-2)}.app-row .grow{flex:1 1;min-width:0}.app-row .t{font-size:14.5px;line-height:1.4}.app-row .s{font-size:12.5px;color:var(--ink-3);margin-top:1px}.app-dot{width:8px;height:8px;border-radius:50%;flex:none;background:var(--ink-3)}.app-dot.red{background:var(--app-red)}.app-dot.amber{background:var(--app-amber)}.app-dot.green{background:var(--sage)}.app-seg{display:inline-flex;padding:3px;gap:2px;border-radius:var(--r);background:var(--surface-3)}.app-seg button{height:30px;padding:0 12px;border:0;border-radius:6px;background:none;font:inherit;font-size:13px;color:var(--ink-2);cursor:pointer;white-space:nowrap}.app-seg button.on{background:var(--surface);color:var(--ink);font-weight:500;box-shadow:var(--shadow-sm)}.app-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:18px}.app-toolbar .input{height:36px;font-size:14px}.app-toolbar select.input{width:auto;max-width:100%;padding:0 10px}.app-grid-2{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:20px;align-items:start}@media (max-width:1100px){.app-grid-2{grid-template-columns:minmax(0,1fr)}}.app-stack{display:flex;flex-direction:column;gap:20px;min-width:0}.app-pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}.app-pcard{display:flex;flex-direction:column;text-decoration:none;color:inherit;min-width:0;background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-xl);overflow:hidden;transition:box-shadow .18s ease,border-color .18s ease}.app-pcard:hover{box-shadow:var(--shadow);border-color:transparent}.app-pcard .img{aspect-ratio:16/10;background:var(--surface-3);overflow:hidden;display:grid;place-items:center}.app-pcard img{width:100%;height:100%;object-fit:cover;display:block}.app-pcard .mono-cover{font-family:var(--display);font-size:38px;color:var(--ink-3)}.app-pcard .b{padding:14px 16px 16px;display:flex;flex-direction:column;gap:10px}.app-pcard .nm{font-size:16px;font-weight:600;letter-spacing:-.01em}.app-pcard .meta,.app-pcard .nm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-pcard .meta{font-size:13px;color:var(--ink-3);margin-top:2px}.app-picked{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--r);background:var(--surface-2)}.app-picklist{display:flex;flex-direction:column;gap:2px;border:1px solid var(--rule);border-radius:var(--r);padding:4px;max-height:240px;overflow-y:auto}.app-picklist button{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:0;border-radius:var(--r-sm);background:none;cursor:pointer;text-align:left;font:inherit;font-size:14px;color:var(--ink)}.app-picklist button:hover{background:var(--surface-2)}.app-picklist small{display:block;font-size:12px;color:var(--ink-3)}.app-option{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;cursor:pointer;border:1px solid var(--rule);border-radius:var(--r);background:var(--surface)}.app-option.on{border-color:var(--ink);box-shadow:var(--shadow-sm)}.app-option input[type=radio]{margin-top:3px;accent-color:var(--ink);width:16px;height:16px;flex:none}.app-option b{display:block;font-size:14.5px;font-weight:500}.app-option .sub{display:block;font-size:13px;color:var(--ink-3);margin-top:2px}.app-people{display:flex;flex-direction:column}.app-person{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 18px;border-top:1px solid var(--rule-2)}.app-person:first-child{border-top:0}.app-person .grow{flex:1 1;min-width:180px}.app-person .nm{font-size:14.5px;font-weight:500}.app-person .s{font-size:12.5px;color:var(--ink-3);margin-top:1px;overflow-wrap:anywhere}.app-person .avatar{width:34px;height:34px;font-size:12px}.app-person .acts{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.app-toggle{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-2);cursor:pointer;position:relative}.app-toggle input{position:absolute;opacity:0;width:1px;height:1px}.app-toggle i{width:32px;height:19px;border-radius:999px;background:var(--surface-3);position:relative;flex:none;transition:background .15s ease}.app-toggle i:after{content:"";position:absolute;top:2px;left:2px;width:15px;height:15px;border-radius:50%;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,.25);transition:transform .15s ease}.app-toggle input:checked+i{background:var(--sage)}.app-toggle input:checked+i:after{transform:translateX(13px)}.app-toggle input:focus-visible+i{outline:2px solid var(--ink);outline-offset:2px}.app-toggle input:disabled+i{opacity:.5}.app-scrim{position:fixed;inset:0;z-index:70;background:rgba(26,25,22,.28);animation:app-fade .14s ease-out}@keyframes app-fade{0%{opacity:0}to{opacity:1}}.app-drawer{position:fixed;top:0;right:0;bottom:0;z-index:71;width:min(520px,100vw);background:var(--surface);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;animation:app-slide .18s ease-out}@keyframes app-slide{0%{transform:translateX(24px);opacity:0}to{transform:none;opacity:1}}.app-drawer-h{display:flex;align-items:center;gap:10px;padding:16px 20px;border-bottom:1px solid var(--rule-2)}.app-drawer-h h2{font-family:var(--body);font-size:16px;font-weight:600}.app-drawer-b{flex:1 1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:18px}.app-drawer-f{padding:14px 20px;border-top:1px solid var(--rule-2);display:flex;gap:10px;align-items:center;flex-wrap:wrap}.app-x{width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:var(--r-sm);background:none;color:var(--ink-2);cursor:pointer;margin-left:auto}.app-x:hover{background:var(--surface-2);color:var(--ink)}@media (prefers-reduced-motion:reduce){.app-drawer,.app-scrim{animation:none}}.app-table-wrap{overflow-x:auto}.app-table{width:100%;min-width:640px;border-collapse:collapse;font-size:14px}.app-table th{text-align:left;font-size:12px;font-weight:500;color:var(--ink-3);padding:10px 18px;border-bottom:1px solid var(--rule)}.app-table td{padding:12px 18px;border-bottom:1px solid var(--rule-2);vertical-align:middle}.app-table tr:last-child td{border-bottom:0}.app-table .nm{display:flex;align-items:center;gap:10px;font-weight:500}.app-settings{display:grid;grid-template-columns:190px minmax(0,1fr);gap:28px;align-items:start}@media (max-width:900px){.app-settings{grid-template-columns:minmax(0,1fr)}}.app-snav{display:flex;flex-direction:column;gap:2px;position:sticky;top:16px}.app-snav a{padding:8px 10px;border-radius:var(--r-sm);font-size:14.5px;color:var(--ink-2);text-decoration:none}.app-snav a.on{background:var(--surface);color:var(--ink);font-weight:500;box-shadow:var(--shadow-sm)}@media (max-width:900px){.app-snav{flex-direction:row;flex-wrap:wrap;position:static}}.set-stack{display:flex;flex-direction:column;gap:18px;max-width:720px}.set-intro{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;color:var(--ink-2);font-size:14px}.set-intro p{margin:0;flex:1 1;min-width:220px}.set-sec{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-lg);overflow:hidden}.set-sec-h{display:flex;align-items:flex-start;gap:12px;padding:18px 22px 0}.set-sec-h>div:first-child{flex:1 1;min-width:0}.set-sec-h h2{font-family:var(--body);font-size:15px;font-weight:600;line-height:1.3;letter-spacing:-.01em;margin:0}.set-sec-h p{margin:4px 0 0;font-size:13.5px;line-height:1.45;color:var(--ink-3)}.set-sec-aside{flex:none;padding-top:3px}.set-sec-b{padding:16px 22px 20px;display:flex;flex-direction:column;gap:16px}.set-sec-b>.switch-row+.switch-row{margin-top:-8px}.snd-options{display:flex;flex-direction:column;gap:8px}.snd-grid{gap:16px}.snd-test{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.snd-test .hint{flex:1 1;min-width:200px}.set-sec-f{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 14px 10px 22px;background:var(--surface-2);border-top:1px solid var(--rule-2)}.set-sec-state{font-size:12.5px;color:var(--ink-3);display:inline-flex;align-items:center;gap:6px}.set-sec-state.dirty{color:var(--ink);font-weight:500}.set-sec-state.dirty:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--app-amber)}.set-sec-state.saved{color:var(--sage)}.set-sec-state.saved:before{content:"";width:12px;height:12px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Cpath d='M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z'/%3E%3C/svg%3E") center /contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Cpath d='M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z'/%3E%3C/svg%3E") center /contain no-repeat}@media (max-width:560px){.set-sec-b,.set-sec-h{padding-left:16px;padding-right:16px}.set-sec-f{padding-left:16px}}.app-phead{display:flex;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:18px}.app-phead h1{font-size:36px}.app-phead .meta{margin-top:6px;color:var(--ink-2);font-size:14.5px}.app-phead .acts{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}.app-ptabs{display:flex;align-items:center;gap:10px;margin-bottom:24px}.app-ptabs .tabs{flex:1 1;min-width:0;flex-wrap:wrap}.app-counts{display:flex;gap:18px;flex-wrap:wrap;padding:14px 18px;font-size:14px;color:var(--ink-2)}.app-counts b{color:var(--ink);font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.app-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:12px}.app-strip a{aspect-ratio:4/3;border-radius:var(--r-sm);overflow:hidden;background:var(--surface-3);display:block}.app-strip img{width:100%;height:100%;object-fit:cover;display:block}.app-boardbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:18px}.app-boardbar .input{height:36px;font-size:14px}.app-boardbar select.input{width:auto;padding:0 10px}.app-board-scroll{overflow-x:auto;padding-bottom:6px}.app-board{display:grid;grid-template-columns:repeat(4,minmax(250px,1fr));gap:14px;min-width:1040px;align-items:start}.app-col{display:flex;flex-direction:column;gap:8px;min-height:240px;padding:10px;border-radius:var(--r-lg);background:var(--surface-2);transition:background-color .18s ease,box-shadow .18s ease}.app-col.over{background:var(--surface-3);box-shadow:inset 0 0 0 1px rgba(26,25,22,.09)}.app-col-empty{margin:0;padding:22px 0;text-align:center;font-size:13px;color:var(--ink-3);border-radius:var(--r)}.app-board.is-dragging .app-col-empty{box-shadow:inset 0 0 0 1px rgba(26,25,22,.1)}.app-col-h{display:flex;align-items:baseline;gap:8px;padding:2px 4px 4px}.app-col-h b{font-size:13.5px;font-weight:600}.app-col-h .n{font-size:12px;color:var(--ink-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;animation:app-count .24s cubic-bezier(.2,.8,.2,1)}@keyframes app-count{0%{opacity:.25;transform:translateY(-3px)}to{opacity:1;transform:none}}.app-col-h .hint{margin-left:auto;font-size:11.5px}.app-card{display:flex;flex-direction:column;gap:9px;text-align:left;width:100%;padding:11px 12px;border-radius:var(--r);background:var(--surface);border:1px solid var(--rule-2);box-shadow:var(--shadow-sm);cursor:grab;font:inherit;color:inherit;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;transition:box-shadow .16s ease,border-color .16s ease,translate .16s ease}.app-card:hover{box-shadow:var(--shadow);translate:0 -1px}.app-card:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.app-board.is-dragging .app-card:hover{box-shadow:var(--shadow-sm);translate:none}.app-ghost{position:fixed;left:0;top:0;z-index:90;margin:0;pointer-events:none;cursor:grabbing;transform-origin:50% 35%;will-change:transform;border-color:rgba(26,25,22,.1);box-shadow:0 22px 44px -14px rgba(26,25,22,.3),0 6px 14px -6px rgba(26,25,22,.14),0 0 0 1px rgba(26,25,22,.05)}.app-ghost.settling{box-shadow:0 1px 2px rgba(0,0,0,.12),0 0 0 1px rgba(0,0,0,.05)}.app-slot{flex:none;border-radius:var(--r);background:rgba(26,25,22,.05);box-shadow:inset 0 0 0 1px rgba(26,25,22,.07)}body.app-grabbing,body.app-grabbing *{cursor:grabbing!important}body.app-grabbing{user-select:none;-webkit-user-select:none}.app-done-tick{margin-left:auto;flex:none;display:grid;place-items:center;width:16px;height:16px;border-radius:50%;background:var(--sage-soft);color:var(--sage)}@media (prefers-reduced-motion:reduce){.app-card,.app-col{transition:none}.app-card:hover{translate:none}.app-col-h .n{animation:none}}.app-card.done{box-shadow:none;background:transparent;border-color:var(--rule)}.app-card.done .ttl{color:var(--ink-2)}.app-card .ctop{display:flex;align-items:center;gap:6px;min-width:0}.app-card .cbody{display:flex;gap:10px;align-items:flex-start}.app-card .ttl{font-size:14px;line-height:1.4;flex:1 1;min-width:0;overflow-wrap:anywhere}.app-card .cfoot{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.app-card .progress{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-2);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.app-card .progress .bar{width:30px;height:4px;border-radius:2px;background:var(--surface-3);overflow:hidden}.app-card .progress .bar i{display:block;height:100%;border-radius:2px;background:var(--sage);transition:width .3s cubic-bezier(.2,.8,.2,1)}.app-card .due{margin-left:auto;font-size:12px;color:var(--ink-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.app-card .due.late{color:var(--app-red);font-weight:600}.app-proj-chip{display:inline-flex;align-items:center;max-width:100%;font-size:11.5px;font-weight:500;color:var(--ink-2);background:var(--surface-2);border-radius:5px;padding:2px 7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-from,.app-proj-chip.studio{background:var(--gold-soft);color:var(--gold)}.app-from{display:inline-flex;align-items:center;height:18px;padding:0 6px;border-radius:4px;font-size:10.5px;font-weight:600;white-space:nowrap}.app-thumb{width:44px;height:34px;position:relative}.app-thumb .more{position:absolute;right:3px;bottom:3px;height:16px;padding:0 5px;border-radius:4px;background:rgba(26,26,26,.82);color:#fff;font-size:10px;font-weight:600;display:grid;place-items:center}.app-quickadd .input{height:38px;font-size:14px;background:var(--surface)}.aapp-more{border:0;background:none;font:inherit;font-size:13px;color:var(--ink-2);cursor:pointer;padding:6px;text-align:left}.aapp-more:hover{color:var(--ink)}.app-blist{display:none;flex-direction:column;gap:18px}.app-blist .app-card{cursor:pointer}.app-moveto{display:flex;gap:6px;flex-wrap:wrap}.app-chip{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:var(--r-pill);border:1px solid var(--rule);background:var(--surface);font:inherit;font-size:12px;color:var(--ink-2);cursor:pointer;white-space:nowrap}.app-chip:hover{color:var(--ink)}.app-chip.on{background:var(--ink);border-color:var(--ink);color:#fff}@media (max-width:760px){.app-board-scroll{display:none}.app-blist{display:flex}}.app-assignees{display:flex;flex-direction:column;gap:4px}.app-assignee{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--r-sm);border:1px solid transparent;background:none;cursor:pointer;text-align:left;font:inherit;font-size:14px;width:100%;color:var(--ink)}.app-assignee:hover{background:var(--surface-2)}.app-assignee.on{border-color:var(--ink);background:var(--surface)}.app-assignee .load{margin-left:auto;font-size:12px;color:var(--ink-3)}.app-linked{display:flex;flex-direction:column;gap:2px}.app-linked-row{display:flex;align-items:center;gap:10px;padding:8px;border-radius:var(--r-sm)}.app-linked-row:hover{background:var(--surface-2)}.app-linked-row input[type=checkbox]{width:16px;height:16px;accent-color:var(--sage);flex:none;margin:0}.app-linked-row .grow{flex:1 1;min-width:0}.app-linked-row .t{font-size:14px;line-height:1.35;overflow-wrap:anywhere}.app-linked-row .t.done{color:var(--ink-3);text-decoration:line-through}.app-linked-row .s{font-size:12px;color:var(--ink-3);display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:2px}.app-picker{max-height:260px;overflow-y:auto;border:1px solid var(--rule);border-radius:var(--r);padding:4px}.app-history{border-top:1px solid var(--rule-2);padding-top:14px;display:flex;flex-direction:column;gap:10px}.app-history-toggle{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;border:0;background:none;padding:2px 0;cursor:pointer;font:inherit;font-size:13px;font-weight:500;color:var(--ink-2)}.app-history-toggle:hover{color:var(--ink)}.app-history-toggle .chev{font-size:11px;width:10px}.app-history-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.app-history-list li{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.45;color:var(--ink-2)}.app-history-list li .grow{flex:1 1;min-width:0}.app-history-list b{font-weight:500;color:var(--ink)}.app-history-list .avatar{width:22px;height:22px;font-size:10px}.app-history-list .avatar.plott{background:var(--ink);color:var(--ground)}.app-history-quote{display:block;margin-top:4px;padding:4px 0 4px 10px;border-left:2px solid var(--rule);font-size:12.5px;color:var(--ink-3);quotes:none;overflow-wrap:anywhere;white-space:pre-line}.app-suggest{gap:10px;padding:12px 14px;border-radius:var(--r);background:var(--gold-soft);font-size:14px;line-height:1.45}.app-exist,.app-suggest{display:flex;flex-direction:column}.app-exist{gap:6px}.app-exist button{display:flex;align-items:center;gap:10px;width:100%;text-align:left;cursor:pointer;font:inherit;color:var(--ink);padding:10px 12px;border-radius:var(--r);border:1px solid var(--rule);background:var(--surface);font-size:14px}.app-exist button.on{border-color:var(--ink);box-shadow:var(--shadow-sm)}.app-exist .s{display:block;font-size:12px;color:var(--ink-3)}.app-modal{position:fixed;z-index:71;left:50%;top:50%;transform:translate(-50%,-50%);width:min(480px,calc(100vw - 32px));max-height:calc(100vh - 40px);overflow-y:auto;background:var(--surface);border-radius:var(--r-xl);box-shadow:var(--shadow-lg);padding:22px;display:flex;flex-direction:column;gap:16px}.app-modal h2{font-size:25px}button.app-row{width:100%;border:0;background:none;cursor:pointer;text-align:left;font:inherit;color:inherit}button.app-row:hover{background:var(--surface-2)}.pin .pin-from{position:absolute;left:calc(100% + 2px);top:-7px;background:var(--gold);color:#fff;border-radius:4px;padding:0 4px;font-size:9.5px;line-height:15px;font-weight:600;white-space:nowrap;pointer-events:none}.app-thumb{width:52px;height:40px;border-radius:6px;overflow:hidden;background:var(--surface-3);flex:none;display:grid;place-items:center}.app-thumb img{width:100%;height:100%;object-fit:cover;display:block}.app-thumb-ph{font-size:10.5px;font-weight:600;color:var(--ink-3);letter-spacing:.04em}.app-approve-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;border-radius:var(--r-sm);background:var(--surface-2);margin-top:10px}.app-approve-bar .grow{flex:1 1;min-width:180px;font-size:14px}.app-cactions{position:sticky;bottom:0;z-index:20;display:flex;gap:10px;justify-content:flex-end;padding:12px 0;background:linear-gradient(to top,var(--ground) 70%,transparent)}.app-bsheet{position:fixed;left:50%;bottom:0;transform:translateX(-50%);z-index:71;width:min(520px,100%);background:var(--surface);border-radius:18px 18px 0 0;padding:22px 20px calc(20px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:14px;box-shadow:0 -10px 40px rgba(0,0,0,.18)}@media (min-width:700px){.app-bsheet{bottom:auto;top:50%;transform:translate(-50%,-50%);border-radius:18px}}.app-bsheet h2{font-size:24px;line-height:1.25}.app-approve-card{display:flex;gap:12px;align-items:center;padding:10px;border:1px solid var(--rule);border-radius:var(--r-sm)}.app-approve-card img{width:84px;height:62px;object-fit:cover;border-radius:6px;flex:none}.app-receipt{display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;padding:56px 16px;max-width:520px;margin:0 auto}.app-receipt .ok{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--sage);color:#fff;font-size:26px}.doc-layout{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:22px;align-items:start}@media (max-width:960px){.doc-layout{grid-template-columns:1fr}}.doc-side{position:sticky;top:16px}@media (max-width:960px){.doc-side{position:static}}.doc-pages{gap:18px}.doc-page-frame,.doc-pages{display:flex;flex-direction:column}.doc-page-frame{height:min(86vh,1100px);align-items:center;justify-content:center;background:var(--surface-2);border-radius:var(--r-sm);padding:12px;position:relative}@media (max-width:1040px){.doc-page-frame{height:auto}}.doc-page-n{position:absolute;bottom:4px;right:12px;font-size:11.5px;color:var(--ink-3)}.doc-page-hit{position:absolute;inset:0}.doc-page-hit.placing{cursor:crosshair}.doc-box{position:absolute;border:2px dashed;border-radius:6px;display:grid;place-items:center;padding:2px;font:600 12px/1.2 var(--body);overflow:hidden}.doc-box img{max-width:100%;max-height:100%;object-fit:contain}.doc-swatch{display:inline-block;width:10px;height:10px;border-radius:50%;flex:none;margin-right:6px}.doc-save{display:inline-flex;align-items:center;gap:6px;margin-left:10px;font-size:12.5px;color:var(--ink-3,#8a857c);transition:color .2s}.doc-save:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.7;transition:background .2s}.doc-save.is-saved:before{background:var(--sage);opacity:1}.doc-save.is-saving:before{animation:doc-save-pulse 1s ease-in-out infinite}.doc-save.is-error{color:var(--clay)}@keyframes doc-save-pulse{50%{opacity:.2}}@media (prefers-reduced-motion:reduce){.doc-save.is-saving:before{animation:none}}.doc-q{padding:12px;border-top:1px solid var(--rule-2);display:flex;flex-direction:column;gap:8px}.doc-q:first-child{border-top:0}.doc-q p{font-size:14px;line-height:1.5}.doc-q-reply{padding:8px 10px;border-radius:var(--r-sm);background:var(--surface-2)}.doc-q-reply.studio{background:var(--mint)}.sign-shell{min-height:100vh;background:var(--ground);padding-bottom:84px}.sign-top{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:10px;padding:12px 20px;background:var(--surface);border-bottom:1px solid var(--rule);font-size:14.5px}.sign-main{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;max-width:1280px;margin:0 auto;padding:24px 20px;align-items:start}@media (max-width:960px){.sign-main{grid-template-columns:1fr;padding:16px}}.sign-doc{display:flex;flex-direction:column;gap:14px;min-width:0}.sign-side{position:sticky;top:72px}@media (max-width:960px){.sign-side{position:static}}.sign-message{border-left:3px solid var(--rule);padding:6px 14px;color:var(--ink-2);font-size:14.5px}.sign-bar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;align-items:center;gap:12px;padding:12px 20px calc(12px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--rule);box-shadow:0 -6px 24px rgba(0,0,0,.06)}.sign-bar .grow{flex:1 1;font-size:14.5px}.sign-preview{font-size:44px;color:#1a2a4a;padding:10px 14px;border-bottom:1px solid var(--rule);min-height:74px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sign-canvas{width:100%;aspect-ratio:3/1;background:var(--surface-2);border-radius:var(--r-sm);touch-action:none;cursor:crosshair}.drive-steps{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-direction:column;gap:18px}.drive-steps.compact{margin-top:0;gap:14px}.drive-steps>li{display:flex;gap:12px;align-items:flex-start}.drive-step-n{flex:none;display:grid;place-items:center;width:24px;height:24px;margin-top:1px;border-radius:50%;background:var(--ink);color:#fff;font-size:12.5px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.drive-step-b{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:6px;font-size:14.5px}.drive-step-b .hint{margin:0}.drive-address{display:flex;align-items:center;gap:8px;padding:6px 6px 6px 12px;border:1px solid var(--rule);border-radius:var(--r);background:var(--surface-2)}.drive-address code{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;-webkit-user-select:all;user-select:all}.drive-check{min-height:18px;font-size:12.5px}.drive-check.is-ok{color:var(--sage)}.apps-how{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:14px;line-height:1.5;color:var(--ink-2)}.apps-how b{color:var(--ink);font-weight:600}.drive-check.is-bad,.drive-check.is-file{color:var(--clay)}.drive-note{padding:10px 12px;border-radius:var(--r);background:var(--surface-2);font-size:13px;color:var(--ink-2)}.app-option-body{padding:6px 4px 8px 30px}.hint.link-check{transition:color .15s}.hint.link-check.is-ok{color:var(--sage)}.hint.link-check.is-bad{color:var(--clay)}.pp-name{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pp-name .badge{font-size:11.5px}.app-iconbtn{width:34px;height:34px;flex:none;display:grid;place-items:center;cursor:pointer;border:1px solid var(--rule);border-radius:var(--r-sm);background:var(--surface);color:var(--ink-2);transition:background .14s ease,color .14s ease,border-color .14s ease}.app-iconbtn:hover:not(:disabled){background:var(--surface-2);color:var(--ink);border-color:var(--ink-3)}.app-iconbtn:disabled{opacity:.5;cursor:progress}.app-more{position:relative}.app-more>.app-iconbtn[aria-expanded=true]{background:var(--surface-2);color:var(--ink);border-color:var(--ink-3)}.app-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:20;width:max-content;min-width:196px;background:var(--surface);border:1px solid var(--rule);border-radius:var(--r);box-shadow:var(--shadow-lg);padding:6px;display:flex;flex-direction:column;gap:2px;animation:pop-in .14s ease-out}.app-menu button{display:block;width:100%;text-align:left;padding:9px 10px;border:0;border-radius:var(--r-sm);background:none;cursor:pointer;font:inherit;font-size:14px;color:var(--ink-2)}.app-menu button:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}.app-menu button:disabled{opacity:.5;cursor:default}.app-menu button.danger{color:var(--clay)}.app-menu button.danger:hover{background:var(--clay-soft);color:var(--clay)}.aapp-menu-hint{padding:2px 10px 6px;font-size:12px;color:var(--ink-3)}.pp-row.menu-open{position:relative;z-index:21}.app-confirm{position:fixed;z-index:71;left:50%;top:50%;transform:translate(-50%,-50%);width:min(420px,calc(100vw - 32px));background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:22px;display:flex;flex-direction:column;gap:12px;animation:confirm-in .14s ease-out}@keyframes confirm-in{0%{opacity:0;transform:translate(-50%,calc(-50% - 4px)) scale(.98)}to{opacity:1;transform:translate(-50%,-50%)}}.app-confirm h2{font-family:var(--body);font-size:17px;font-weight:600}.app-confirm p{font-size:14px;line-height:1.55;color:var(--ink-2)}.aapp-confirm-f{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}@media (prefers-reduced-motion:reduce){.app-confirm,.app-menu{animation:none}}@media (max-width:600px){.app-person.pp-row .acts{width:100%;justify-content:flex-end}}.rem-row{align-items:flex-start;gap:10px}.rem-row.past{opacity:.66}.rem-row .t{font-size:14px}.rem-chip{margin-left:8px;padding:1px 7px;border-radius:var(--r-pill);vertical-align:1px;background:var(--surface-3);color:var(--ink-2);font-size:11px;font-weight:500;white-space:nowrap}.rem-link{display:inline-block;margin-top:4px;font-size:12.5px;color:var(--ink-2)}.rem-kinds{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}.rem-kind{display:inline-flex;align-items:center;gap:6px;cursor:pointer;padding:7px 11px;border:1px solid var(--rule);border-radius:var(--r-pill);background:var(--surface);font-size:13.5px;color:var(--ink-2);transition:border-color .14s ease,color .14s ease,box-shadow .14s ease}.rem-kind:hover{border-color:rgba(0,0,0,.2);color:var(--ink)}.rem-kind.on{border-color:var(--ink);color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.rem-kind input{accent-color:var(--ink);margin:0}.bill-plans{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(168px,1fr));align-items:stretch}.bill-plan{height:100%}.bill-plan.on{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.bill-limits{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px;font-size:13px;color:var(--ink-2)}.bill-limits li{position:relative;padding-left:15px}.bill-limits li:before{content:"";position:absolute;left:2px;top:7px;width:5px;height:5px;border-radius:50%;background:var(--ink-3)}.lockpage{max-width:900px;margin:0 auto;padding:26px 20px 60px}.bill-terms{width:min(520px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow-y:auto}.bill-sum{margin:0;padding:10px 12px;border:1px solid var(--rule);border-radius:var(--r-sm);display:flex;flex-direction:column;gap:6px;font-size:13.5px}.bill-sum>div{display:flex;justify-content:space-between;gap:12px}.bill-sum dt{color:var(--ink-2)}.bill-sum dd{margin:0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bill-sum .total{padding-top:6px;border-top:1px solid var(--rule);font-weight:600}.bill-sum .total dt{color:var(--ink)}.bill-pays{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.bill-pays li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px 18px;padding:12px 0;border-top:1px solid var(--rule);font-size:14px}.bill-pays li:first-child{border-top:0;padding-top:4px}.bill-pay-amt,.bill-pay-main{display:flex;flex-direction:column;gap:2px;min-width:0}.bill-pay-amt span,.bill-pay-main .dim{font-size:12.5px}.bill-pay-amt{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bill-pay-failed{color:var(--clay)}.bill-pay-inv{justify-self:end}@media (max-width:620px){.bill-pays li{grid-template-columns:minmax(0,1fr) auto}.bill-pay-inv{grid-column:1/-1;justify-self:start}}.bill-terms-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:13.5px;line-height:1.5;color:var(--ink-2)}.bill-terms-list li{position:relative;padding-left:16px}.bill-terms-list li:before{content:"";position:absolute;left:2px;top:8px;width:5px;height:5px;border-radius:50%;background:var(--ink-3)}.bill-agree{display:flex;align-items:flex-start;gap:9px;cursor:pointer;padding:11px 12px;border:1px solid var(--rule);border-radius:var(--r-sm);background:var(--surface-2);font-size:13.5px;color:var(--ink)}.bill-agree input{accent-color:var(--ink);margin:1px 0 0}.plan-strip{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 4px;padding:10px 18px;background:var(--gold-soft,#f7f0dd);border-bottom:1px solid var(--rule);font-size:13.5px;color:var(--ink)}.plan-strip.urgent{background:#f6e3df}.plan-strip a{color:var(--ink);font-weight:500;text-decoration:underline;text-underline-offset:2px}.plan-strip a:hover{opacity:.72}.adminbill-figures{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(132px,1fr))}.adminbill-figure{display:flex;flex-direction:column;gap:2px;padding:14px 16px}.adminplan-grid{align-items:start}.adminpay-grid,.adminplan-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.adminpay-grid{align-items:stretch}.adminplan-form{margin-top:4px;padding-top:12px;border-top:1px solid var(--rule)}.adminplan-limits{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px;font-size:13.5px;color:var(--ink-2)}.adminplan-limits li{position:relative;padding-left:15px}.adminplan-limits li:before{content:"";position:absolute;left:2px;top:8px;width:5px;height:5px;border-radius:50%;background:var(--ink-3)}.adminplan-count{display:flex;align-items:center;gap:12px}.adminplan-count .input{flex:1 1;min-width:0;max-width:140px}.adminplan-check{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--ink);cursor:pointer}.adminplan-check input{width:16px;height:16px;accent-color:var(--ink);flex:none}.adminplan-preview{padding:10px 12px;border-radius:var(--r-sm);background:var(--surface-2)}.adminplan-preview p{margin:4px 0 0;font-size:13.5px;line-height:1.5;color:var(--ink-2)}.home-head{display:flex;align-items:flex-end;gap:20px;margin-bottom:22px;flex-wrap:wrap}.home-head>.grow{flex:1 1 420px;min-width:0}.home-date{display:block;margin-bottom:6px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}.home-head h1{font-size:32px;letter-spacing:-.015em}.home-head p{margin-top:6px;color:var(--ink-2);font-size:14.5px}.home-warn{color:var(--clay);font-weight:500;text-decoration:underline;text-underline-offset:3px}.home-fold{margin-bottom:28px}@media (min-width:1181px){.home-fold{display:flex;flex-direction:column;height:calc(100dvh - 104px);min-height:640px}.home-fold>.hw{flex:1 1;min-height:0}}.hw{display:grid;grid-template-columns:minmax(0,1fr) 372px;min-height:0;background:var(--surface);border-radius:14px;box-shadow:0 0 0 1px var(--rule);overflow:hidden}.hw-work{display:flex;flex-direction:column;min-width:0;min-height:0;border-right:1px solid var(--rule)}.hw-tabs{height:52px;flex:none;display:flex;align-items:stretch;gap:26px;padding:0 20px;border-bottom:1px solid var(--rule)}.hw-tab{display:flex;align-items:center;gap:8px;padding:0;border:0;background:none;cursor:pointer;font:inherit;font-size:14px;font-weight:500;color:var(--ink-2);box-shadow:inset 0 -2px 0 transparent;transition:color .15s ease,box-shadow .15s ease}.hw-tab.on,.hw-tab:hover{color:var(--ink)}.hw-tab.on{box-shadow:inset 0 -2px 0 var(--ink)}.hw-tab:focus-visible{outline:2px solid var(--ink);outline-offset:-2px}.hw-count{min-width:20px;height:20px;padding:0 6px;box-sizing:border-box;border-radius:10px;background:var(--surface-2);font-size:11.5px;font-weight:600;color:var(--ink);display:inline-flex;align-items:center;justify-content:center}.hw-count.clay{background:var(--clay-soft);color:#8F4A2C}.hw-link{align-self:center;display:inline-flex;align-items:center;gap:5px;font-size:13px;font-weight:500;color:var(--ink);text-decoration:none}.hw-link:hover{text-decoration:underline;text-underline-offset:3px}.hw-list{flex:1 1;min-height:0;overflow-y:auto;scrollbar-width:thin}.hw-flash{flex:none;margin:0;padding:10px 20px;border-bottom:1px solid var(--rule-2);background:var(--sage-soft);color:var(--sage);font-size:13.5px;font-weight:500}.hw-row{width:100%;display:flex;gap:12px;padding:14px 18px;border:0;border-bottom:1px solid var(--rule-2);background:var(--surface);text-align:left;font:inherit;color:inherit;cursor:pointer;transition:background .12s ease}button.hw-row:hover{background:var(--surface-2)}div.hw-row{cursor:default}.hw-row-act{flex:none;align-self:center;display:flex}.hw-row.on{background:#F6F3EE}.hw-row:focus-visible{outline:2px solid var(--ink);outline-offset:-2px}.hw-av{width:30px;height:30px;flex:none;border-radius:50%;background:var(--surface-3);color:var(--ink);font-size:11px;font-weight:600;display:flex;align-items:center;justify-content:center}.hw-av.notice{background:var(--clay-soft);color:var(--clay);font-size:14px}.hw-row-main{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:3px}.hw-row-top{display:flex;align-items:center;gap:6px;min-width:0}.hw-row-title,.hw-row-top b{font-size:14px;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hw-row-top b.struck{text-decoration:line-through;color:var(--ink-2)}.hw-row-file{font-size:12.5px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hw-row-text{font-size:13.5px;line-height:1.45;color:#3A3530;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.hw-unread{width:7px;height:7px;border-radius:50%;background:var(--clay);flex:none}.hw-when{font-size:12px;color:var(--ink-2);white-space:nowrap;flex:none}.hw-when.late{color:var(--clay);font-weight:500}.hw-tag{align-self:flex-start;margin-top:3px;font-size:11.5px;font-weight:500;color:var(--ink-2);padding:1px 8px;border-radius:var(--r-pill);background:var(--surface-2)}.hw-tag.sage{background:var(--sage-soft);color:var(--sage)}.hw-kind{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2)}.hw-kind.gold{color:var(--gold)}.hw-kind.clay{color:var(--clay)}.hw-tick{width:18px;height:18px;flex:none;margin-top:1px;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--ink-3)}.hw-tick.gold{box-shadow:inset 0 0 0 1.5px var(--gold)}.hw-tick.done{background:var(--sage);box-shadow:none}.hw-empty{padding:22px 20px;font-size:14px;color:var(--ink-2)}.hw-dhead{display:flex;align-items:flex-start;gap:10px 12px;flex-wrap:wrap}.hw-dhead .grow{flex:1 1 240px;min-width:0}.hw-dhead h2{margin:3px 0 0;font-family:var(--display);font-weight:400;font-size:24px;line-height:1.2;letter-spacing:-.01em}.hw-dsub{font-size:12.5px;color:var(--ink-2);margin:0}.hw-dhead h2+.hw-dsub{margin-top:4px}.hw-stage{display:flex;justify-content:center;padding:16px;border-radius:10px;background:var(--surface-2)}.hw-pic{position:relative;display:inline-block;max-width:100%}.hw-stage-img{display:block;max-width:100%;max-height:300px;width:auto;height:auto;border-radius:4px}.hw-pin{position:absolute;width:22px;height:22px;margin:-22px 0 0 -11px;border-radius:50% 50% 50% 4px;transform:rotate(-45deg);background:var(--clay);box-shadow:0 0 0 2.5px #fff,0 4px 10px rgba(0,0,0,.3)}.hw-doc{display:flex;align-items:center;gap:14px;padding:16px;border-radius:10px;background:var(--surface-2);color:var(--clay)}.hw-doc span{display:flex;flex-direction:column;gap:3px;color:var(--ink)}.hw-doc b{font-size:14px;font-weight:600}.hw-doc small{font-size:12.5px;color:var(--ink-2)}.hw-thread{display:flex;flex-direction:column;gap:14px}.hw-msg{display:flex;gap:12px}.hw-msg.studio{padding-left:40px}.hw-msg.studio .hw-av{background:var(--ink);color:#fff}.hw-msg>div{flex:1 1;min-width:0}.hw-msg-h{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.hw-msg-h b{font-size:13.5px;font-weight:600}.hw-msg-h small{font-size:12px;color:var(--ink-2)}.hw-msg p{margin:4px 0 0;font-size:14.5px;line-height:1.55;color:#2A2622;overflow-wrap:anywhere;white-space:pre-wrap}.hw-hint{margin:0;font-size:12.5px;color:var(--ink-2)}.hw-body{margin:0;padding:14px 16px;border-radius:10px;background:var(--surface-2);font-size:14px;line-height:1.55;color:#3A3530;white-space:pre-wrap}.hw-err{display:block;margin:0;font-size:13px;color:var(--clay)}.hw-compose{margin-top:auto;border-radius:12px;box-shadow:0 0 0 1px var(--rule);background:#fff}.hw-compose:focus-within{box-shadow:0 0 0 1px var(--ink-3),0 0 0 4px rgba(0,0,0,.04)}.hw-compose textarea{display:block;width:100%;box-sizing:border-box;border:0;outline:0;resize:none;padding:14px 16px 6px;font:inherit;font-size:14px;line-height:1.5;background:none;color:var(--ink)}.hw-compose-f{display:flex;align-items:center;gap:8px;padding:8px 10px 10px 16px}.hw-compose-f .grow{flex:1 1}.hw-compose-f .hw-btn{flex:none}.hw-compose .hw-err{padding:0 16px 12px}.hw-dlg{position:fixed;z-index:71;left:50%;top:50%;transform:translate(-50%,-50%);width:min(680px,calc(100vw - 32px));max-height:calc(100dvh - 48px);display:flex;flex-direction:column;background:var(--surface);border-radius:16px;box-shadow:var(--shadow-lg);container-type:inline-size;outline:none;animation:app-fade .14s ease-out}.hw-dlg-x{position:absolute;top:12px;right:12px;z-index:1;margin:0}.hw-dlg-scroll{flex:1 1;min-height:0;overflow-y:auto;padding:24px 26px 20px;display:flex;flex-direction:column;gap:18px;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.18) transparent}.hw-dlg .hw-dhead{padding-right:36px}.hw-dlg>.hw-compose{position:relative;flex:none;margin:12px 26px 20px}.hw-dlg>.hw-compose:before{content:"";position:absolute;left:-26px;right:-26px;top:-12px;border-top:1px solid var(--rule-2)}.hw-dlg-foot{flex:none;display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px 26px 18px;border-top:1px solid var(--rule-2)}.hw-dlg-foot .grow{flex:1 1}@media (prefers-reduced-motion:reduce){.hw-dlg{animation:none}}.hw-media{display:flex;align-items:center;gap:16px;padding:10px;border-radius:10px;background:var(--surface-2)}.hw-thumb{position:relative;flex:none;padding:0;border:0;border-radius:6px;background:none;cursor:zoom-in;line-height:0}.hw-thumb:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.hw-thumb-img{display:block;height:120px;width:auto;max-width:220px;object-fit:cover;border-radius:6px}.hw-thumb-zoom{position:absolute;right:6px;bottom:6px;width:26px;height:26px;border-radius:7px;display:grid;place-items:center;background:rgba(255,255,255,.94);color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.18);opacity:0;transition:opacity .15s ease}.hw-thumb:focus-visible .hw-thumb-zoom,.hw-thumb:hover .hw-thumb-zoom{opacity:1}.hw-pin.sm{width:16px;height:16px;margin:-16px 0 0 -8px;box-shadow:0 0 0 2px #fff,0 3px 8px rgba(0,0,0,.3)}.hw-media-t{flex:1 1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:10px}@container (max-width:440px){.hw-media{flex-direction:column;align-items:stretch;gap:10px}.hw-thumb{align-self:center}.hw-thumb,.hw-thumb-img{max-width:100%}.hw-thumb-zoom{opacity:1}.hw-media-t{flex-direction:row;align-items:center;justify-content:space-between;gap:8px}.hw-compose-f{flex-wrap:wrap}.hw-compose-f .hw-hint{flex-basis:100%}}.hw-view-pic{position:relative;display:inline-block;line-height:0;pointer-events:auto}.hw-view .hw-view-pic img{display:block;max-width:calc(100vw - 48px);max-height:calc(100dvh - 120px);width:auto;height:auto;border-radius:4px;box-shadow:0 30px 80px -30px rgba(0,0,0,.6);animation:tlb-zoom .28s cubic-bezier(.19,1,.22,1) both}@media (prefers-reduced-motion:reduce){.hw-view .hw-view-pic img{animation:none}}.hw-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:34px;padding:0 14px;border:0;border-radius:8px;background:var(--ink);color:#fff;font:inherit;font-size:13px;font-weight:500;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background .15s ease,opacity .15s ease}.hw-btn:hover{background:#333;color:#fff}.hw-btn:disabled{opacity:.5;cursor:default}.hw-btn.ghost{background:none;color:var(--ink);box-shadow:inset 0 0 0 1px rgba(0,0,0,.12)}.hw-btn.ghost:hover{background:var(--surface-2);color:var(--ink)}.hw-btn.sm{height:30px;padding:0 10px;font-size:12.5px}.hw-btn.xs{height:28px;padding:0 10px;font-size:12px;border-radius:7px}.hw-btn:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.hw-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.hw-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.hw-steps li{position:relative;display:flex;gap:12px;padding-bottom:16px}.hw-steps li:not(:last-child):before{content:"";position:absolute;left:4.5px;top:14px;bottom:0;width:1px;background:var(--rule)}.hw-step-dot{width:10px;height:10px;flex:none;margin-top:4px;border-radius:50%;background:#C9C2B9}.hw-steps li.now .hw-step-dot{background:var(--clay);box-shadow:0 0 0 3px var(--clay-soft)}.hw-steps span{display:flex;flex-direction:column;gap:1px}.hw-steps b{font-size:13.5px;font-weight:500}.hw-steps small{font-size:12px;color:var(--ink-2)}.hw-seg{display:inline-flex;align-self:flex-start;padding:3px;gap:2px;border-radius:10px;background:#F3F0EB;flex-wrap:wrap}.hw-seg button{height:32px;padding:0 14px;border:0;border-radius:8px;background:none;font:inherit;font-size:13px;font-weight:500;color:var(--ink-2);cursor:pointer}.hw-seg button.on{background:#fff;color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.12),0 0 0 1px rgba(0,0,0,.06)}.hw-seg button:disabled{cursor:progress}.hw-facts{margin:0;display:grid;grid-template-columns:110px minmax(0,1fr);row-gap:12px;font-size:14px}.hw-facts dt{color:var(--ink-2)}.hw-facts dd{margin:0}.hw-facts dd.late{color:var(--clay);font-weight:500}.hc{display:flex;flex-direction:column;min-height:0}.hc-head{display:flex;align-items:center;gap:6px;padding:16px 18px 10px}.hc-head h2{flex:1 1;margin:0;font-family:var(--display);font-weight:400;font-size:21px;letter-spacing:-.01em}.hc-nav{width:30px;height:30px;border:0;border-radius:8px;background:none;color:var(--ink);display:grid;place-items:center;cursor:pointer}.hc-nav:hover:not(:disabled){background:var(--surface-2)}.hc-nav:disabled{opacity:.3;cursor:default}.hc-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;padding:0 14px}.hc-wd{height:24px;font-size:11px;font-weight:600;color:var(--ink-2)}.hc-day,.hc-wd{display:flex;align-items:center;justify-content:center}.hc-day{height:42px;padding:0;border:0;border-radius:10px;background:none;color:var(--ink);font:inherit;cursor:pointer;flex-direction:column;gap:3px;transition:background .12s ease}.hc-day>span:first-child{font-size:13.5px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hc-day:hover:not(:disabled){background:var(--surface-2)}.hc-day.out{color:#C9C2B9}.hc-day.today{color:var(--clay);box-shadow:inset 0 0 0 1.5px var(--clay)}.hc-day.sel>span:first-child,.hc-day.today>span:first-child{font-weight:600}.hc-day.sel,.hc-day.sel:hover{background:var(--ink);color:#fff;box-shadow:none}.hc-day:disabled{opacity:.35;cursor:default}.hc-day:focus-visible{outline:2px solid var(--ink);outline-offset:1px}.hc-dots{height:5px;display:flex;gap:3px}.hc-dots i,.hc-legend i{width:5px;height:5px;border-radius:50%;display:block;background:var(--ink)}.hc-legend i{width:7px;height:7px}.hc-dots i.site,.hc-legend i.site{background:var(--sage)}.hc-dots i.payment,.hc-legend i.payment{background:var(--clay)}.hc-dots i.approval,.hc-legend i.approval{background:var(--gold)}.hc-day.sel .hc-dots i{background:#fff}.hc-legend{display:flex;flex-wrap:wrap;gap:4px 14px;padding:10px 18px 12px;border-bottom:1px solid var(--rule)}.hc-legend span{display:flex;align-items:center;gap:6px;font-size:11.5px;color:var(--ink-2)}.hc-day-list{flex:1 1;min-height:0;overflow-y:auto;padding:14px 18px 18px;display:flex;flex-direction:column;scrollbar-width:thin}.hc-day-h{display:flex;align-items:baseline;gap:8px;padding-bottom:10px}.hc-day-h b{font-size:14px;font-weight:600}.hc-day-h span{font-size:12.5px;color:var(--ink-2)}.hc-ev{display:grid;grid-template-columns:48px minmax(0,1fr);gap:10px;padding:12px 0;border-top:1px solid var(--rule-2)}.hc-ev.done{opacity:.55}.hc-ev.done b{text-decoration:line-through}.hc-time{font-size:12.5px;font-weight:600;color:#3A3530;padding-top:1px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hc-ev-main{display:flex;flex-direction:column;gap:3px;min-width:0}.hc-kind{font-size:10.5px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--ink)}.hc-kind.site{color:var(--sage)}.hc-kind.payment{color:var(--clay)}.hc-kind.approval{color:var(--gold)}.hc-ev-main b{font-size:14px;font-weight:500;line-height:1.35;overflow-wrap:anywhere}.hc-ev-main small{font-size:12.5px;color:var(--ink-2)}.hc-amount{font-size:14px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hc-acts{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.hc-free{padding:18px 0;border-top:1px solid var(--rule-2);font-size:13.5px;color:var(--ink-2)}.hp{display:flex;flex-direction:column;gap:12px}.hp-head{display:flex;align-items:center;gap:10px}.hp-head h2{margin:0;font-family:var(--body);font-size:15px;font-weight:600;letter-spacing:-.01em}.hp-head>span:not(.grow){font-size:13px;color:var(--ink-2)}.hp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.hp-card{display:grid;grid-template-columns:150px minmax(0,1fr);gap:14px;align-items:center;padding:10px;min-width:0;border-radius:12px;background:var(--surface);box-shadow:0 0 0 1px var(--rule);color:inherit;text-decoration:none;transition:box-shadow .15s ease}.hp-card:hover{box-shadow:0 0 0 1px var(--rule),var(--shadow)}.hp-card img,.hp-mono{width:150px;height:96px;border-radius:6px;display:block;object-fit:cover;background:var(--surface-3)}.hp-mono{display:grid;place-items:center;font-family:var(--display);font-size:30px;color:var(--ink-2)}.hp-text{display:flex;flex-direction:column;gap:4px;min-width:0}.hp-text b{font-size:15px;font-weight:600}.hp-text b,.hp-text small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hp-text small{font-size:12.5px;color:var(--ink-2)}.hp-stage{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#3A3530}.hp-stage:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--ink-2)}.hp-stage.sage:before{background:var(--sage)}.hp-stage.gold:before{background:var(--gold)}.hp-stage.ink:before{background:var(--ink)}@media (min-width:1181px) and (max-width:1440px){.hw{grid-template-columns:minmax(0,1fr) 330px}}@media (max-width:1180px){.hw{grid-template-columns:minmax(0,1fr)}.hw-work{border-right:0;border-bottom:1px solid var(--rule);height:640px}.hp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.home-head h1{font-size:28px}.home-head .btn{width:100%;justify-content:center}.hw-work{height:auto}.hw-tabs{gap:18px;padding:0 16px;overflow-x:auto;scrollbar-width:none}.hw-tab{white-space:nowrap}.hw-list{max-height:520px}.hw-row{padding:14px 16px}.hw-dlg{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.hw-dlg-scroll{padding:20px 16px 16px}.hw-dlg>.hw-compose{margin:12px 16px 16px}.hw-dlg>.hw-compose:before{left:-16px;right:-16px}.hw-dlg-foot{padding:12px 16px 16px}.hw-thumb-img{height:96px;max-width:150px}.hw-thumb-zoom{opacity:1}.hw-msg.studio{padding-left:20px}.hw-compose-f{flex-wrap:wrap}.hp-grid{grid-template-columns:minmax(0,1fr)}}.pc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.pc{display:flex;flex-direction:column;min-width:0;background:var(--surface);border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--shadow-sm);color:inherit;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease}.pc:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.pc:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.pc-cover{position:relative;display:grid;place-items:center;aspect-ratio:16/10;background:var(--surface-3);overflow:hidden}.pc-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.pc:hover .pc-cover img{transform:scale(1.03)}.pc-mono{font-family:var(--display);font-weight:300;font-size:44px;color:var(--ink-2)}.pc-stage{position:absolute;top:12px;left:12px;display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border-radius:var(--r-pill);background:var(--surface);box-shadow:0 1px 3px rgba(0,0,0,.14);font-size:12.5px;font-weight:600;color:var(--ink)}.pc-stage:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--ink-2)}.pc-stage.sage:before{background:var(--sage)}.pc-stage.gold:before{background:var(--gold)}.pc-stage.clay:before{background:var(--clay)}.pc-stage.ink:before{background:var(--ink)}.pc-body{display:flex;flex-direction:column;gap:3px;padding:16px 18px 18px}.pc-name{font-size:17px;font-weight:600;letter-spacing:-.01em}.pc-kind,.pc-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pc-kind{font-size:13.5px;color:var(--ink-2)}@media (max-width:760px){.pc-grid{grid-template-columns:minmax(0,1fr)}}.main-top{justify-content:space-between}.side-toggle{width:32px;height:32px;flex:none;display:grid;place-items:center;border:0;border-radius:var(--r);background:none;color:var(--ink-2);cursor:pointer;transition:background .14s ease,color .14s ease}.side-toggle:hover{background:var(--surface-3);color:var(--ink)}.side-toggle:focus-visible{outline:2px solid var(--ink);outline-offset:1px}.side-user{padding:0 10px 10px;gap:9px}.side-ic{width:20px;height:20px;flex:none;display:grid;place-items:center}.side-ic svg{display:block}.side-nav a.on .side-ic{color:var(--ink)}@media (min-width:901px){.app{min-height:0;overflow:hidden;background:var(--surface-2);grid-template-columns:236px minmax(0,1fr);transition:grid-template-columns .22s ease}.app,.side{height:100dvh}.side{background:none;border-right:0;padding:16px 12px 16px 14px;overflow-x:hidden}.main{height:calc(100dvh - 20px);margin:10px 10px 10px 0;overflow-y:auto;overscroll-behavior:contain;background:var(--ground);border-radius:16px;box-shadow:0 0 0 1px rgba(0,0,0,.07),0 1px 3px rgba(0,0,0,.05);scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.18) transparent}.app.side-collapsed{grid-template-columns:68px minmax(0,1fr)}.side-collapsed .side{padding:16px 10px;align-items:stretch}.side-collapsed .brand{justify-content:center}.side-collapsed .brand b,.side-collapsed .side-label,.side-collapsed .side-text,.side-collapsed .side-user-text{display:none}.side-collapsed .side-group{padding-top:6px}.side-collapsed .side-nav{align-items:center;gap:6px}.side-collapsed .side-nav a,.side-collapsed .side-nav button{width:40px;height:40px;padding:0;flex:none;justify-content:center;border-radius:10px}.side-collapsed .side-nav a.on{box-shadow:0 0 0 1px rgba(0,0,0,.08),0 1px 2px rgba(0,0,0,.06)}.side-collapsed .brand-mark{width:30px;height:30px;border-radius:8px}.side-collapsed .side-user{justify-content:center;padding:0 0 10px}}@media (max-width:900px){.side-toggle{display:none}}.bell-btn{width:38px;height:38px;border-radius:var(--r-pill);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.bell-btn.on,.bell-btn:hover{background:var(--surface-2);color:var(--ink)}.bell-btn:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.bell-count{top:-5px;right:-5px;box-shadow:0 0 0 2px var(--surface)}.main-tools{display:flex;align-items:center;gap:10px}.srch-panel{width:min(440px,calc(100vw - 24px))}.srch-in{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--rule-2);color:var(--ink-3)}.srch-in input{flex:1 1;min-width:0;border:0;outline:0;background:none;font:inherit;font-size:15px;color:var(--ink)}.srch-in input::-webkit-search-cancel-button{display:none}.srch-label{padding:10px 10px 4px;font-size:12px;font-weight:500;color:var(--ink-3)}.srch-item{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:var(--r-sm);text-decoration:none;color:var(--ink)}.srch-item.on{background:var(--surface-2)}.srch-title{font-size:14px;line-height:1.4}.srch-item .bell-meta,.srch-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width:901px){.main-top{position:sticky;top:0;z-index:30;background:var(--ground);padding:12px 22px 8px}.bell-panel{top:70px}}@media (max-width:900px){.bell-btn{width:42px;height:42px;border-radius:var(--r-sm);box-shadow:none;border:1px solid var(--rule)}}.app-phead-title{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.stage-pill{display:inline-flex;align-items:center;gap:7px;height:30px;padding:0 11px 0 10px;border:0;border-radius:var(--r-pill);background:var(--surface);box-shadow:var(--shadow-sm);font:inherit;font-size:13.5px;font-weight:600;color:var(--ink);white-space:nowrap}.stage-pill:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ink-2);flex:none}.stage-pill.sage:before{background:var(--sage)}.stage-pill.gold:before{background:var(--gold)}.stage-pill.clay:before{background:var(--clay)}.stage-pill.ink:before{background:var(--ink)}.stage-pill.unset{background:none;box-shadow:inset 0 0 0 1px var(--rule);border:1px dashed transparent;color:var(--ink-2);font-weight:500}.stage-pill.unset:before{display:none}button.stage-pill{cursor:pointer;transition:box-shadow .15s ease,background .15s ease}button.stage-pill:hover{box-shadow:var(--shadow)}button.stage-pill.unset:hover{background:var(--surface)}button.stage-pill svg{color:var(--ink-2)}.stage-menu{min-width:210px}.stage-menu button{display:flex;align-items:center;gap:10px}.stage-menu .grow{flex:1 1}.stage-dot{width:8px;height:8px;border-radius:50%;background:var(--ink-2);flex:none}.stage-dot.sage{background:var(--sage)}.stage-dot.gold{background:var(--gold)}.stage-dot.ink{background:var(--ink)}.stage-clear{color:var(--ink-2);border-top:1px solid var(--rule-2)!important;margin-top:4px}.sk{display:block;flex:none;max-width:100%;background:var(--surface-3);border-radius:var(--r-sm);animation:sk-pulse 1.5s ease-in-out infinite}@keyframes sk-pulse{50%{opacity:.5}}.sk-page{animation:app-fade .25s ease .12s both}@media (prefers-reduced-motion:reduce){.sk,.sk-page{animation:none}}@media (max-width:900px){.app:has(.sk-page){align-content:start}}.sk-head{display:flex;flex-direction:column;gap:12px;margin-bottom:28px}.sk-head-pj{margin:14px 0 18px}.sk-h1{height:36px;border-radius:var(--r)}.sk-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:20px}.sk-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-lg);overflow:hidden}.sk-thumb{width:100%;aspect-ratio:16/10;border-radius:0}.sk-card-b{display:flex;flex-direction:column;gap:9px;padding:14px 16px 18px}.sk-tabs{display:flex;gap:28px;padding-bottom:12px;margin-bottom:24px;border-bottom:1px solid var(--rule);overflow:hidden}.sk-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,360px);gap:20px;align-items:start}.sk-aside{gap:20px}.sk-aside,.sk-panel{display:flex;flex-direction:column}.sk-panel{gap:14px;padding:18px;background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-lg)}.sk-row{display:flex;gap:14px;align-items:center;padding-top:14px;border-top:1px solid var(--rule-2)}.sk-sq{width:56px;height:44px}.sk-lines{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:9px}.sk-pic{width:100%;aspect-ratio:4/3;border-radius:var(--r-lg)}.sk-sheet{min-height:56vh;padding:28px}@media (max-width:980px){.sk-split{grid-template-columns:1fr}}.sk-tools{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.sk-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px}.sk-col{gap:10px;padding:14px 10px 12px;background:#F5F2EE;border-radius:14px;min-height:420px}.sk-col,.sk-task{display:flex;flex-direction:column}.sk-task{gap:9px;padding:12px;background:var(--surface);border-radius:var(--r-lg);box-shadow:0 0 0 1px rgba(0,0,0,.06)}.sk-task .sk{background:var(--surface-2)}@media (max-width:1100px){.sk-board{grid-template-columns:repeat(2,minmax(0,1fr))}.sk-col:nth-child(n+3){display:none}}@media (max-width:600px){.sk-board{grid-template-columns:1fr}.sk-col:nth-child(n+2){display:none}}.cl-wrap.sk-cl{display:flex;flex-direction:column;gap:18px;padding-top:44px;padding-bottom:64px}.sk-cl-title{width:min(620px,80%);height:clamp(40px,5vw,60px);border-radius:var(--r)}.sk-rule{height:1px;background:var(--rule);margin:12px 0 18px}.sk-tiles{display:flex;flex-wrap:wrap;gap:12px}.sk-tiles .sk-tile{height:auto;border-radius:2px}.sk-doc{display:flex;flex-direction:column;gap:14px;width:100%;max-width:780px;min-height:70vh;margin:0 auto;padding:40px;background:var(--surface);border:1px solid var(--rule);border-radius:var(--r)}.sk-sv{display:grid;grid-template-columns:minmax(0,1fr) 360px;height:100vh;background:var(--ground)}.sk-sv-main{display:flex;flex-direction:column;gap:10px;min-height:0;padding:18px 24px}.sk-sv-canvas{flex:1 1;min-height:0;margin-top:6px;display:grid;place-items:center;padding:6%;background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-sm)}.sk-sv-pic{width:72%;height:auto;aspect-ratio:3/2;max-height:100%;border-radius:2px}.sk-sv-side{display:flex;flex-direction:column;gap:14px;padding:20px;background:var(--surface);border-left:1px solid var(--rule)}@media (max-width:860px){.sk-sv{grid-template-columns:1fr}.sk-sv-side{display:none}.sk-sv-main{padding:14px 16px}.sk-doc{padding:24px 20px}}.side-pending{margin-left:auto;width:6px;height:6px;border-radius:50%;background:var(--ink-3);opacity:0;flex:none}.side-pending.on{opacity:1;transition:opacity .15s ease .1s;animation:sk-pulse .9s ease-in-out infinite}.side-nav a:has(>.side-pending.on){background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.side-collapsed .side-pending{display:none}@media (prefers-reduced-motion:reduce){.side-pending.on{animation:none}}.cl{min-height:100vh;background:var(--ground);color:var(--ink)}.cl-wrap{width:100%;max-width:1680px;margin:0 auto;padding:0 clamp(16px,3.6vw,56px)}.cl-top{position:sticky;top:0;z-index:40;background:color-mix(in srgb,var(--ground) 94%,transparent);border-bottom:1px solid var(--rule);animation:cl-fade .6s ease both}.cl-top-in{gap:14px;height:64px}.cl-brand,.cl-top-in{display:flex;align-items:center}.cl-brand{gap:10px;min-width:0}.cl-brand b{font-family:var(--display);font-weight:400;font-size:21px;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cl-who{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:500;white-space:nowrap}.cl-who-av{width:26px;height:26px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:11.5px;font-weight:600}.cl-link{font-size:14px;font-weight:500;color:var(--ink);text-decoration:none;padding:8px 0;border-bottom:1px solid var(--ink)}.cl-link:hover{opacity:.7}.cl-hero{padding-top:clamp(36px,7vh,88px);padding-bottom:clamp(24px,4vh,44px)}.cl-eyebrow{font-size:12.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);animation:cl-rise .9s cubic-bezier(.2,.7,.2,1) .1s both}.cl-title{margin-top:16px;font-family:var(--display);font-weight:300;font-size:clamp(42px,5.8vw,96px);line-height:1;letter-spacing:-.03em;max-width:22ch}.cl-word{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-right:.22em}.cl-word>span{display:inline-block;transform:translateY(105%);animation:cl-word 1.05s cubic-bezier(.19,1,.22,1) both;animation-delay:calc(.22s + var(--i) * .09s)}.cl-sub{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-top:24px;padding-top:18px;border-top:1px solid var(--rule);animation:cl-rise .9s cubic-bezier(.2,.7,.2,1) .55s both}.cl-lede{max-width:52ch;font-size:17px;line-height:1.55}.cl-lede,.cl-meta{color:var(--ink-2)}.cl-meta{font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}.cl-hint{margin-top:18px;display:flex;align-items:center;gap:10px;font-size:14px;color:var(--ink-2);animation:cl-rise .9s cubic-bezier(.2,.7,.2,1) .7s both}.cl-hint:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--clay);flex:none}.cl-for{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px;padding-bottom:clamp(28px,4vh,48px);animation:cl-rise .9s cubic-bezier(.2,.7,.2,1) .8s both}.cl-card{background:var(--surface);border:1px solid var(--rule);padding:6px 0 8px;min-width:0;align-self:start}.cl-card-h{display:flex;align-items:center;gap:8px;padding:12px 18px 8px;font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2)}.cl-card-h span{font-size:11px;letter-spacing:0;padding:1px 7px;border-radius:var(--r-pill);background:var(--clay-soft);color:#8F4A2C}.cl-row{display:flex;align-items:center;gap:14px;padding:11px 18px;border-top:1px solid var(--rule-2);color:inherit;text-decoration:none;font-size:14.5px;transition:background .15s ease}.cl-row:hover{background:var(--surface-2)}.cl-row .grow{flex:1 1;min-width:0}.cl-row small{display:block;margin-top:2px;font-size:12.5px;color:var(--ink-2)}.cl-go{white-space:nowrap;border-bottom:1px solid}.cl-go,.cl-more summary{font-size:13px;font-weight:600}.cl-more summary{list-style:none;cursor:pointer;padding:10px 18px 4px;color:var(--ink-2);border-top:1px solid var(--rule-2)}.cl-more summary::-webkit-details-marker{display:none}.cl-more[open] summary{display:none}.cl-work{padding-bottom:120px}.cg-cols{display:grid;gap:18px;align-items:start}.cg-col{min-width:0}.cg-col,.cg-rows{display:flex;flex-direction:column;gap:18px}.cg-row{display:flex;gap:18px;min-width:0}.cg-boxes{display:grid;gap:18px;align-items:start}.cg-boxes.lead>:first-child{grid-column:1/-1}.cg-folio .cg-boxes{gap:28px}.cg-stack{display:flex;flex-direction:column;gap:18px}.cg-spread .cg-stack{max-width:1200px;margin:0 auto;gap:64px}.cg-spread .cg-cap{position:static;max-width:none;padding:16px 0 0;background:none;box-shadow:none;opacity:1;transform:none}.cg-spread .cg-cap b{font-family:var(--display);font-size:clamp(20px,2vw,26px);font-weight:400;letter-spacing:-.01em}.cg-spread .cg-cap small{font-size:13px}.cg-tile{color:inherit;text-decoration:none;outline:none}.cg-media,.cg-tile{position:relative;display:block}.cg-media{width:100%;overflow:hidden;background:var(--surface-3)}.cg-media canvas,.cg-media img{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover}.cg-media img{transform:scale(1.001);transition:transform 1.2s cubic-bezier(.19,1,.22,1)}.cg-tile:focus-visible .cg-media img,.cg-tile:hover .cg-media img{transform:scale(1.045)}.cg-tile:focus-visible .cg-media{outline:2px solid var(--ink);outline-offset:3px}.cg-tile{opacity:0;transform:translateY(34px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform 1.1s cubic-bezier(.19,1,.22,1);transition-delay:var(--cg-delay,0s)}.cg-tile .cg-media{clip-path:inset(100% 0 0 0);transition:clip-path 1.15s cubic-bezier(.19,1,.22,1);transition-delay:var(--cg-delay,0s)}.cg-tile.in{opacity:1;transform:none}.cg-tile.in .cg-media{clip-path:inset(0 0 0 0)}.cg-cap{position:absolute;left:12px;bottom:12px;max-width:calc(100% - 24px);display:flex;flex-direction:column;gap:1px;padding:9px 12px 10px;background:var(--surface);box-shadow:0 6px 20px -8px rgba(0,0,0,.28);opacity:0;transform:translateY(8px);transition:opacity .35s ease,transform .45s cubic-bezier(.19,1,.22,1);pointer-events:none}.cg-cap b{font-size:14px;font-weight:600}.cg-cap b,.cg-cap small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cg-cap small{font-size:12px;color:var(--ink-2)}.cg-cap small:empty{display:none}.cg-tile:focus-visible .cg-cap,.cg-tile:hover .cg-cap{opacity:1;transform:none}.cg-media.pdf{background:#fff;box-shadow:inset 0 0 0 1px var(--rule)}.cg-media.pdf canvas{object-fit:contain;padding:6%;opacity:0;transition:opacity .6s ease}.cg-media.pdf canvas.ready{opacity:1}.cg-sheet{position:absolute;inset:8%;display:flex;flex-direction:column;justify-content:flex-end;gap:4px;padding:14px 16px;border:1px solid var(--rule)}.cg-sheet-no{font-family:var(--mono,ui-monospace,monospace);font-size:12px;letter-spacing:.06em;color:var(--ink-2)}.cg-sheet-t{font-family:var(--display);font-size:clamp(17px,1.6vw,22px);line-height:1.15;color:var(--ink)}.cg-sheet-f{font-size:12px;color:var(--ink-2)}.cg-sheet-f:empty{display:none}.cg-video{position:absolute;inset:0;display:grid;place-items:center;color:var(--ink)}.cg-video svg{width:56px;height:56px;padding:17px;border-radius:50%;background:var(--surface);box-shadow:var(--shadow)}.cg-more{display:flex;justify-content:center;padding:36px 0 0}.cg-bar{position:fixed;left:50%;bottom:22px;z-index:45;display:flex;gap:2px;padding:5px;max-width:calc(100vw - 24px);overflow-x:auto;scrollbar-width:none;background:var(--surface);border:1px solid var(--rule);box-shadow:0 14px 38px -12px rgba(0,0,0,.28);transform:translateX(-50%);animation:cl-bar .9s cubic-bezier(.19,1,.22,1) 1.1s backwards;transition:opacity .3s ease,transform .45s cubic-bezier(.19,1,.22,1)}.cg-bar.away{opacity:0;transform:translate(-50%,24px);pointer-events:none}.cg-bar::-webkit-scrollbar{display:none}.cg-bar button{flex:none;height:36px;padding:0 16px;border:0;background:none;font:inherit;font-size:13.5px;font-weight:500;color:var(--ink-2);cursor:pointer;white-space:nowrap;transition:background .2s ease,color .2s ease}.cg-bar button:hover{color:var(--ink);background:var(--surface-2)}.cg-bar button.on{background:var(--ink);color:#fff}.cg-bar button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.cl-foot{border-top:1px solid var(--rule);padding:48px 0 96px}.cl-foot-in{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}.cl-foot-studio{font-family:var(--display);font-size:clamp(26px,3vw,40px);letter-spacing:-.02em;line-height:1.1}.cl-foot-contact{margin-top:8px;font-size:14.5px;color:var(--ink-2)}.cl-foot-base{margin-top:32px;font-size:12.5px;color:var(--ink-3)}@keyframes cl-word{to{transform:none}}@keyframes cl-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes cl-fade{0%{opacity:0}to{opacity:1}}@keyframes cl-bar{0%{opacity:0;transform:translate(-50%,24px)}to{opacity:1;transform:translate(-50%)}}@media (hover:none){.cg-cap{position:static;max-width:none;padding:10px 0 0;background:none;box-shadow:none;opacity:1;transform:none}}@media (max-width:640px){.cl-top-in{height:56px}.cl-brand b{font-size:18px}.cl-sub{margin-top:20px;padding-top:16px}.cl-lede{font-size:15.5px}.cg-boxes,.cg-col,.cg-cols,.cg-rows,.cg-stack{gap:14px}.cg-spread .cg-stack{gap:40px}.cg-bar{bottom:14px}.cg-bar button{height:34px;padding:0 13px;font-size:13px}.cl-for{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.cg-bar,.cl-eyebrow,.cl-for,.cl-hint,.cl-sub,.cl-top,.cl-word>span{animation:none}.cl-word>span{transform:none}.cg-tile,.cg-tile .cg-media{transition:none;opacity:1;transform:none;clip-path:none}.cg-media img{transition:none}}.stage-frame{border-radius:0}.sv-nav{display:inline-flex;align-items:center;gap:4px;margin-left:10px}.sv-count{min-width:64px;text-align:center;font-size:13.5px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sv-count span{font-weight:400;color:var(--ink-2)}.sv-edge{position:absolute;top:50%;z-index:6;width:46px;height:46px;margin-top:-23px;display:grid;place-items:center;border:0;border-radius:50%;background:var(--surface);color:var(--ink);cursor:pointer;box-shadow:0 8px 24px -8px rgba(0,0,0,.35);opacity:0;transition:opacity .25s ease,transform .35s cubic-bezier(.19,1,.22,1)}.sv-edge.prev{left:16px;transform:translateX(-6px)}.sv-edge.next{right:16px;transform:translateX(6px)}.stage-frame:hover .sv-edge,.sv-edge:focus-visible{opacity:1;transform:none}.sv-edge:hover{background:var(--ink);color:#fff}.sv-edge:focus-visible{outline:2px solid var(--ink);outline-offset:2px}@media (hover:none){.sv-edge{opacity:.92;transform:none;width:40px;height:40px;margin-top:-20px}}.sidepanel{transition:opacity .2s ease}.sidepanel.sv-wait{opacity:.45;pointer-events:none}.sv-in-next>:not(.sv-edge){animation:sv-in-next .55s cubic-bezier(.19,1,.22,1) both}.sv-in-prev>:not(.sv-edge){animation:sv-in-prev .55s cubic-bezier(.19,1,.22,1) both}.sv-fade{animation:cl-fade .5s ease both}@keyframes sv-in-next{0%{opacity:0;transform:translateX(6%)}to{opacity:1;transform:none}}@keyframes sv-in-prev{0%{opacity:0;transform:translateX(-6%)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.sv-fade,.sv-in-next>*,.sv-in-prev>*{animation:none}}