/* One contained Sidekick sheet for added helpers, discovery and details. */
.dialog.sidekick-library-dialog{width:min(760px,calc(100vw - 32px));max-height:min(90dvh,calc(var(--app-height,100dvh) - 32px));border-radius:28px;background:var(--paper,#fffef8)}
.sidekick-library-dialog .dialog-head{padding:22px 24px 14px}
.sidekick-library-dialog .dialog-head h2{font-size:25px;letter-spacing:-.8px}
.sidekick-library-dialog .dialog-body{padding:0 24px 24px;scrollbar-gutter:stable;overscroll-behavior:contain}
.sk-library{color:var(--ink,#214233)}
.sk-library-list[hidden],.sk-library-detail[hidden],.sk-library [hidden]{display:none!important}
.sk-library-context{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}
.sk-scope{display:block;color:var(--muted,#647165);font-size:11px;font-weight:600;line-height:1.5}
.sk-segments{display:flex;gap:3px;background:var(--well,#f0f2e7);padding:3px;border:1px solid var(--line,#dce1d4);border-radius:15px}
.sk-segment{border:0;min-height:40px;padding:8px 17px;border-radius:11px;background:transparent;font:inherit;font-size:12px;font-weight:650;color:var(--muted,#647165);cursor:pointer}
.sk-segment[aria-pressed=true]{background:var(--paper,#fffef8);color:var(--ink,#214233);box-shadow:0 1px 4px #21423314}
.sk-intro{font-size:14px;color:var(--muted,#647165);margin:0 0 17px;line-height:1.5}
.sk-discovery-controls{position:sticky;top:0;z-index:2;background:var(--paper,#fffef8);padding:2px 0 10px}
.sk-search{display:flex;align-items:center;gap:8px;border:1px solid var(--line,#dce1d4);background:var(--well,#f0f2e7);border-radius:16px;padding:0 12px;min-height:48px}
.sk-search:focus-within{border-color:var(--ink,#214233);box-shadow:0 0 0 2px #dbe6c3}
.sk-search-symbol{font-family:system-ui,sans-serif;font-size:28px;line-height:1;color:var(--muted)}
.sk-search .sk-search-input{min-width:0;flex:1;width:100%;font:inherit;font-size:16px;padding:12px 0;border:0;border-radius:0;box-shadow:none;background:transparent;outline:none}
.sk-search-input::-webkit-search-cancel-button{display:none}
.sk-search-clear{flex:0 0 36px;min-height:44px;background:none;border:0;font-size:23px;color:var(--muted);cursor:pointer}
.sk-filters{display:flex;gap:6px;margin-top:10px;overflow-x:auto;scrollbar-width:none}
.sk-filters::-webkit-scrollbar{display:none}
.sk-filter{flex:0 0 auto;min-height:42px;padding:9px 16px;border-radius:13px;border:1px solid transparent;background:transparent;color:var(--muted);font:inherit;font-size:13px;font-weight:600;cursor:pointer}
.sk-filter[aria-pressed=true]{background:var(--ink,#214233);color:#fffef7}
.sk-result-count{font-size:11px;color:var(--muted);margin:2px 0 17px;min-height:16px}
.sk-results{display:grid;gap:25px}
.sk-section-heading{margin:0 0 12px;display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.sk-section-heading h3{font-size:16px;letter-spacing:-.3px;margin:0}
.sk-section-heading p{font-size:12px;color:var(--muted);margin:0;line-height:1.4}
.sk-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.sk-card,.sk-detail-identity{--sk-tint:#e8eddc}
.tone-lilac{--sk-tint:#e7ddfa}.tone-lime{--sk-tint:#e8efbb}.tone-peach{--sk-tint:#f8e0d1}.tone-mint{--sk-tint:#dbece1}.tone-sky{--sk-tint:#deebf4}.tone-sand{--sk-tint:#f0e8c6}
.sk-card{min-width:0;width:100%;display:flex;flex-direction:column;align-items:stretch;padding:16px;border-radius:23px;border:1px solid #dfe4d5;background:linear-gradient(155deg,var(--sk-tint),var(--paper,#fffef8) 82%);font:inherit;color:var(--ink,#214233);text-align:left;cursor:pointer}
.sk-card-top{display:flex;align-items:center;justify-content:space-between;gap:4px;margin-bottom:15px;min-width:0}
.sk-avatar{width:45px;height:45px;flex:0 0 45px;border-radius:15px;display:grid;place-items:center;background:#fffef9b8;color:var(--ink);font-size:25px;font-weight:750;box-shadow:0 1px 0 #ffffff}
.sk-added{font-size:10px;white-space:nowrap;color:#466347;font-weight:600}
.sk-card-name{display:block;font-size:17px;font-weight:700;line-height:1.2;letter-spacing:-.4px;margin:0 0 7px;overflow-wrap:anywhere}
.sk-purpose{display:block;font-size:12px;line-height:1.5;color:#586759;margin:0 0 15px;overflow-wrap:anywhere;flex:1}
.sk-card-actions{display:flex;gap:5px;align-items:center;justify-content:space-between;margin-top:auto;min-height:26px}
.sk-card-link{font-size:11px;font-weight:650;color:var(--ink,#214233)}
.sk-card-arrow{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:10px;font-size:18px;background:#ffffffa8}
.sk-card:hover{border-color:#bdcab0;box-shadow:0 3px 10px #21423308}
.sk-managed-note{font-size:12px;line-height:1.5;color:var(--muted);margin:0}
.sk-empty{text-align:center;border-radius:20px;padding:28px 20px;background:var(--well);grid-column:1/-1}
.sk-empty>span{font-size:30px;color:#607442}
.sk-empty h3{font-size:18px;margin:10px 0}
.sk-empty p{font-size:13px;color:var(--muted);margin:0 0 15px}
.sk-library-installed .sk-card{padding:13px;border-radius:20px}
.sk-library-installed .sk-card-top{margin-bottom:10px}
.sk-library-installed .sk-avatar{width:38px;height:38px;flex-basis:38px;border-radius:12px;font-size:23px}
.sk-library-installed .sk-purpose{margin-bottom:10px}
/* Installed cards are conversation shortcuts, with saved work one tap away. */
.sk-card.sk-card-ready{position:relative;padding:0;overflow:visible;cursor:default}
.sk-card-chat{display:flex;flex-direction:column;align-items:stretch;flex:1;min-width:0;width:100%;padding:13px;border:0;border-radius:20px;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}
.sk-card-ready .sk-card-top{min-height:38px;margin-bottom:10px;padding-right:31px}
.sk-card-ready .sk-avatar{width:38px;height:38px;flex-basis:38px;border-radius:12px;font-size:23px}
.sk-card-ready .sk-purpose{margin-bottom:10px}
.sk-card-ready .sk-card-link{font-size:12px}
.sk-card-about{position:absolute;top:6px;right:5px;display:grid;place-items:center;width:40px;min-height:44px;padding:0;border:0;border-radius:13px;background:transparent;color:var(--muted,#647165);font:inherit;font-size:22px;font-weight:750;letter-spacing:1px;cursor:pointer}
.sk-card-about:hover{background:#fffef980;color:var(--ink,#214233)}
.sk-card-summary{display:flex;align-items:center;justify-content:space-between;gap:5px;min-height:44px;width:100%;padding:10px 13px;border:0;border-top:1px solid #dfe4d5;border-radius:0 0 20px 20px;background:#fffef84d;color:var(--muted,#647165);font:inherit;font-size:12px;font-weight:600;text-align:left;cursor:pointer}
.sk-card-summary:after{content:'›';font-size:18px;line-height:1}
.sk-card-summary:hover{background:#fffef9a8;color:var(--ink,#214233)}
.sk-list-feedback{margin:0 0 14px}

.sk-library-detail{max-width:530px;margin:0 auto;padding:0 0 2px}
.sk-back{display:inline-flex;align-items:center;gap:7px;min-height:44px;margin:0 0 12px;padding:8px 0;border:0;background:transparent;color:var(--muted,#647165);font:inherit;font-size:12px;cursor:pointer}
.sk-back:before{content:'‹';font-size:24px;line-height:1}
.sk-detail-identity{display:flex;align-items:center;gap:15px;margin:0 0 21px}
.sk-detail-avatar{display:grid;place-items:center;flex:0 0 64px;width:64px;height:64px;border-radius:22px;background:var(--sk-tint,var(--lilac,#e6dcfb));color:var(--ink,#214233);font-size:35px;font-weight:750}
.sk-detail-title{font-size:25px;line-height:1.2;letter-spacing:-.7px;margin:3px 0 4px;overflow-wrap:anywhere}
.sk-detail-description{font-size:17px;font-weight:550;line-height:1.45;margin:0 0 13px;overflow-wrap:anywhere}
.sk-detail-copy{font-size:14px;line-height:1.65;color:var(--muted,#647165);margin:0 0 15px;overflow-wrap:anywhere}
.sk-detail-scope{font-size:12px;line-height:1.6;color:var(--muted,#647165);padding:12px 14px;border-radius:14px;background:var(--well,#f0f2e7);margin:0 0 15px}
.sk-detail-actions{display:flex;flex-direction:column;gap:9px;margin-top:23px}
.sk-detail-primary,.sk-detail-secondary{min-height:47px;padding:12px 17px;border-radius:14px;border:1px solid transparent;font:inherit;font-size:13px;font-weight:650;line-height:1.5;text-align:center;cursor:pointer;overflow-wrap:anywhere}
.sk-detail-primary{color:var(--paper,#fffef8);background:var(--ink,#214233)}
.sk-detail-secondary{color:var(--ink,#214233);background:transparent;border-color:var(--line,#dce1d4)}
.sk-remove{align-self:center;min-height:44px;margin-top:8px;padding:10px 16px;border:0;background:transparent;font:inherit;font-size:12px;color:var(--danger,#a03c35);cursor:pointer}
.sk-remove-title{font-size:19px;line-height:1.4;margin:0 0 10px}
.sk-detail-primary.sk-danger{background:var(--danger,#a03c35)}
.sk-action-status,.sk-action-error{font-size:13px;line-height:1.6;padding:11px 14px;border-radius:13px;margin:18px 0 0;overflow-wrap:anywhere}
.sk-action-status{color:var(--ink,#214233);background:var(--well,#f0f2e7)}
.sk-action-error{color:var(--danger,#a03c35);background:#f9ebe5}
.sk-library button:disabled{opacity:.6;cursor:wait}
.sk-library button:focus-visible{outline:3px solid #456744;outline-offset:3px}
.card-oddoneout{background:var(--lime)!important}.card-mafia{background:var(--lilac)!important}
.sk-guide.btn{margin-top:22px;width:100%;min-height:44px;background:transparent;border-color:var(--line);color:var(--muted);font-size:13px}
@media(max-width:600px){
  .dialog.sidekick-library-dialog{width:100%;max-height:min(92dvh,calc(var(--app-height,100dvh) - 16px - env(safe-area-inset-top)));border-radius:27px 27px 0 0}
  .sidekick-library-dialog .dialog-head{padding:20px 20px 12px}.sidekick-library-dialog .dialog-body{padding:0 18px max(22px,env(safe-area-inset-bottom));scrollbar-gutter:auto}
  .sk-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sk-card{padding:14px;border-radius:21px}
  .sk-section-heading{display:block}.sk-section-heading p{margin-top:4px}.sk-filter{padding:9px 13px}.sk-intro{margin-bottom:16px}
  .sidekick-library-overlay{padding:0!important;align-items:flex-end!important}.sk-detail-title{font-size:24px}.sk-detail-identity{gap:13px}
}
@media(max-width:339px){
  .sk-grid{grid-template-columns:1fr}.sk-card{display:grid;grid-template-columns:46px minmax(0,1fr);column-gap:13px;row-gap:0}
  .sk-card-top{grid-column:1;grid-row:1/3;align-self:start;flex-direction:column;gap:9px;margin:0}.sk-card-name,.sk-card .sk-purpose{grid-column:2}
  .sk-card-actions{grid-column:2}.sk-card-name{font-size:18px}.sk-filters{gap:2px}.sk-filter{padding:9px 11px}
  .sk-library-installed .sk-card{grid-template-columns:38px minmax(0,1fr);column-gap:10px}.sk-library-installed .sk-card-top{margin-bottom:0}.sk-segment{padding:8px 13px}
  .sk-card.sk-card-ready{display:flex}.sk-card-ready .sk-card-chat{display:grid;grid-template-columns:38px minmax(0,1fr);column-gap:10px;padding-right:45px}.sk-card-ready .sk-card-top{padding-right:0;margin-bottom:0}.sk-card-ready .sk-card-actions{margin-top:0}.sk-card-ready .sk-purpose{margin-bottom:5px}
}
@media(prefers-reduced-motion:no-preference){
  .sk-card,.sk-card-chat,.sk-card-summary,.sk-card-about,.sk-detail-primary,.sk-detail-secondary,.sk-filter,.sk-segment{transition:background-color 120ms,transform 120ms,box-shadow 120ms}
  button.sk-card:active,.sk-card-chat:active,.sk-card-summary:active,.sk-detail-primary:active,.sk-detail-secondary:active{transform:scale(.98)}
  .dialog.sidekick-library-dialog{animation:sheet-in 180ms cubic-bezier(.2,.8,.2,1)}
}
@media(max-width:600px) and (prefers-reduced-motion:no-preference){.dialog.sidekick-library-dialog{animation-name:mobile-sheet-in}}
@media(forced-colors:active){.sk-card,.sk-search,.sk-detail-primary,.sk-detail-secondary,.sk-segment[aria-pressed=true],.sk-filter[aria-pressed=true]{border:1px solid CanvasText}.sk-avatar{box-shadow:none}}
/* Follow the shared visual-viewport variables when a phone keyboard is open. */
.sidekick-library-overlay{top:var(--viewport-offset,0px);bottom:auto;height:var(--app-height,100dvh)}
.sidekick-event{display:flex;align-items:center;justify-content:center;gap:8px;width:fit-content;max-width:min(540px,calc(100% - 24px));margin:12px auto;padding:8px 11px;border:1px solid var(--line,#dce1d4);border-radius:14px;background:var(--paper,#fffef8);color:var(--muted,#647165);font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.sidekick-event-mark{display:grid;place-items:center;flex:0 0 27px;width:27px;height:27px;border-radius:9px;background:var(--well,#edf1df);color:var(--ink,#214233);font-size:16px}
