.sheet{padding:0;border:0;background:transparent;max-width:none;max-height:none;inset:0;margin:0;width:100%;height:100%}.sheet::backdrop{background:rgba(28,24,20,.32);backdrop-filter:blur(2px)}.sheet[open]{display:flex;align-items:center;justify-content:center}.sheet__inner{position:relative;background:var(--surface);border-radius:var(--r-md,8px);box-shadow:var(--shadow-float);width:100%;max-width:var(--sheet-max-w,480px);max-height:min(85vh,720px);display:flex;flex-direction:column;overflow:hidden;animation:sheet-fade-in .18s cubic-bezier(.2,.7,.3,1)}@keyframes sheet-fade-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.sheet__drag-handle{display:none}.sheet__head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-subtle);flex-shrink:0}.sheet__title{font-family:var(--font-serif,"Newsreader",Georgia,serif);font-size:18px;font-weight:500;margin:0;color:var(--ink-1);letter-spacing:-.01em}.sheet__close{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:0;color:var(--ink-2);cursor:pointer;border-radius:var(--r-sm,4px);transition:background .12s ease,color .12s ease}.sheet__close:hover{background:var(--surface-muted);color:var(--ink-1)}.sheet__close:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.sheet__body{padding:16px 20px;overflow-y:auto;flex:1;min-height:0}.sheet__foot{display:flex;gap:8px;justify-content:space-between;padding:12px 20px;border-top:1px solid var(--border-subtle);background:var(--canvas);flex-shrink:0}@media (max-width:768px){.sheet[open]{align-items:flex-end;justify-content:stretch}.sheet__inner{max-width:100%;width:100%;max-height:90vh;border-radius:16px 16px 0 0;animation:sheet-slide-up .22s cubic-bezier(.2,.7,.3,1)}.sheet__drag-handle{display:block;width:36px;height:4px;background:var(--border-strong);border-radius:2px;margin:8px auto 0;flex-shrink:0}.sheet__head{padding:8px 16px 12px}.sheet__body{padding:6px 16px 14px}.sheet__foot{padding:12px 16px}.sheet__foot>*{flex:1}}@keyframes sheet-slide-up{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.sheet__inner{animation:none}}