dialog.modal.palette[open]{place-items:start center;padding-top:12vh}.palette .modal__card{overflow:hidden}dialog.modal.palette[open],.palette .modal__card{animation:none}.palette .modal__head{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.palette .modal__body{gap:0;padding:0;overflow:hidden}.palette__search{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--line);color:var(--muted);display:flex}.palette__input{min-width:0;padding:var(--sp-2) 0;color:var(--ink);font:var(--fw-medium) var(--fs-lg) / 1.3 var(--font);background:0 0;border:0;outline:none;flex:1}.palette__input::placeholder{color:var(--muted)}.palette__esc{font-size:var(--fs-xs)}.palette__list{overscroll-behavior:contain;max-height:min(56vh,460px);padding:var(--sp-2) var(--sp-2) var(--sp-3);overflow-y:auto}.palette__group{padding:var(--sp-3) var(--sp-3) var(--sp-1);font:var(--fw-medium) var(--fs-xs) / 1.2 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0}.palette__item{align-items:center;gap:var(--sp-3);min-height:40px;padding:var(--sp-2) var(--sp-3);border-radius:var(--r-s);cursor:pointer;color:var(--ink);display:flex;position:relative}.palette__item.is-active{background:var(--surface-2)}.palette__item.is-active:before{content:"";left:0;top:var(--sp-2);bottom:var(--sp-2);border-radius:var(--r-pill);background:var(--lime);width:3px;position:absolute}.palette__ic{border-radius:var(--r-xs);background:var(--surface-2);width:28px;height:28px;color:var(--muted);flex:none;place-items:center;display:grid}.palette__item.is-active .palette__ic{background:var(--surface);color:var(--ink)}.palette__txt{align-items:baseline;gap:var(--sp-2);flex:1;min-width:0;display:flex}.palette__label{font-size:var(--fs-md);font-weight:var(--fw-medium);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.palette__mark{color:var(--ink);font-weight:var(--fw-bold);text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:3px;background:0 0;text-decoration-thickness:2px}.palette__hint{min-width:0;font-size:var(--fs-sm);color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.palette__tag{align-items:center;gap:var(--sp-1);font:var(--fw-medium) var(--fs-xs) / 1 var(--font-mono);letter-spacing:.04em;color:var(--muted);flex:none;display:inline-flex}.palette__tag--lock{padding:var(--sp-1) var(--sp-2);border:1px solid var(--line-strong);border-radius:var(--r-pill)}.palette__keys,.palette__foot kbd,.palette__esc{padding:var(--sp-0) var(--sp-2);font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--muted)}.palette__none{padding:var(--sp-6) var(--sp-4);text-align:center;color:var(--muted);font-size:var(--fs-md);margin:0}.palette__foot{gap:var(--sp-4);padding:var(--sp-2) var(--sp-4);border-top:1px solid var(--line);font-size:var(--fs-sm);color:var(--muted);flex-wrap:wrap;display:flex}.palette__foot kbd{margin-right:var(--sp-1)}@media (width<=560px){dialog.modal.palette[open]{padding:calc(env(safe-area-inset-top) + var(--sp-2)) var(--sp-2) 0;place-items:start stretch}.palette .modal__card{border-radius:var(--radius-lg);max-height:80dvh}.palette__list{max-height:60dvh}.palette__foot,.palette__esc,.palette__hint{display:none}.palette__item{min-height:44px}}.palbtn{align-items:center;gap:var(--sp-2);min-width:0;height:36px;padding:0 var(--sp-2) 0 var(--sp-3);border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface-2);color:var(--muted);font:var(--fw-medium) var(--fs-md) / 1 var(--font);cursor:pointer;transition:border-color var(--dur-quick), color var(--dur-quick);display:inline-flex}.palbtn:hover{border-color:var(--line-strong);color:var(--ink)}.palbtn:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.palbtn__keys{padding:var(--sp-0) var(--sp-2);font-size:var(--fs-xs)}@media (width<=1180px){.palbtn__txt{display:none}}@media (width<=960px){.palbtn{padding:0 var(--sp-2);flex:none}.palbtn__keys{display:none}}@media (width<=760px){header.app{grid-template-columns:auto minmax(0,1fr) auto}header.app .palbtn{grid-area:1/3;justify-content:center;width:36px;height:36px;padding:0}header.app .palbtn__keys{display:none}}
