#portal-root{z-index:60;position:relative}.modal-root{--m-accent:var(--formalin);z-index:60;padding:calc(var(--safe-t) + 16px) calc(var(--safe-r) + 16px) calc(var(--safe-b) + 16px) calc(var(--safe-l) + 16px);inset:0;top:var(--vv-top);height:var(--vvh);grid-template:minmax(0,1fr)/minmax(0,1fr);place-items:center;display:grid;position:fixed;bottom:auto}.modal-root[data-tone=alarm]{--m-accent:var(--alarm)}.modal-root[data-tone=cyan]{--m-accent:var(--cyan)}.modal-backdrop{-webkit-backdrop-filter:blur(5px)saturate(.7);backdrop-filter:blur(5px)saturate(.7);animation:m-fade .24s var(--ease-out) both;background:#06070ab8;position:absolute;inset:0}.modal{border:1px solid var(--bone-a14);border-top:3px solid var(--m-accent);width:100%;max-height:100%;animation:m-in .34s var(--ease-out) both;background:linear-gradient(#1e2430f5,#141821fa);flex-direction:column;display:flex;position:relative;box-shadow:10px 10px #0000008c,0 30px 80px -20px #000000e6}.modal:focus{outline:none}.modal--sm{max-width:440px}.modal--md{max-width:620px}.modal--lg{max-width:880px}.modal--xl{max-width:1120px}.modal__head{border-bottom:1px solid var(--bone-a08);flex:none;align-items:flex-start;gap:12px;padding:20px 20px 14px 28px;display:flex;position:relative;overflow:hidden}.modal__head:after{content:"";background-image:var(--tex-halftone);opacity:.6;pointer-events:none;background-size:6px 6px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(100deg,#0000 40%,#000 100%);mask-image:linear-gradient(100deg,#0000 40%,#000 100%)}.modal__stripe{background:repeating-linear-gradient(-45deg, var(--m-accent) 0 6px, transparent 6px 12px);width:8px;position:absolute;top:0;bottom:0;left:0}.modal__titles{z-index:1;flex:1;gap:2px;min-width:0;display:grid;position:relative}.modal__en{font-family:var(--font-en);font-size:var(--fs-sm);letter-spacing:.3em;color:var(--m-accent)}.modal__title{font-family:var(--font-display);font-size:var(--fs-xl);line-height:1.25}.modal__close{z-index:1;margin:-6px -6px 0 0;position:relative}.modal__body{flex:auto;min-height:0;padding:20px 28px 24px}.modal__foot{border-top:1px solid var(--bone-a08);background:#0b0d1259;flex-wrap:wrap;flex:none;justify-content:flex-end;gap:14px;padding:14px 24px 18px;display:flex}.modal-root.is-closing .modal{animation:m-out .2s var(--ease-in) both}.modal-root.is-closing .modal-backdrop{animation:m-fade .2s var(--ease-in) reverse both}@keyframes m-fade{0%{opacity:0}to{opacity:1}}@keyframes m-in{0%{opacity:0;clip-path:polygon(0 0,0 0,0 100%,0 100%);transform:translateY(18px)skewY(-1.5deg)}to{opacity:1;clip-path:polygon(0 0,100% 0,100% 100%,0 100%);transform:none}}@keyframes m-out{to{opacity:0;transform:translateY(10px)scale(.985)}}[data-reduce-motion=true] .modal{animation:.2s linear both m-fade}[data-layout=narrow] .modal-root{padding:calc(var(--safe-t) + 10px) calc(var(--safe-r) + 10px) calc(var(--safe-b) + 10px) calc(var(--safe-l) + 10px)}[data-layout=narrow] .modal__head{padding:16px 12px 12px 22px}[data-layout=narrow] .modal__body{padding:16px 18px 20px}[data-layout=narrow] .modal__foot{padding:12px 14px 14px}.sheet-root{left:0;right:0;top:var(--vv-top);height:var(--vvh);z-index:58;position:fixed}.sheet-backdrop{animation:m-fade .24s var(--ease-out) both;background:#06070a99;position:absolute;inset:0}.sheet{background:linear-gradient(180deg, var(--ink-3), var(--ink-2));border:1px solid var(--bone-a14);flex-direction:column;display:flex;position:absolute;box-shadow:0 -20px 60px -10px #000c}.sheet:focus{outline:none}.sheet--bottom{border-bottom:0;border-top:3px solid var(--formalin);max-height:88%;padding-bottom:var(--safe-b);animation:sheet-up .32s var(--ease-out) both;border-radius:14px 14px 0 0;bottom:0;left:0;right:0}.sheet--left,.sheet--right{width:min(420px,92vw);padding-top:var(--safe-t);padding-bottom:var(--safe-b);top:0;bottom:0}.sheet--left{border-left:0;border-right:3px solid var(--formalin);padding-left:var(--safe-l);animation:sheet-left .32s var(--ease-out) both;left:0}.sheet--right{border-right:0;border-left:3px solid var(--formalin);padding-right:var(--safe-r);animation:sheet-right .32s var(--ease-out) both;right:0}.sheet--wide.sheet--left,.sheet--wide.sheet--right{width:min(760px,96vw)}.sheet__handle{cursor:grab;touch-action:none;place-items:center;height:22px;display:grid}.sheet__handle:before{content:"";background:var(--bone-a24);border-radius:2px;width:44px;height:4px}.sheet__head{border-bottom:1px solid var(--bone-a08);align-items:center;gap:10px;padding:6px 14px 10px 18px;display:flex}.sheet--left .sheet__head,.sheet--right .sheet__head{padding-top:16px}.sheet__title{font-family:var(--font-display);font-size:var(--fs-lg);flex:1}.sheet__en{font-family:var(--font-en);font-size:var(--fs-xs);letter-spacing:.3em;color:var(--formalin);display:block}.sheet__body{overscroll-behavior:contain;flex:auto;min-height:0;padding:14px 16px 20px;overflow-y:auto}.sheet-root.is-closing .sheet--bottom{animation:sheet-up .22s var(--ease-in) reverse both}.sheet-root.is-closing .sheet--left{animation:sheet-left .22s var(--ease-in) reverse both}.sheet-root.is-closing .sheet--right{animation:sheet-right .22s var(--ease-in) reverse both}.sheet-root.is-closing .sheet-backdrop{animation:m-fade .22s var(--ease-in) reverse both}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:none}}@keyframes sheet-left{0%{transform:translate(-100%)}to{transform:none}}@keyframes sheet-right{0%{transform:translate(100%)}to{transform:none}}
